RBAC權限管理系統數據模型


懶得多寫了,懂的看建表腳本就懂了。。。

-- ---------------------------- -- Table structure for ucb_user -- ---------------------------- DROP TABLE IF EXISTS ucb_user; CREATE TABLE ucb_user ( id char(32) NOT NULL COMMENT '主鍵(UUID)', user_type tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '用戶類型:0、未定義;1、內部用戶;2、合作方用戶;3、外部用戶', source tinyint(3) DEFAULT '0' COMMENT '來源', code varchar(8) DEFAULT NULL COMMENT '用戶編碼', name varchar(64) NOT NULL COMMENT '名稱', account varchar(64) NOT NULL COMMENT '登錄賬號', mobile varchar(32) DEFAULT NULL COMMENT '手機號', email varchar(64) DEFAULT NULL COMMENT '電子郵箱', union_id varchar(128) DEFAULT NULL COMMENT '微信UnionID', password varchar(256) NOT NULL DEFAULT 'e10adc3949ba59abbe56e057f20f883e' COMMENT '密碼(RSA加密)', paypw char(32) DEFAULT NULL COMMENT '支付密碼(MD5)', head_img varchar(256) DEFAULT NULL COMMENT '用戶頭像', remark varchar(256) DEFAULT NULL COMMENT '備注', setting json DEFAULT NULL COMMENT '配置信息', invite_code varchar(32) DEFAULT NULL COMMENT '邀請碼', inviter varchar(64) DEFAULT NULL COMMENT '邀請人', inviter_id char(32) DEFAULT NULL COMMENT '邀請人ID', is_builtin bit(1) NOT NULL DEFAULT b'0' COMMENT '是否內置:0、非內置;1、內置', is_invalid bit(1) NOT NULL DEFAULT b'0' COMMENT '是否失效:0、有效;1、失效', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucb_user_code (code) USING BTREE, KEY idx_ucb_user_invite_code (invite_code) USING BTREE, UNIQUE KEY idx_ucb_user_account (account) USING BTREE, UNIQUE KEY idx_ucb_user_mobile (mobile) USING BTREE, UNIQUE KEY idx_ucb_user_email (email) USING BTREE, UNIQUE KEY idx_ucb_user_union_id (union_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='用戶表';

-- ---------------------------- -- Table structure for ucg_group -- ---------------------------- DROP TABLE IF EXISTS ucg_group; CREATE TABLE ucg_group ( id char(32) NOT NULL COMMENT '主鍵(UUID)', name varchar(64) NOT NULL COMMENT '名稱', remark varchar(256) DEFAULT NULL COMMENT '備注', is_builtin bit(1) NOT NULL DEFAULT b'0' COMMENT '是否內置:0、非內置;1、內置', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucg_group_tenant_id (tenant_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='用戶組表';

-- ---------------------------- -- Table structure for ucg_group_member -- ---------------------------- DROP TABLE IF EXISTS ucg_group_member; CREATE TABLE ucg_group_member ( id char(32) NOT NULL COMMENT '主鍵(UUID)', group_id char(32) NOT NULL COMMENT '用戶組ID', user_id char(32) NOT NULL COMMENT '用戶ID', PRIMARY KEY (id) USING BTREE, KEY idx_ucg_group_member_group_id (group_id) USING BTREE, KEY idx_ucg_group_member_user_id (user_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='用戶組成員表';

-- ---------------------------- -- Table structure for uco_org -- ---------------------------- DROP TABLE IF EXISTS uco_org; CREATE TABLE uco_org ( id char(32) NOT NULL COMMENT '主鍵(UUID)', parent_id char(32) DEFAULT NULL COMMENT '父級ID', node_type tinyint(3) unsigned DEFAULT NULL COMMENT '節點類型:0、機構;1、部門;2、職位', index tinyint(3) unsigned NOT NULL COMMENT '序號', code varchar(8) DEFAULT NULL COMMENT '編碼', name varchar(64) NOT NULL COMMENT '名稱', alias varchar(64) DEFAULT NULL COMMENT '簡稱', full_name varchar(128) DEFAULT NULL COMMENT '全稱', remark varchar(256) DEFAULT NULL COMMENT '備注', is_invalid bit(1) NOT NULL DEFAULT b'0' COMMENT '是否失效:0、有效;1、失效', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, UNIQUE KEY idx_uco_org_code (code) USING BTREE, KEY idx_uco_org_tenant_id (tenant_id) USING BTREE, KEY idx_uco_org_parent_id (parent_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='組織機構表';

-- ---------------------------- -- Table structure for uco_org_member -- ---------------------------- DROP TABLE IF EXISTS uco_org_member; CREATE TABLE uco_org_member ( id char(32) NOT NULL COMMENT '主鍵(UUID)', org_id char(32) NOT NULL COMMENT '職位ID(組織機構表ID)', user_id char(32) NOT NULL COMMENT '用戶ID(用戶表ID)', PRIMARY KEY (id) USING BTREE, KEY idx_uco_org_member_org_id (org_id) USING BTREE, KEY idx_uco_org_member_user_id (user_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='職位成員表';

-- ---------------------------- -- Table structure for ucs_application -- ---------------------------- DROP TABLE IF EXISTS ucs_application; CREATE TABLE ucs_application ( id char(32) NOT NULL COMMENT '主鍵(UUID)', index int(11) unsigned NOT NULL COMMENT '序號', name varchar(64) NOT NULL COMMENT '應用名稱', alias varchar(64) NOT NULL COMMENT '應用簡稱', icon varchar(128) DEFAULT NULL COMMENT '應用圖標', host varchar(128) DEFAULT NULL COMMENT '應用域名', token_life int(10) unsigned NOT NULL DEFAULT '24' COMMENT '令牌生命周期(毫秒)', is_signin_one bit(1) NOT NULL DEFAULT b'0' COMMENT '是否單點登錄:0、允許多點;1、單點登錄', is_auto_refresh bit(1) NOT NULL DEFAULT b'0' COMMENT '是否自動刷新:0、手動刷新;1、自動刷新()', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建用戶ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='應用表';

-- ---------------------------- -- Table structure for ucs_navigator -- ---------------------------- DROP TABLE IF EXISTS ucs_navigator; CREATE TABLE ucs_navigator ( id char(32) NOT NULL COMMENT '主鍵(UUID)', parent_id char(32) DEFAULT NULL COMMENT '父級導航ID', app_id char(32) NOT NULL COMMENT '應用ID', type tinyint(3) unsigned NOT NULL COMMENT '導航級別', index int(11) unsigned NOT NULL COMMENT '序號', name varchar(64) NOT NULL COMMENT '名稱', icon varchar(128) DEFAULT NULL COMMENT '圖標Url', url varchar(128) DEFAULT NULL COMMENT '模塊/頁面Url', remark varchar(256) DEFAULT NULL COMMENT '備注', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建用戶ID', created_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucs_navigator_app_id (app_id) USING BTREE, KEY idx_ucs_navigator_parent_id (parent_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='導航表';

-- ---------------------------- -- Table structure for ucs_function -- ---------------------------- DROP TABLE IF EXISTS ucs_function; CREATE TABLE ucs_function ( id char(32) NOT NULL COMMENT '主鍵(UUID)', nav_id char(32) NOT NULL COMMENT '導航(末級模塊)ID', type tinyint(3) unsigned NOT NULL COMMENT '功能類型 0:全局功能;1:數據項功能;2:其他功能', code varchar(16) DEFAULT NULL COMMENT '代碼', index int(11) unsigned NOT NULL COMMENT '序號', name varchar(64) NOT NULL COMMENT '名稱', alias varchar(64) DEFAULT NULL COMMENT '別名', icon varchar(128) DEFAULT NULL COMMENT '圖標Url', url varchar(128) DEFAULT NULL COMMENT '功能URL', interfaces varchar(512) DEFAULT NULL COMMENT '接口URL,功能對應多個URL以逗號分隔(不含域名及端口號)', remark varchar(256) DEFAULT NULL COMMENT '備注', begin_group bit(1) NOT NULL DEFAULT b'0' COMMENT '是否開始分組', hide_text bit(1) NOT NULL DEFAULT b'0' COMMENT '是否隱藏文字', is_invisible bit(1) NOT NULL DEFAULT b'0' COMMENT '是否不可見:0、可見;1、不可見', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建用戶ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucs_function_nav_id (nav_id) USING BTREE, KEY idx_ucs_function_alias (alias) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='功能表';

-- ---------------------------- -- Table structure for ucr_config -- ---------------------------- DROP TABLE IF EXISTS ucr_config; CREATE TABLE ucr_config ( id char(32) NOT NULL COMMENT '主鍵(UUID)', data_type int(3) unsigned NOT NULL COMMENT '類型:0、無歸屬;1、僅本人;2、僅本部門;3、部門所有;4、機構所有', name varchar(32) NOT NULL COMMENT '名稱', PRIMARY KEY (id) USING BTREE, KEY idx_ucr_role_data_permit_data_type (data_type) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='數據配置表';

-- ---------------------------- -- Table structure for ucr_role -- ---------------------------- DROP TABLE IF EXISTS ucr_role; CREATE TABLE ucr_role ( id char(32) NOT NULL COMMENT '主鍵(UUID)', app_id char(32) DEFAULT NULL COMMENT '應用ID,如不為空則該角色為應用專有', name varchar(64) NOT NULL COMMENT '名稱', remark varchar(256) DEFAULT NULL COMMENT '備注', is_builtin bit(1) NOT NULL DEFAULT b'0' COMMENT '是否內置:0、非內置;1、內置', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucr_role_tenant_id (tenant_id) USING BTREE, KEY idx_ucr_role_app_id (app_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='角色表';

-- ---------------------------- -- Table structure for ucr_role_func_permit -- ---------------------------- DROP TABLE IF EXISTS ucr_role_func_permit; CREATE TABLE ucr_role_func_permit ( id char(32) NOT NULL COMMENT '主鍵(UUID)', role_id char(32) NOT NULL COMMENT '角色ID', function_id char(32) NOT NULL COMMENT '功能ID', permit bit(1) NOT NULL DEFAULT b'0' COMMENT '授權類型:0、拒絕;1、允許', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucr_role_func_permit_role_id (role_id) USING BTREE, KEY idx_ucr_role_func_permit_function_id (function_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='角色功能權限表';

-- ---------------------------- -- Table structure for ucr_role_data_permit -- ---------------------------- DROP TABLE IF EXISTS ucr_role_data_permit; CREATE TABLE ucr_role_data_permit ( id char(32) NOT NULL COMMENT '主鍵(UUID)', role_id char(32) NOT NULL COMMENT '角色ID', module_id char(32) NOT NULL COMMENT '業務模塊ID', mode int(3) unsigned NOT NULL COMMENT '授權模式:0、相對模式;1、用戶模式;2、部門模式', owner_id char(32) NOT NULL COMMENT '數據所有者ID,相對模式下為模式ID', permit bit(1) NOT NULL DEFAULT b'0' COMMENT '授權類型:0、只讀;1、讀寫', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucr_role_data_permit_role_id (role_id) USING BTREE, KEY idx_ucr_role_data_permit_module_id (module_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='角色數據權限表';

-- ---------------------------- -- Table structure for ucr_role_member -- ---------------------------- DROP TABLE IF EXISTS ucr_role_member; CREATE TABLE ucr_role_member ( id char(32) NOT NULL COMMENT '主鍵(UUID)', type tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '成員類型:0、未定義;1、用戶;2、用戶組;3、職位', role_id char(32) NOT NULL COMMENT '角色ID', member_id char(32) NOT NULL COMMENT '成員ID', creator varchar(64) NOT NULL COMMENT '創建人', creator_id char(32) NOT NULL COMMENT '創建人ID', created_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (id) USING BTREE, KEY idx_ucr_role_member_role_id (role_id) USING BTREE, KEY idx_ucr_role_member_member_id (member_id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='角色成員表'; 原文地址:https://www.cnblogs.com/xuanbg/p/9125027.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM