const tableName = 'vk_guilds' function buildTable(t) { t.string('id', 64).primary() t.string('name', 120).notNullable() t.string('slug', 64).notNullable() t.string('lead_user_id', 64).notNullable() t.string('company_agent_id', 64).nullable() t.boolean('require_lead_approval').notNullable() t.integer('checkpoint_interval_sec').unsigned().notNullable().defaultTo(21600) t.integer('piece_review_window_sec').unsigned().notNullable().defaultTo(86400) t.integer('contest_review_window_sec').unsigned().notNullable().defaultTo(259200) t.integer('transfer_ttl_sec').unsigned().notNullable().defaultTo(86400) t.bigInteger('weekly_goal').unsigned().notNullable().defaultTo(0) t.integer('level').unsigned().notNullable().defaultTo(1) t.string('goal_reached_week', 10).nullable() t.datetime('created_at', { precision: 3 }).notNullable() t.datetime('updated_at', { precision: 3 }).nullable() t.unique(['slug'], { indexName: 'uq_vk_guilds_slug' }) t.check('checkpoint_interval_sec > 0 and piece_review_window_sec > 0 and contest_review_window_sec > 0 and transfer_ttl_sec > 0', [], 'ck_vk_guilds_windows') } module.exports = { tableName, buildTable }