61541 - 项目未符合项跟踪,系统管理员拥有最大权限,其它角色的用户只能查看跟自己相关的数据。

This commit is contained in:
wangzhijiang
2022-11-01 17:42:31 +08:00
parent a551db8911
commit 47abdbe613
3 changed files with 16 additions and 8 deletions
@@ -80,12 +80,15 @@
or prehomo_flow_task_status =#{ncrTrackVO.inconformity} or prehomo_flow_task_status =#{ncrTrackVO.track}
or verify_flow_task_status =#{ncrTrackVO.inconformity} or verify_flow_task_status =#{ncrTrackVO.track}
)
<if test="ncrTrackVO.userId != null and ncrTrackVO.userId != ''">
and (pli.regulation_owner_id =#{ncrTrackVO.userId}
or pli.homologation_engineer_id =#{ncrTrackVO.userId}
or pli.engineering_interface_person =#{ncrTrackVO.userId}
or ptid.user_id =#{ncrTrackVO.userId}
)
<!--如果当前操作人不是系统管理员角色,查询跟自己相关的数据,如果是系统管理员,查询所有的-->
<if test="ncrTrackVO.administrator == 'false'">
<if test="ncrTrackVO.userId != null and ncrTrackVO.userId != ''">
and (pli.regulation_owner_id =#{ncrTrackVO.userId}
or pli.homologation_engineer_id =#{ncrTrackVO.userId}
or pli.engineering_interface_person =#{ncrTrackVO.userId}
or ptid.user_id =#{ncrTrackVO.userId}
)
</if>
</if>
order by pli.create_time desc
@@ -80,6 +80,11 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
ncrTrackVO.setInconformity(ReviewResultEnum.INCONFORMITY.getValue());
ncrTrackVO.setTrack(ReviewResultEnum.TO_TRACK.getValue());
//如果当前登录用户是系统管理员角色,可以查看所有的数据
boolean administrator = this.sysUserService.isAdministrator();
ncrTrackVO.setAdministrator(administrator ? "true":"false");
List<NcrTrackVO> infoList = ncrTrackMapper.getInfoList(ncrTrackVO);
infoList = infoList.stream().distinct().collect(Collectors.toList());
List<NcrTrackVO> trackVOList = new ArrayList<>();
@@ -137,8 +137,8 @@ public class NcrTrackVO implements Serializable {
private String projectTaskInventoryDetailId;
//任务节点定义key
private String taskDefinitionKey;
//是否是系统管理员角色
private String administrator;