阅读原文
需求描述:
在使用workspace流程定制功能时,总公司辖下a子公司,b子公司,a子公司流程参与者设计时只能看到a子公司及其下级机构、角色、人员;
b子公司同理。a、b两个子公司之间不存在跨子公司的流程需求。
即a子公司职员a1通过第三方系统单点登录workspace流程定制功能,设计流程环节参与者时,如下图所示(例子)
实现步骤:
- 业务目录权限事先需在workspace中自行设置.
确认governor --BPS流程引擎配置--扩展配置中使用默认的组织机构接口和权限接口
组织机构接口:org.gocom.components.coframe.bps.om.WFOMServiceImpl
权限接口:org.gocom.components.coframe.bps.om.WFOMPermissionImpl
- 确认governor --
BPS流程引擎配置--业务目录中业务目录权限有效为勾选状态
- 登录coframe创建机构、用户、员工、角色并进行授权,操作过程请参考coframe使用文档
- 使用sysadmin/000000登录workspace进行创建业务目录并授权
如上图所示,在建立业务目录时进行机构、角色等授权信息,注意授权时观察角色、机构下的人员信息是否展示出来,如果没展示出来则需要在coframe中授权管理中进行授权。这里的角色授权是和员工绑定的,所以员工信息是必须的(注意员工和用户的区别)
- Workspace中业务目录授权完成后,重启服务,使用被授权人登录验证业务目录授权是否正确
如下图所示,user1用户登录后只能见到领域目录下A部门业务目录下的流程,其他选项卡有业务目录展示的地方均如下图所示,同理user2登录只能看到B部门的业务目录。
注意
默认目录和领域业务目录的区别
默认目录中的流程所有登录人均可见,不可被授权
领域目录中可创建用户自己的业务目录,同时可做权限配置,符合授权条件的人、角色、机构可见,没设置权限则所有人可见。
2.扩展开发WFOMServiceImpl类
找到安装eos的tomcat部署目录,将附件【WFOMServiceImpl.class】放入到webapps{color}default\WEB-INF\classes\org\gocom\components\coframe\bps\om\目录下替换原文件即可,替换之前先做下备份。
最终实现效果
a1用户进入流程定制编辑流程页面选择参与者时只能看到A部门下的人员及A角色下的人员: