const { DataTypes } = require('sequelize'); const { sequelize } = require('../db'); const FaultCategory = sequelize.define('FaultCategory', { categoryId: { type: DataTypes.STRING, primaryKey: true, allowNull: false, unique: true }, name: { type: DataTypes.STRING, allowNull: false, unique: true, comment: '分类名称' }, description: { type: DataTypes.TEXT, comment: '分类说明 - 说明此类故障代表什么问题' }, priority: { type: DataTypes.INTEGER, defaultValue: 0, comment: '排序优先级' }, defaultPriority: { type: DataTypes.STRING, defaultValue: 'medium', comment: '默认优先级: critical/high/medium/low' }, expectedDuration: { type: DataTypes.INTEGER, comment: '预计处理时长(小时)' }, solutions: { type: DataTypes.JSON, defaultValue: [], comment: '常见解决方案' }, isSystem: { type: DataTypes.BOOLEAN, defaultValue: false, comment: '是否系统内置分类' }, isActive: { type: DataTypes.BOOLEAN, defaultValue: true, comment: '是否启用' }, metadata: { type: DataTypes.JSON, defaultValue: {}, comment: '扩展字段' } }, { tableName: 'fault_categories', timestamps: true, indexes: [ { fields: ['name'] }, { fields: ['isActive'] }, { fields: ['priority'] } ] }); module.exports = FaultCategory;