api/database/migrations/1751804476638_create_colles_table.ts
2025-07-23 00:19:09 +02:00

35 lines
No EOL
1.1 KiB
TypeScript

import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
protected tableName = 'colles'
async up() {
this.schema.createTable(this.tableName, (table) => {
table.increments('id').primary();
// Relations
table.integer('student_id').unsigned().references('id').inTable('users').onDelete('CASCADE');
table.integer('examiner_id').unsigned().references('id').inTable('examiners').onDelete('CASCADE');
table.integer('subject_id').unsigned().references('id').inTable('subjects').onDelete('SET NULL');
table.integer('room_id').unsigned().references('id').inTable('rooms').onDelete('SET NULL');
// Bjcolle data
table.string('bjsecret').nullable()
table.string('bjid').nullable()
// Colle data
table.decimal('grade', 5, 2).nullable()
table.text('content').nullable()
table.text('comment').nullable()
// Time data
table.dateTime('date').notNullable()
table.timestamp('created_at').notNullable()
table.timestamp('updated_at').notNullable()
})
}
async down() {
this.schema.dropTable(this.tableName)
}
}