57 lines
1.6 KiB
JavaScript
57 lines
1.6 KiB
JavaScript
const Sequelize = require("sequelize");
|
|
|
|
module.exports = (db) => {
|
|
return db.define(
|
|
"biz_plan",
|
|
{
|
|
id: {
|
|
type: Sequelize.BIGINT.UNSIGNED,
|
|
primaryKey: true,
|
|
autoIncrement: true,
|
|
},
|
|
plan_code: {
|
|
type: Sequelize.STRING(64),
|
|
allowNull: false,
|
|
unique: true,
|
|
},
|
|
plan_name: {
|
|
type: Sequelize.STRING(128),
|
|
allowNull: false,
|
|
defaultValue: "",
|
|
},
|
|
monthly_price: {
|
|
type: Sequelize.DECIMAL(12, 2),
|
|
allowNull: false,
|
|
defaultValue: 0,
|
|
},
|
|
auth_fee: {
|
|
type: Sequelize.DECIMAL(12, 2),
|
|
allowNull: false,
|
|
defaultValue: 0,
|
|
},
|
|
account_limit: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
active_user_limit: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
msg_quota: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
mass_quota: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
friend_quota: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
sns_quota: { type: Sequelize.INTEGER, allowNull: false, defaultValue: 0 },
|
|
enabled_features: {
|
|
type: Sequelize.JSON,
|
|
allowNull: true,
|
|
comment: "JSON 功能点白名单",
|
|
},
|
|
status: {
|
|
type: Sequelize.ENUM("active", "inactive"),
|
|
allowNull: false,
|
|
defaultValue: "active",
|
|
},
|
|
},
|
|
{
|
|
tableName: "biz_plans",
|
|
timestamps: true,
|
|
underscored: true,
|
|
comment: "套餐",
|
|
}
|
|
);
|
|
};
|