Files
nxxmdata/government-backend/models/User.js
2025-09-25 17:43:54 +08:00

59 lines
1.1 KiB
JavaScript

const sequelize = require('../config/database');
const { DataTypes } = require('sequelize');
const User = sequelize.define('User', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
username: {
type: DataTypes.STRING,
allowNull: false,
unique: true,
comment: '用户名'
},
password: {
type: DataTypes.STRING,
allowNull: false,
comment: '密码'
},
role: {
type: DataTypes.ENUM('admin', 'manager', 'inspector', 'clerk'),
allowNull: false,
comment: '角色'
},
status: {
type: DataTypes.ENUM('active', 'inactive'),
allowNull: false,
defaultValue: 'active',
comment: '状态'
},
last_login: {
type: DataTypes.DATE,
allowNull: true,
comment: '最后登录时间'
}
}, {
tableName: 'users',
timestamps: true,
createdAt: 'created_at',
updatedAt: 'updated_at',
paranoid: false,
indexes: [
{
name: 'idx_username',
fields: ['username']
},
{
name: 'idx_role',
fields: ['role']
},
{
name: 'idx_status',
fields: ['status']
}
]
});
module.exports = User;