const { DataTypes } = require('sequelize'); const sequelize = require('../config/db'); const SubscriptionPlan = sequelize.define('SubscriptionPlan', { id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, comment: '套餐ID' }, name: { type: DataTypes.STRING(100), allowNull: false, comment: '套餐名称' }, description: { type: DataTypes.TEXT, allowNull: true, comment: '套餐描述' }, maxApartments: { type: DataTypes.INTEGER, defaultValue: 10, comment: '最大公寓数' }, maxRooms: { type: DataTypes.INTEGER, defaultValue: 50, comment: '最大房间数' }, maxUsers: { type: DataTypes.INTEGER, defaultValue: 5, comment: '最大用户数' }, monthlyPrice: { type: DataTypes.DECIMAL(10, 2), defaultValue: 0, comment: '月费价格' }, isDefault: { type: DataTypes.BOOLEAN, defaultValue: false, comment: '是否默认套餐' }, status: { type: DataTypes.ENUM('active', 'inactive'), defaultValue: 'active', comment: '套餐状态:active-启用,inactive-禁用' }, sort: { type: DataTypes.INTEGER, defaultValue: 0, comment: '排序' }, isDeleted: { type: DataTypes.INTEGER, allowNull: false, defaultValue: 0, comment: '删除状态(0:未删除,1:已删除)' }, createTime: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW, comment: '创建时间' }, updateTime: { type: DataTypes.DATE, allowNull: false, defaultValue: DataTypes.NOW, comment: '更新时间' } }, { tableName: 'subscription_plans', timestamps: false, comment: '订阅套餐表' }); module.exports = SubscriptionPlan;