update
This commit is contained in:
24
models/Permission.js
Normal file
24
models/Permission.js
Normal file
@@ -0,0 +1,24 @@
|
||||
const { DataTypes } = require('sequelize');
|
||||
const { sequelize } = require('../config/database');
|
||||
|
||||
const Permission = sequelize.define('permissions', {
|
||||
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
|
||||
permission_code: { type: DataTypes.STRING(50), unique: true, allowNull: false },
|
||||
permission_name: { type: DataTypes.STRING(100), allowNull: false },
|
||||
permission_description: { type: DataTypes.TEXT },
|
||||
resource: { type: DataTypes.STRING(50), comment: 'Tài nguyên (students, grades, etc.)' },
|
||||
action: { type: DataTypes.STRING(50), comment: 'Hành động (view, create, edit, delete)' },
|
||||
is_active: { type: DataTypes.BOOLEAN, defaultValue: true },
|
||||
created_at: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW },
|
||||
updated_at: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW },
|
||||
}, {
|
||||
tableName: 'permissions',
|
||||
timestamps: true,
|
||||
underscored: true,
|
||||
indexes: [
|
||||
{ fields: ['permission_code'], unique: true },
|
||||
{ fields: ['resource', 'action'] },
|
||||
],
|
||||
});
|
||||
|
||||
module.exports = Permission;
|
||||
Reference in New Issue
Block a user