From 5c1b8a7d78f1b88e05bba71c6e2cca2bc0167297 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=BB=B4=E4=BC=9F?= Date: Sat, 7 Oct 2023 19:25:54 +0800 Subject: [PATCH] rollback mock --- .../DataPermissionController.java | 51 +++++++++---------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/dataPermission/DataPermissionController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/dataPermission/DataPermissionController.java index 34df3af8..f3ce7f4e 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/dataPermission/DataPermissionController.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/dataPermission/DataPermissionController.java @@ -39,33 +39,30 @@ public class DataPermissionController implements DataPermissionApi { .isReadable(false) .isUpdatable(false) .build(); - // TODO mock - result.setIsReadable(true); - result.setIsUpdatable(true); + List taskListFlatByProcessInstanceId = RpcExternalUtil.rpcProcessor(() -> processTaskApi.getTaskListFlatByProcessInstanceId(req.getProcessInstanceId(), req.getWorkspaceId()),"根据流程id查询审核任务",req); + // 获取流程实例信息,获取流程发起人身份id + BpmnProcessInstanceQueryDTO getProcessInstanceReq = new BpmnProcessInstanceQueryDTO(); + getProcessInstanceReq.setProcessInstanceId(req.getProcessInstanceId()); + getProcessInstanceReq.setTenantId(req.getWorkspaceId()); + getProcessInstanceReq.setHasVariable(true); + BpmnProcessInstanceVO processInstanceVO = RpcExternalUtil.rpcProcessor(() -> processInstanceApi.getProcessInstanceVO(getProcessInstanceReq), "根据流程id查询流程实例,获取流程发起人身份id", getProcessInstanceReq); + String starterIdentityId = ""; + if (processInstanceVO != null && processInstanceVO.getInitiator() != null && StringUtils.isNotBlank(processInstanceVO.getInitiator().getAssignee())) { + starterIdentityId = processInstanceVO.getInitiator().getAssignee(); + } + // 判断当前用户是否在审核任务中 + if (CollectionUtils.isEmpty(taskListFlatByProcessInstanceId) && StringUtils.isBlank(starterIdentityId)) { + return ApiResult.ok(result); + } + // 如果当前用户在流程任务中则允许查看 + if (String.valueOf(req.getIdentityId()).equals(starterIdentityId) || + taskListFlatByProcessInstanceId.stream().map(BpmnHistoricTaskInstanceVO::getAssignee).collect(Collectors.toList()).contains(String.valueOf(req.getIdentityId()))) { + result.setIsReadable(true); + } + // 如果当前用户在未结束的审核任务中则允许编辑 + if (taskListFlatByProcessInstanceId.stream().filter(e -> e.getEndTime() == null).map(BpmnHistoricTaskInstanceVO::getAssignee).collect(Collectors.toList()).contains(String.valueOf(req.getIdentityId()))) { + result.setIsUpdatable(true); + } return ApiResult.ok(result); -// List taskListFlatByProcessInstanceId = RpcExternalUtil.rpcProcessor(() -> processTaskApi.getTaskListFlatByProcessInstanceId(req.getProcessInstanceId(), req.getWorkspaceId()),"根据流程id查询审核任务",req); -// // 获取流程实例信息,获取流程发起人身份id -// BpmnProcessInstanceQueryDTO getProcessInstanceReq = new BpmnProcessInstanceQueryDTO(); -// getProcessInstanceReq.setProcessInstanceId(req.getProcessInstanceId()); -// getProcessInstanceReq.setTenantId(req.getWorkspaceId()); -// BpmnProcessInstanceVO processInstanceVO = RpcExternalUtil.rpcProcessor(() -> processInstanceApi.getProcessInstanceVO(getProcessInstanceReq), "根据流程id查询流程实例,获取流程发起人身份id", getProcessInstanceReq); -// String starterIdentityId = ""; -// if (processInstanceVO != null && processInstanceVO.getInitiator() != null && StringUtils.isNotBlank(processInstanceVO.getInitiator().getAssignee())) { -// starterIdentityId = processInstanceVO.getInitiator().getAssignee(); -// } -// // 判断当前用户是否在审核任务中 -// if (CollectionUtils.isEmpty(taskListFlatByProcessInstanceId) && StringUtils.isBlank(starterIdentityId)) { -// return ApiResult.ok(result); -// } -// // 如果当前用户在流程任务中则允许查看 -// if (String.valueOf(req.getIdentityId()).equals(starterIdentityId) || -// taskListFlatByProcessInstanceId.stream().map(BpmnHistoricTaskInstanceVO::getAssignee).collect(Collectors.toList()).contains(String.valueOf(req.getIdentityId()))) { -// result.setIsReadable(true); -// } -// // 如果当前用户在未结束的审核任务中则允许编辑 -// if (taskListFlatByProcessInstanceId.stream().filter(e -> e.getEndTime() == null).map(BpmnHistoricTaskInstanceVO::getAssignee).collect(Collectors.toList()).contains(String.valueOf(req.getIdentityId()))) { -// result.setIsUpdatable(true); -// } -// return ApiResult.ok(result); } }