2024-09-13 13:03:35 +00:00
|
|
|
import db from "../../database/db.js";
|
|
|
|
|
|
|
|
|
|
const LevelModel = (DataTypes) => {
|
|
|
|
|
const Levels = db.define(
|
|
|
|
|
"level",
|
|
|
|
|
{
|
|
|
|
|
ID_LEVEL: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
primaryKey: true,
|
|
|
|
|
defaultValue: DataTypes.UUIDV4,
|
|
|
|
|
validate: {
|
|
|
|
|
notEmpty: true,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
ID_TOPIC: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
validate: {
|
|
|
|
|
notEmpty: true,
|
|
|
|
|
},
|
|
|
|
|
references: {
|
|
|
|
|
model: "topic",
|
|
|
|
|
key: "ID_TOPIC",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
ID_SECTION: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
validate: {
|
|
|
|
|
notEmpty: true,
|
|
|
|
|
},
|
|
|
|
|
references: {
|
|
|
|
|
model: "section",
|
|
|
|
|
key: "ID_SECTION",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
NAME_LEVEL: {
|
|
|
|
|
type: DataTypes.STRING(100),
|
|
|
|
|
allowNull: false,
|
|
|
|
|
validate: {
|
|
|
|
|
notEmpty: true,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CONTENT: {
|
|
|
|
|
type: DataTypes.STRING(1024),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
},
|
|
|
|
|
AUDIO: {
|
|
|
|
|
type: DataTypes.STRING(1024),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
},
|
|
|
|
|
IMAGE: {
|
|
|
|
|
type: DataTypes.STRING(1024),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
},
|
|
|
|
|
VIDEO: {
|
|
|
|
|
type: DataTypes.STRING(1024),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
},
|
|
|
|
|
IS_PRETEST: {
|
|
|
|
|
type: DataTypes.INTEGER(1),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
defaultValue: 0,
|
|
|
|
|
validate: {
|
|
|
|
|
min: 0,
|
|
|
|
|
max: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
ROUTE_1: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
|
|
|
|
ROUTE_2: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
|
|
|
|
ROUTE_3: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
|
|
|
|
ROUTE_4: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
|
|
|
|
ROUTE_5: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
|
|
|
|
ROUTE_6: {
|
|
|
|
|
type: DataTypes.UUID,
|
|
|
|
|
allowNull: false,
|
|
|
|
|
},
|
2024-10-10 02:55:13 +00:00
|
|
|
IS_DELETED: {
|
|
|
|
|
type: DataTypes.INTEGER(1),
|
|
|
|
|
allowNull: true,
|
|
|
|
|
defaultValue: 0,
|
|
|
|
|
validate: {
|
|
|
|
|
min: 0,
|
|
|
|
|
max: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
2024-09-13 13:03:35 +00:00
|
|
|
TIME_LEVEL: {
|
|
|
|
|
type: DataTypes.DATE,
|
|
|
|
|
allowNull: true,
|
|
|
|
|
defaultValue: DataTypes.NOW,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
timestamps: false,
|
|
|
|
|
tableName: "level",
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
return Levels;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default LevelModel;
|