init
This commit is contained in:
40
api/model/sys_tenant.js
Normal file
40
api/model/sys_tenant.js
Normal file
@@ -0,0 +1,40 @@
|
||||
const Sequelize = require("sequelize");
|
||||
|
||||
/** 租户表:用户、角色按 tenant_id 隔离;is_platform=1 的租户可管理本表 */
|
||||
module.exports = (db) => {
|
||||
return db.define("sys_tenant", {
|
||||
name: {
|
||||
type: Sequelize.STRING(100),
|
||||
allowNull: false,
|
||||
defaultValue: "",
|
||||
comment: "租户名称",
|
||||
},
|
||||
code: {
|
||||
type: Sequelize.STRING(64),
|
||||
allowNull: false,
|
||||
defaultValue: "",
|
||||
unique: true,
|
||||
comment: "租户编码(登录时与账号一起使用)",
|
||||
},
|
||||
remark: {
|
||||
type: Sequelize.STRING(255),
|
||||
allowNull: false,
|
||||
defaultValue: "",
|
||||
comment: "备注",
|
||||
},
|
||||
/** 1 启用 0 停用 */
|
||||
status: {
|
||||
type: Sequelize.INTEGER(1),
|
||||
allowNull: false,
|
||||
defaultValue: 1,
|
||||
comment: "状态",
|
||||
},
|
||||
/** 1 平台租户:可维护租户表、可代建任意租户用户 */
|
||||
is_platform: {
|
||||
type: Sequelize.INTEGER(1),
|
||||
allowNull: false,
|
||||
defaultValue: 0,
|
||||
comment: "是否平台租户",
|
||||
},
|
||||
});
|
||||
};
|
||||
60
api/model/tpl_demo.js
Normal file
60
api/model/tpl_demo.js
Normal file
@@ -0,0 +1,60 @@
|
||||
const Sequelize = require("sequelize");
|
||||
|
||||
/** 模板示例:与库表字段 create_time / last_modify_time / is_delete 一致(无 createdAt/updatedAt) */
|
||||
module.exports = (db) => {
|
||||
return db.define(
|
||||
"tpl_demo",
|
||||
{
|
||||
title: {
|
||||
type: Sequelize.STRING(200),
|
||||
allowNull: false,
|
||||
comment: "标题",
|
||||
},
|
||||
remark: {
|
||||
type: Sequelize.STRING(500),
|
||||
allowNull: true,
|
||||
comment: "备注",
|
||||
},
|
||||
create_time: {
|
||||
type: Sequelize.DATE,
|
||||
allowNull: false,
|
||||
comment: "创建时间",
|
||||
},
|
||||
last_modify_time: {
|
||||
type: Sequelize.DATE,
|
||||
allowNull: false,
|
||||
comment: "最后修改时间",
|
||||
},
|
||||
is_delete: {
|
||||
type: Sequelize.INTEGER(1),
|
||||
allowNull: false,
|
||||
defaultValue: 0,
|
||||
comment: "0 正常 1 已删除",
|
||||
},
|
||||
},
|
||||
{
|
||||
comment: "前后端模板演示表",
|
||||
timestamps: false,
|
||||
defaultScope: {
|
||||
where: { is_delete: 0 },
|
||||
},
|
||||
hooks: {
|
||||
beforeCreate(instance) {
|
||||
const now = new Date();
|
||||
if (!instance.get("create_time")) {
|
||||
instance.set("create_time", now);
|
||||
}
|
||||
if (!instance.get("last_modify_time")) {
|
||||
instance.set("last_modify_time", now);
|
||||
}
|
||||
if (instance.get("is_delete") == null) {
|
||||
instance.set("is_delete", 0);
|
||||
}
|
||||
},
|
||||
beforeUpdate(instance) {
|
||||
instance.set("last_modify_time", new Date());
|
||||
},
|
||||
},
|
||||
}
|
||||
);
|
||||
};
|
||||
Reference in New Issue
Block a user