更新
This commit is contained in:
@@ -46,12 +46,16 @@ COMMENT ON COLUMN upms.tb_sys_dept.created_at IS '创建时间';
|
||||
DROP TABLE IF EXISTS upms.tb_school_class_course_rel CASCADE;
|
||||
DROP TABLE IF EXISTS upms.tb_school_class_member CASCADE;
|
||||
DROP TABLE IF EXISTS upms.tb_school_class CASCADE;
|
||||
DROP TABLE IF EXISTS upms.tb_sys_user_role CASCADE;
|
||||
DROP TABLE IF EXISTS upms.tb_sys_user CASCADE;
|
||||
CREATE TABLE IF NOT EXISTS upms.tb_sys_user (
|
||||
user_id VARCHAR(64) PRIMARY KEY,
|
||||
username VARCHAR(64) UNIQUE NOT NULL,
|
||||
display_name VARCHAR(128) NOT NULL,
|
||||
password_hash VARCHAR(255) NOT NULL,
|
||||
mobile_phone VARCHAR(20),
|
||||
mobile_bind_status VARCHAR(16) NOT NULL DEFAULT 'UNBOUND',
|
||||
mobile_verified_at TIMESTAMP,
|
||||
adcode VARCHAR(12) NOT NULL,
|
||||
tenant_id VARCHAR(64) NOT NULL,
|
||||
tenant_path VARCHAR(255) NOT NULL,
|
||||
@@ -65,6 +69,9 @@ COMMENT ON COLUMN upms.tb_sys_user.user_id IS '用户ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.username IS '用户名';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.display_name IS '显示名称';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.password_hash IS '密码哈希';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.mobile_phone IS '手机号';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.mobile_bind_status IS '手机号绑定状态';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.mobile_verified_at IS '手机号验证时间';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.adcode IS '行政区划编码';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.tenant_id IS '租户ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_user.tenant_path IS '租户路径';
|
||||
@@ -219,6 +226,23 @@ COMMENT ON COLUMN upms.tb_sys_role.tenant_path IS '租户路径';
|
||||
COMMENT ON COLUMN upms.tb_sys_role.dept_id IS '部门ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_role.dept_path IS '部门路径';
|
||||
COMMENT ON COLUMN upms.tb_sys_role.created_at IS '创建时间';
|
||||
DROP TABLE IF EXISTS upms.tb_sys_user_role CASCADE;
|
||||
CREATE TABLE IF NOT EXISTS upms.tb_sys_user_role (
|
||||
user_id VARCHAR(64) NOT NULL,
|
||||
role_id VARCHAR(64) NOT NULL,
|
||||
tenant_id VARCHAR(64) NOT NULL,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (user_id, role_id),
|
||||
CONSTRAINT fk_sys_user_role_user
|
||||
FOREIGN KEY (user_id) REFERENCES upms.tb_sys_user(user_id) ON DELETE CASCADE,
|
||||
CONSTRAINT fk_sys_user_role_role
|
||||
FOREIGN KEY (role_id) REFERENCES upms.tb_sys_role(role_id) ON DELETE CASCADE
|
||||
);
|
||||
COMMENT ON TABLE upms.tb_sys_user_role IS '用户角色关系表';
|
||||
COMMENT ON COLUMN upms.tb_sys_user_role.user_id IS '用户ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_user_role.role_id IS '角色ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_user_role.tenant_id IS '租户ID';
|
||||
COMMENT ON COLUMN upms.tb_sys_user_role.created_at IS '创建时间';
|
||||
|
||||
|
||||
DROP TABLE IF EXISTS upms.tb_sys_menu CASCADE;
|
||||
@@ -420,6 +444,9 @@ COMMENT ON COLUMN upms.tb_sys_message_recipient.updated_at IS '更新时间';
|
||||
CREATE INDEX IF NOT EXISTS idx_sys_tenant_adcode ON upms.tb_sys_tenant(adcode);
|
||||
CREATE INDEX IF NOT EXISTS idx_dept_tenant ON upms.tb_sys_dept(tenant_id, dept_path);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_tenant ON upms.tb_sys_user(tenant_id, dept_id);
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS uk_sys_user_tenant_mobile ON upms.tb_sys_user(tenant_id, mobile_phone) WHERE mobile_phone IS NOT NULL;
|
||||
CREATE INDEX IF NOT EXISTS idx_sys_user_role_user ON upms.tb_sys_user_role(user_id, tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_sys_user_role_role ON upms.tb_sys_user_role(role_id, tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_school_class_tenant_dept ON upms.tb_school_class(tenant_id, dept_id, grade_code);
|
||||
CREATE INDEX IF NOT EXISTS idx_school_class_member_tenant_user ON upms.tb_school_class_member(tenant_id, user_id, member_status);
|
||||
CREATE INDEX IF NOT EXISTS idx_school_class_course_rel_tenant_course ON upms.tb_school_class_course_rel(tenant_id, course_id, relation_status);
|
||||
|
||||
Reference in New Issue
Block a user