变更记录
产品版本 | 更新内容 | 更新日期 |
V5.0.018 | 初始版本 | 2023年03月30日 |
V5.0.023 | 新增了动态表单控权配置的预置方法 | 2023年06月30日 |
V6.0.1 | 系统路径调整 | 2023年10月30日 |
1 简介
本文主要介绍二开时,权限相关的开发配置项和页面的配置项。
1.1配置清单
序号 | 类型 | 配置项 | 预置数据用途说明 |
1 | 开发配置项 | 预置HR云 | 预置的云才允许出现在HR权限页面,对云下的权限进行管理。二开的HR领域的云需要预置。 |
2 | 开发配置项 | 预置的应用 | 预置的应用才会进入HR数据权限管理。二开的HR应用需要预置。 |
3 | 开发配置项 | 预置权限项 | 按需设置 标准的权限项不满足二开业务时,可配置新权限项。 |
4 | 开发配置项 | 预置系统管辖范围权限项 | 按需设置 二开业务中,如果有HR管理员可操作的功能权限,需要预置到系统,预置之后可在管理员的系统管辖范围进行分配;。 |
5 | 开发配置项 | 配置动态表单控权配置 | 按需设置 配置动态表单的控权字段,后续可用于配置业务对象维度映射 |
6 | 页面配置项 | 配置HR管理员组的【系统管辖范围】和【应用范围】 | 按需设置 二开的管理员权限项需要分配给HR管理员,管理员才有权限操作; 需要给HR管理员分二开的应用范围,管理员才能分配二开应用的权限。 |
7 | 页面配置项 | 配置应用与业务类型关系 | 按需设置 设置二开应用的默认的业务类型。权限根据业务类型获取应用的默认职能类型。 |
8 | 页面配置项 | 配置HR云应用 | 按需设置, 用于HR领域页面云和应用F7显示范围,以及云的显示顺序 |
9 | 页面配置项 | 配置维度 | 按需设置 用于角色数据范围的控权 |
10 | 页面配置项 | 配置业务对象维度映射 | 按需设置 配置二开的业务对象的控权维度。 |
2 开发预置项
本章节主要介绍二开存在新增云、应用时,如何配置才能在HR领域对这些云、应用进行权限管理。
2.1预置二开云数据
IF NOT EXISTS(SELECT 1 FROM T_HRCS_HRCLOUD WHERE FID = 'TODO_cloudid')
INSERT INTO T_HRCS_HRCLOUD(fid,fnumber,findex) VALUES('TODO_cloudid','TODO_cloudnumber',10000);
注意需要把TODO_cloudid改成云的fid,把TODO_cloudnumber替换成云的number。
云的cloudid和cloudnumber可以在meta库的 t_meta_bizcloud 查询.
2.2预置二开应用数据
IF NOT EXISTS(SELECT 1 FROM T_PERM_CUSTPERMSERV WHERE FAPPID = 'TODO_appid')
INSERT INTO T_PERM_CUSTPERMSERV(FID,FSERVFACTORY,FSERVNAME,FISSKIP,FISAND,FAPPID,FSERVAPPNUM) VALUES(TODO_fid,'kd.hrmp.hrcs.servicehelper.ServiceFactory','IHRCSDataPermissionService','0','1','TODO_appid','hrcs');
注意需要把TODO_fid改成不重复的fid,把TODO_appid替换成新应用的appid。
应用的appid可以在在meta库的 t_meta_bizapp 查询.
2.3预置二开权限项
1. 在开发平台搜索perm_permitem打开元数据,切换到列表视图,点击预览进入页面;
2. 点击新增添加权限项,编码请以EXTHR+4位顺序码开头(编码不可重复);
3. 列表选中上一步新增的权限项,点击“生成脚本”,把生成的脚本按要求放到预置数据目录。
2.4预置系统管辖范围权限项
IF NOT EXISTS(SELECT 1 FROM T_PERM_ADMINDOMAINRANGE WHERE FENTRYID = TODO_fentryid)
INSERT INTO T_PERM_ADMINDOMAINRANGE (FENTRYID,FID, FSEQ, FAPPID, FENTITYNUM, FPERMITEMID) VALUES (TODO_fentryid,1386267129346523136, 0,'TODO_appId', 'TODO_entityId', 'TODO_permItemId');
需要把TODO_fentryid改成不重复的fentryid,把TODO_appid替换成新应用的appid。 TODO_entityId替换成对应实体的id,TODO_permItemId换成对应实体的权限项id
fid的值是固定的【1386267129346523136】,不要修改。
应用的appid可以在在meta库的 t_meta_bizapp 查询;EntityId可以在meta库的t_meta_mainentityinfo表中查询fid;PermItemId可以在sys库的t_perm_permitem查询fid;
2.5预置业务对象的默认职能类型
DELETE FROM t_hrcs_entityspecfunc WHERE fid=TODO_fid; INSERT INTO t_hrcs_entityspecfunc (fid,fentitytypeid,fbucafuncid,fissyspreset) VALUES (TODO_fid , TODO_entityId, TODO_buId, '1'); 注意需要把TODO_fid改成不重复的fid,把TODO_entityId替换成新建实体的标识, 把TODO_ buId替换成新建实体的职能。
需要把TODO_fid改成不重复的fid,把TODO_entityId替换成新建实体的标识, 把TODO_ buId替换成新建实体的职能。EntityId可以在meta库的t_meta_mainentityinfo表中查询fidbuId可以在hmp库的t_hbss_hrbucafunc表中查询fidØ 注意需要把TODO_fid改成不重复的fid,把TODO_entityId替换成新建实体的标识, 把TODO_ buId替换成新建实体的职能。EntityId可以在meta库的t_meta_mainentityinfo表中查询fid
buId可以在hmp库的t_hbss_hrbucafunc表中查询fid
2.6预置动态表单控权配置
t_hrcs_dynaformctrl:动态表单控权属性配置
t_hrcs_dynaformctrl_l:动态表单控权属性配置多语言表
t_hrcs_dynaformfield:动态表单控权属性分录
t_hrcs_dynaformfield_l:动态表单控权属性分录多语言表
IF NOT EXISTS(SELECT 1 FROM T_HRCS_DYNAFORMCTRL WHERE FID = TODO_FID);
INSERT INTO T_HRCS_DYNAFORMCTRL(FID,FCREATORID,FCREATETIME,FMODIFIERID,FMODIFYTIME,FDESCRIPTION,FENTITYTYPEID,FAPPID) VALUES(TODO_FID,1,{ts'2023-01-11 00:00:00'},1,{ts'2023-01-11 00:00:00'},'TODO_描述内容','TODO_entityId','TODO_appId');
IF NOT EXISTS(SELECT 1 FROM T_HRCS_DYNAFORMCTRL_L WHERE FPKID = 'TODO_FPKID');
INSERT INTO T_HRCS_DYNAFORMCTRL_L(FID,FLOCALEID,FPKID,FDESCRIPTION) VALUES(TODO_FID,'zh_CN','TODO_FPKID','TODO_描述内容');
IF NOT EXISTS(SELECT 1 FROM T_HRCS_DYNAFORMFIELD WHERE FENTRYID = TODO_fentryid);
INSERT INTO T_HRCS_DYNAFORMFIELD(FENTRYID,FSEQ,FPROPKEY,FPROPNAME,FBDTYPE,FISSYSPRESET,FID) VALUES(TODO_fentryid,1,'TODO_propKey','TODO_propName','TODO_bdType','1',TODO_FID);
IF NOT EXISTS(SELECT 1 FROM T_HRCS_DYNAFORMFIELD_L WHERE fpkid = 'TODO_FPKID');
INSERT INTO T_HRCS_DYNAFORMFIELD_L(fentryid,flocaleid,fpkid,fpropname) VALUES(TODO_fentryid,'zh_CN','TODO_FPKID','TODO_propName');
需要把上面的示例中以TODO_开头的内容替换成实际内容:
TODO_fid改成不重复的fid。
TODO_entityId替换成要控权的动态表单的标识。
TODO_appId替换成动态表单的应用ID,可以在meta库的t_meta_bizapp查询到。
TODO_FPKID 替换成不重复的多语言表ID。
TODO_描述内容 替换成符合实际情况的描述内容。
TODO_fentryid 替换成不重复的分录表ID。
TODO_propKey 替换成要控权的字段标识。
TODO_propName 替换成要控权的字段名称。
TODO_bdType 替换成要控权的字段的基础资料类型。
3 页面配置项
3.1配置HR管理员范围
由系统管理员用户在:【基础服务云】-【安全管理】-【权限管理】-【管理员】选择HR管理员分组,设置系统管辖范围和应用范围。详见如何设置 HR 权限管理员 。
3.2 配置HR应用与业务类型关系
3.3配置HR云应用
3.4 配置维度
3.5配置业务对象维度映射