const { DataTypes } = require('sequelize'); const { sequelize } = require('../config/database'); const Menu = sequelize.define('Menu', { id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true }, parentId: { type: DataTypes.INTEGER, allowNull: true, references: { model: 'Menus', // 변경 key: 'id' } }, title: { type: DataTypes.STRING, allowNull: false }, icon: { type: DataTypes.STRING, allowNull: true }, to: { type: DataTypes.STRING, allowNull: false }, featureCode: { type: DataTypes.STRING, allowNull: true, references: { model: 'Features', key: 'code' } }, requiredSubscriptionTier: { type: DataTypes.ENUM('basic', 'standard', 'premium'), allowNull: true }, role: { type: DataTypes.STRING, allowNull: false, defaultValue: 'user' }, order: { type: DataTypes.INTEGER, allowNull: false, defaultValue: 0 }, visible: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: true }, createdAt: { type: DataTypes.DATE, allowNull: false }, updatedAt: { type: DataTypes.DATE, allowNull: false } }, { tableName: 'Menus', timestamps: true }); module.exports = Menu;