需求场景:编辑岗新建需求,提交后发起需求流程:开始->审批岗审批需求->结束,包括需求的状态迁移
需求状态:待提交、待评审、已通过、已拒绝。其中,待提交对应“编辑岗新建需求”步骤,待评审对应“审批岗审批需求”步骤,审批后为已通过或已拒绝
需求权限
编辑岗可以新建需求
所有人可以查看需求
编辑岗在待提交时可以更新需求
可以删除自己创建或负责的需求
不能删除待评审、已通过的需求
任何情况下都可以进行需求状态迁移
DeepModel&领域模型搭建(不包含权限)
DeepModel中新建需求对象Req,包含状态字段req_status,有四种状态:待提交(editing)、待评审(submitted)、已通过(approved)、已拒绝(rejected)
新建基于需求对象的领域模型,即需求模型
需求模型的领域动作中配置需求的状态迁移
平台配置中新增用户组:编辑岗、审批岗
需求模型的访问策略中配置需求权限相关策略,DeepModel中新建相关访问规则
新建策略->全局权限,新建策略:编辑岗可以新建需求
新建策略->行级权限,新建策略:所有人可以查看需求、任何情况下都可以进行需求状态迁移
新建策略->行级权限,新建策略:编辑岗在待提交时可以更新需求
使用访问规则:编辑岗在待提交时,可使用模板
新建策略->行级权限,新建策略:可以删除自己创建或负责的需求
使用访问规则:自己创建或负责的需求,可使用模板
新建策略->行级权限,新建策略:不能删除待评审、已通过的需求
使用访问规则:待评审、已通过的需求,可使用模板
假设需求对象有以下8条数据
需求ID |
需求状态 |
组件 |
需求负责人 |
创建人 |
---|---|---|---|---|
REQ_0001 |
editing |
DeepModel |
A |
A |
REQ_0002 |
submitted |
DeepModel |
A |
A |
REQ_0003 |
approved |
DeepModel |
A |
A |
REQ_0004 |
rejected |
DeepModel |
A |
A |
REQ_0005 |
editing |
DeepFlow |
B |
A |
REQ_0006 |
submitted |
DeepFlow |
B |
A |
REQ_0007 |
approved |
DeepFlow |
B |
A |
REQ_0008 |
rejected |
DeepFlow |
B |
A |
在新标签页测试指定用户的权限
编辑岗用户A测试结果如下,其中可更新需求:REQ_0001、REQ_0005,可删除需求:REQ_0001、REQ_0004、REQ_0005、REQ_0008
编辑岗用户B测试结果如下,其中可更新需求:REQ_0001、REQ_0005,可删除需求:REQ_0005、REQ_0008
审批岗用户C测试结果如下
需求场景中需要搭建UX页面,包括:需求池、需求详情
需求池为需求清单,可在当前页面新建、编辑、删除需求,也可跳转新页面新建需求
需求详情为需求明细,可新建、更新需求
UX数据源为领域模型时,包含模型权限。需求场景中需求池、需求详情的数据源为需求模型
需求池中新建、编辑、删除按钮的禁用状态可关联对应动作权限。注:UX清单表展示数据已按查询权限过滤
需求详情中新建、更新时的禁用或只读状态可关联对应动作权限
需求场景中需要搭建需求审批工作流,需求流程:开始->审批岗审批需求->结束,包括需求的状态迁移
工作流中领域模型节点包含模型权限,模型执行动作需要在对应领域模型中配置该动作权限,确保执行人有权限
回到顶部
咨询热线