Flatlogic Bot a07e0b335c v1
2026-01-08 12:48:49 +00:00

49 lines
917 B
JavaScript

const { DataTypes } = require('sequelize');
module.exports = (sequelize) => {
const Task = sequelize.define(
'task',
{
id: {
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4,
primaryKey: true,
},
title: {
type: DataTypes.STRING(255),
allowNull: false,
validate: {
notEmpty: true,
},
},
description: {
type: DataTypes.TEXT,
},
status: {
type: DataTypes.ENUM,
values: ['todo', 'in_progress', 'done'],
defaultValue: 'todo',
},
deadline: {
type: DataTypes.DATE,
},
},
{
timestamps: true,
paranoid: true,
},
);
Task.associate = (models) => {
models.task.belongsTo(models.project, {
as: 'project',
});
models.task.belongsTo(models.users, {
as: 'assignee',
});
};
return Task;
};