# | 表 | 作用 | 分类 |
|---|---|---|---|
1 |
| 主树:企业组织 + 内部通讯录,一棵树 | 数据模型 |
2 |
| 通讯录节点与成员映射表 | 数据模型 |
3 |
| 成员:企业成员 + 内部成员,同一张表 | 数据模型 |
4 |
| 成员的多值联系方式 | 数据模型 |
5 |
| 部门通用访问控制:只存显式设置,对某些部门和人可以单独设置,未设置的继承最近祖先 | 访问控制 |
6 |
| 分机号特殊访问控制:该号对某些部门和某些人可见 | 访问控制 |
directory_node —— 通讯录节点树CREATE TABLE `directory_node` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '节点ID',
`parent_id` bigint unsigned DEFAULT NULL COMMENT '上级节点ID,根节点为NULL',
`node_type` tinyint NOT NULL DEFAULT 2 COMMENT '节点类型: 1-企业组织(同步来源,结构只读), 2-内部通讯录(手工维护,可移动)',
`name` varchar(64) NOT NULL COMMENT '节点名称(根节点取名自公司名)',
`sort` bigint unsigned NOT NULL DEFAULT 0 COMMENT '同级排序值,稀疏分配(基准10000/步长100)',
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_node_parent_name` (`parent_id`, `name`, `active_unique`),
KEY `idx_node_parent_sort` (`parent_id`, `sort`),
KEY `idx_node_type` (`node_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通讯录节点树(企业组织 + 内部通讯录)';directory_node_member —— 通讯录节点与成员映射表()CREATE TABLE `directory_node_member` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '成员ID',
`node_id` bigint unsigned COMMENT '所属节点ID,指向directory_node.id',
`member_id` bigint NOT NULL COMMENT '成员ID',
`job_title` varchar(64) DEFAULT NULL COMMENT '岗位/组内职务(在不同的部门岗位可能不一样)',
`origin_node_id` bigint unsigned DEFAULT NULL COMMENT '原所属节点ID(弱引用,节点可能已删除)',
`origin_node_name` varchar(64) DEFAULT NULL COMMENT '原所属节点名称快照',
`origin_node_path` varchar(512) DEFAULT NULL COMMENT '原所属节点完整路径快照',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_node_id_member_id` (`node_id`, `member_id`, `active_unique`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通讯录节点与成员映射表';directory_member —— 通讯录成员(企业成员 + 内部成员)CREATE TABLE `directory_member` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '成员ID',
`member_type` tinyint NOT NULL DEFAULT 2 COMMENT '成员类型: 1-企业成员(同步来源,只读), 2-内部成员(手工维护)',
`employee_no` varchar(32) DEFAULT NULL COMMENT '工号;企业成员由同步给出且必填,内部成员可空',
`name` varchar(64) NOT NULL COMMENT '成员姓名',
`account` varchar(64) DEFAULT NULL COMMENT '账号',
`company_email` varchar(128) DEFAULT NULL COMMENT '公司邮箱(主邮箱,列表展示用)',
`office_location` varchar(128) DEFAULT NULL COMMENT '办公地点',
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态: 1-正常, 0-已归档',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_member_type_employee_no` (`member_type`, `employee_no`, `active_unique`),
KEY `idx_member_employee_no` (`employee_no`),
KEY `idx_member_node` (`node_id`, `status`),
KEY `idx_member_type` (`member_type`, `status`),
KEY `idx_member_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通讯录成员(企业成员 + 内部成员)';directory_member_contact —— 成员其他通讯方式CREATE TABLE `directory_member_contact` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`member_id` bigint unsigned NOT NULL COMMENT '成员ID',
`contact_type` tinyint NOT NULL COMMENT '类型: 1-手机号, 2-邮箱, 3-其他',
`contact_value` varchar(128) NOT NULL COMMENT '联系方式',
`remark` varchar(128) DEFAULT NULL COMMENT '备注(如:私人联系/助理代持)',
`sort` bigint unsigned NOT NULL DEFAULT 0 COMMENT '排序',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_member_contact_value`
(`member_id`, `contact_type`, `contact_value`, `active_unique`),
KEY `idx_member_contact_member` (`member_id`, `sort`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='成员其他通讯方式';directory_access_rule —— 部门通用访问控制CREATE TABLE `directory_access_rule` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`target_node_id` bigint unsigned NOT NULL COMMENT '被访问的部门节点ID',
`level` tinyint NOT NULL COMMENT '访问级别: 0-不可访问, 1-仅分机号码, 2-详细信息, 3-全部信息',
`visitor_node_id` bigint unsigned NOT NULL DEFAULT 0 COMMENT '访问者部门节点ID;target_node_id=visitor_node_id=root节点id时,表示全局通用规则',
`visitor_member_id` bigint unsigned NOT NULL DEFAULT 0 COMMENT '访问者成员ID;与visitor_node_id不可同时非0',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_rule_target_visitor`
(`target_node_id`, `visitor_node_id`, `visitor_member_id`, `active_unique`),
KEY `idx_rule_visitor_node` (`visitor_node_id`),
KEY `idx_rule_visitor_member` (`visitor_member_id`),
CONSTRAINT `chk_rule_visitor` CHECK ((`visitor_node_id` = 0) <> (`visitor_member_id` = 0))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门访问控制';directory_extension_access —— 分机号特殊访问控制CREATE TABLE `directory_extension_access` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`extension_id` bigint unsigned NOT NULL COMMENT '分机号ID,引用directory_extension.id(分机号表待定)',
`visitor_node_id` bigint unsigned NOT NULL DEFAULT 0 COMMENT '可见的部门节点ID(不含其子树);',
`visitor_member_id` bigint unsigned NOT NULL DEFAULT 0 COMMENT '可见的成员ID;与visitor_node_id不可同时非0',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人',
`updater` bigint unsigned DEFAULT NULL COMMENT '更新人',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '删除时间',
`active_unique` tinyint GENERATED ALWAYS AS
(CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ext_access_visitor`
(`extension_id`, `visitor_node_id`, `visitor_member_id`, `active_unique`),
KEY `idx_ext_access_node` (`visitor_node_id`),
KEY `idx_ext_access_member` (`visitor_member_id`),
CONSTRAINT `chk_ext_visitor` CHECK ((`visitor_node_id` = 0) <> (`visitor_member_id` = 0))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='分机号特殊访问控制';ums_user —— 用户表CREATE TABLE `ums_user` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID,主键',
`account` varchar(64) NOT NULL COMMENT '登录账号',
`username` varchar(64) NOT NULL COMMENT '显示姓名',
`contact` varchar(64) DEFAULT NULL COMMENT '联系方式',
`password_hash` varchar(255) DEFAULT NULL,
`identity_source` varchar(32) NOT NULL DEFAULT 'local',
`external_subject` varchar(128) DEFAULT NULL,
`status` tinyint unsigned NOT NULL,
`last_login_at` datetime(3) DEFAULT NULL COMMENT '最近一次登录成功的时间',
`creator` bigint unsigned DEFAULT NULL,
`updater` bigint unsigned DEFAULT NULL COMMENT '最后修改人ID',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '软删时间',
`active_unique` tinyint GENERATED ALWAYS AS (CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_user_source_account_active` (`identity_source`, `account`, `active_unique`),
UNIQUE KEY `uk_ums_user_external_subject_active` (`external_subject`, `active_unique`),
KEY `idx_ums_user_status_created_at` (`status`),
KEY `idx_ums_user_deleted_at` (`deleted_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户表';ums_role —— 角色表CREATE TABLE `ums_role` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '角色ID,主键',
`application_code` varchar(64) NOT NULL COMMENT '所属应用:system-系统管理 / operations-运营平台',
`code` varchar(64) NOT NULL COMMENT '角色编码',
`name` varchar(64) NOT NULL COMMENT '角色名称',
`scope_mode` varchar(32) NOT NULL COMMENT '范围模式:ALL-范围相关权限覆盖全部节点(不用绑)/ SCOPE_RELATED-只覆盖被绑定节点及其子树/ SCOPE_INDEPENDENT-与范围无关',
`scope_type_code` varchar(64) DEFAULT NULL COMMENT '业务范围类型,只有 scope_mode=SCOPE_RELATED 时才有值,如 site-站点 / contracts-合同/通讯录-contact',
`is_preset` tinyint unsigned NOT NULL DEFAULT '0' COMMENT '是否预置角色:1-预置/ 0-普通角色',
`remark` varchar(255) DEFAULT NULL COMMENT '角色说明,展示用',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人ID',
`updater` bigint unsigned DEFAULT NULL COMMENT '最后修改人ID',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '软删时间',
`active_unique` tinyint GENERATED ALWAYS AS (CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_role_app_code_active` (`application_code`, `code`, `active_unique`),
UNIQUE KEY `uk_ums_role_app_name_active` (`application_code`, `name`, `active_unique`),
KEY `idx_ums_role_candidate` (`application_code`, `scope_mode`, `scope_type_code`),
KEY `idx_ums_role_deleted_at` (`deleted_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='角色表';预置角色插入语句
INSERT INTO ums_role (id, application_code, code, name, scope_mode, scope_type_code, is_preset, remark, created_at, updated_at)
VALUES (9101, 'operations', 'contact_admin', '通讯录管理员', 'SCOPE_RELATED', 'contact', 1, '可管理被授权节点及其子树的通讯录', NOW(3), NOW(3));ums_permission —— 权限表CREATE TABLE `ums_permission` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '权限ID,主键',
`application_code` varchar(64) NOT NULL COMMENT '所属应用:system / operations',
`parent_id` bigint unsigned NOT NULL DEFAULT '0' COMMENT '父权限ID',
`code` varchar(128) NOT NULL COMMENT '权限编码,如 directory:member:update。',
`urls` json DEFAULT NULL COMMENT '关联的后端接口列表',
`path` varchar(50) NOT NULL COMMENT '前端路由地址,如 /directory。',
`icon` varchar(50) DEFAULT '' COMMENT '菜单图标标识',
`scope_requirement` varchar(32) NOT NULL COMMENT '范围要求:SCOPE_RELATED-操作对象能确定属于某个业务节点(如改成员、删部门)/ SCOPE_INDEPENDENT-与节点无关(如导出全量报表)。与角色的 scope_mode 共同决定能否放行',
`scope_type_code` varchar(64) DEFAULT NULL COMMENT '业务范围类型,SCOPE_RELATED 时必填且必须在白名单内;SCOPE_INDEPENDENT 时必须为空',
`sort` bigint unsigned NOT NULL DEFAULT '0' COMMENT '同级权限的显示顺序,越小越靠前',
`remark` varchar(255) DEFAULT NULL COMMENT '权限说明,展示用。',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_permission_app_parent_code` (`application_code`, `parent_id`, `code`),
KEY `idx_ums_permission_parent_sort` (`parent_id`, `sort`, `id`)',
KEY `idx_ums_permission_application_scope` (`application_code`, `scope_requirement`, `scope_type_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='权限表:菜单与按钮';权限内置数据
INSERT INTO ums_permission (id, application_code, parent_id, code, urls, path, icon, scope_requirement, scope_type_code, sort, remark)
VALUES (9001, 'operations', 0, 'contact:menu', NULL, '/contact', '', 'SCOPE_INDEPENDENT', '', 100, '通讯录');INSERT INTO ums_permission (id, application_code, parent_id, code, urls, path, icon, scope_requirement, scope_type_code, sort, remark)
VALUES
(9002, 'operations', 9001, 'contact:node:list', '["GET /contact/nodes"]', '', '', 'SCOPE_RELATED', 'contact', 1, '查看通讯录树'),
(9003, 'operations', 9001, 'contact:node:create', '["POST /contact/nodes"]', '', '', 'SCOPE_RELATED', 'contact', 2, '新建内部通讯录'),
(9004, 'operations', 9001, 'contact:node:update', '["PUT /contact/nodes/{id}"]', '', '', 'SCOPE_RELATED', 'contact', 3, '修改节点'),
(9005, 'operations', 9001, 'contact:node:move', '["PUT /contact/nodes/{id}/move"]', '', '', 'SCOPE_RELATED', 'contact', 4, '移动/拆分节点'),
(9006, 'operations', 9001, 'contact:node:delete', '["DELETE /contact/nodes/{id}"]', '', '', 'SCOPE_RELATED', 'contact', 5, '删除节点'),
(9007, 'operations', 9001, 'contact:member:list', '["GET /contact/members"]', '', '', 'SCOPE_RELATED', 'contact', 6, '查看成员'),
(9008, 'operations', 9001, 'contact:member:create', '["POST /contact/members"]', '', '', 'SCOPE_RELATED', 'contact', 7, '新增内部成员'),
(9009, 'operations', 9001, 'contact:member:update', '["PUT /contact/members/{id}"]', '', '', 'SCOPE_RELATED', 'contact', 8, '修改成员'),
(9010, 'operations', 9001, 'contact:member:delete', '["DELETE /contact/members/{id}"]', '', '', 'SCOPE_RELATED', 'contact', 9, '删除成员'),
(9011, 'operations', 9001, 'contact:access:config', '["PUT /contact/access-rules"]', '', '', 'SCOPE_RELATED', 'contact', 10, '配置通用访问控制'),
(9012, 'operations', 9001, 'contact:extension:manage', '["GET /contact/extensions"]', '', '', 'SCOPE_RELATED', 'contact', 11, '管理分机号'),
(9013, 'operations', 9001, 'contact:extension:access:config', '["PUT /contact/extensions/{id}/access"]', '', '', 'SCOPE_RELATED', 'contact', 12, '配置分机号访问名单');ums_role_permission —— 角色绑定权限CREATE TABLE `ums_role_permission` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`role_id` bigint unsigned NOT NULL COMMENT '角色ID,指向 ums_role.id',
`permission_id` bigint unsigned NOT NULL COMMENT '权限ID,指向 ums_permission.id',
`creator` bigint unsigned DEFAULT NULL COMMENT '创建人ID',
`updater` bigint unsigned DEFAULT NULL COMMENT '最后修改人ID',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '软删时间',
`active_unique` tinyint GENERATED ALWAYS AS (CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_role_permission_active` (`role_id`, `permission_id`, `active_unique`),
KEY `idx_ums_role_permission_role` (`role_id`, `permission_id`),
KEY `idx_ums_role_permission_deleted_at` (`deleted_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='角色-权限关联表';角色权限初始化数据
INSERT INTO ums_role_permission (role_id, permission_id, created_at, updated_at)
VALUES
(9101, 9001, NOW(3), NOW(3)),
(9101, 9002, NOW(3), NOW(3)),
(9101, 9003, NOW(3), NOW(3)),
(9101, 9004, NOW(3), NOW(3)),
(9101, 9005, NOW(3), NOW(3)),
(9101, 9006, NOW(3), NOW(3)),
(9101, 9007, NOW(3), NOW(3)),
(9101, 9008, NOW(3), NOW(3)),
(9101, 9009, NOW(3), NOW(3)),
(9101, 9010, NOW(3), NOW(3)),
(9101, 9011, NOW(3), NOW(3)),
(9101, 9012, NOW(3), NOW(3)),
(9101, 9013, NOW(3), NOW(3));ums_user_role_grant —— 用户绑定角色CREATE TABLE `ums_user_role_grant` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '授权ID',
`user_id` bigint unsigned NOT NULL COMMENT '用户ID,指向 ums_user.id',
`role_id` bigint unsigned NOT NULL COMMENT '角色ID,指向 ums_role.id',
`creator` bigint unsigned DEFAULT NULL COMMENT '授权人ID',
`updater` bigint unsigned DEFAULT NULL COMMENT '最后修改人ID',
`created_at` datetime(3) NOT NULL COMMENT '授权时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '软删时间',
`active_unique` tinyint GENERATED ALWAYS AS (CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_user_role_active` (`user_id`, `role_id`, `active_unique`),
KEY `idx_ums_user_role_user` (`user_id`, `role_id`),
KEY `idx_ums_user_role_role` (`role_id`, `user_id`),
KEY `idx_ums_user_role_grant_deleted_at` (`deleted_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户-角色授权表';给用户绑定角色
INSERT INTO ums_user_role_grant (id, user_id, role_id, created_at, updated_at)
VALUES (9201, (SELECT id FROM ums_user WHERE account = 'admin'), 9101, NOW(3), NOW(3));ums_grant_scope —— 授权节点表CREATE TABLE `ums_grant_scope` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`grant_id` bigint unsigned NOT NULL COMMENT '授权ID,指向 ums_user_role_grant.id',
`scope_type_code` varchar(64) NOT NULL COMMENT '业务范围类型:site-站点 / contracts-合同 / 通讯录-contact',
`scope_id` bigint NOT NULL COMMENT '业务节点主键。对应通讯录部门节点的node_id',
`creator` bigint unsigned DEFAULT NULL COMMENT '操作人ID',
`updater` bigint unsigned DEFAULT NULL COMMENT '最后修改人ID',
`created_at` datetime(3) NOT NULL COMMENT '创建时间',
`updated_at` datetime(3) NOT NULL COMMENT '更新时间',
`deleted_at` datetime(3) DEFAULT NULL COMMENT '软删时间',
`active_unique` tinyint GENERATED ALWAYS AS (CASE WHEN `deleted_at` IS NULL THEN 1 ELSE NULL END) VIRTUAL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_ums_grant_scope_active` (`grant_id`, `scope_type_code`, `scope_id`, `active_unique`),
KEY `idx_ums_grant_scope_grant` (`grant_id`, `scope_type_code`, `scope_id`),
KEY `idx_ums_grant_scope_resource` (`scope_type_code`, `scope_id`, `grant_id`),
KEY `idx_ums_grant_scope_deleted_at` (`deleted_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='授权范围表';授权节点
INSERT INTO ums_grant_scope (grant_id, scope_type_code, scope_id, created_at, updated_at)
VALUES
(9201, 'contact', 1, NOW(3), NOW(3)),
(9201, 'contact', 2, NOW(3), NOW(3));本文作者:六789
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!