mirror of
https://github.com/rgrgogu/new_starr.git
synced 2026-09-27 00:12:54 +08:00
@@ -0,0 +1,20 @@
|
||||
const { DataTypes } = require("sequelize");
|
||||
const sequelize = require("../../config/db.config");
|
||||
|
||||
const QuizSession = sequelize.define("QuizSession", {
|
||||
session_id: { type: DataTypes.BIGINT, primaryKey: true, autoIncrement: true },
|
||||
uuid: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, unique: true },
|
||||
user_id: { type: DataTypes.BIGINT, allowNull: false },
|
||||
quiz_id: { type: DataTypes.BIGINT, allowNull: false },
|
||||
course_id: { type: DataTypes.BIGINT, allowNull: true },
|
||||
unit_id: { type: DataTypes.BIGINT, allowNull: true },
|
||||
status: { type: DataTypes.STRING(20), allowNull: false, defaultValue: 'in_progress' }, // 'in_progress' | 'submitted'
|
||||
draft_answers: { type: DataTypes.JSONB, allowNull: true, defaultValue: null },
|
||||
started_at: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW },
|
||||
last_saved_at: { type: DataTypes.DATE, allowNull: true, defaultValue: null },
|
||||
}, {
|
||||
tableName: "quiz_sessions",
|
||||
timestamps: true,
|
||||
});
|
||||
|
||||
module.exports = QuizSession;
|
||||
Reference in New Issue
Block a user