diff --git a/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/api/feign/RemoteFlowTaskService.java b/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/api/feign/RemoteFlowTaskService.java index caf7aadfc..7f89b55d3 100644 --- a/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/api/feign/RemoteFlowTaskService.java +++ b/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/api/feign/RemoteFlowTaskService.java @@ -18,90 +18,111 @@ import java.util.List; @FeignClient(contextId = "remoteFlowTaskService", value = ServiceNameConstants.FLOW_TASK_SERVER) public interface RemoteFlowTaskService { - /** - * 节点开始事件 - * @param nodeRecordParamDto - */ - @PostMapping("/remote/startNodeEvent") - void startNodeEvent(@RequestBody ProcessNodeRecordParamDto nodeRecordParamDto); + /** + * 节点开始事件 + * + * @param nodeRecordParamDto + */ + @PostMapping("/remote/startNodeEvent") + void startNodeEvent(@RequestBody ProcessNodeRecordParamDto nodeRecordParamDto); - /** - * 节点结束事件 - * @param nodeRecordParamDto - */ - @PostMapping("/remote/endNodeEvent") - void endNodeEvent(@RequestBody ProcessNodeRecordParamDto nodeRecordParamDto); + /** + * 节点结束事件 + * + * @param nodeRecordParamDto + */ + @PostMapping("/remote/endNodeEvent") + void endNodeEvent(@RequestBody ProcessNodeRecordParamDto nodeRecordParamDto); - /** - * 流程结束事件 - * @param processInstanceParamDto - */ - @PostMapping("/remote/endProcess") - void endProcessEvent(@RequestBody ProcessInstanceParamDto processInstanceParamDto); + /** + * 流程结束事件 + * + * @param processInstanceParamDto + */ + @PostMapping("/remote/endProcess") + void endProcessEvent(@RequestBody ProcessInstanceParamDto processInstanceParamDto); - /** - * 创建流程事件 - * @param processInstanceRecordParamDto - */ - @PostMapping("/remote/createProcessEvent") - void createProcessEvent(@RequestBody ProcessInstanceRecordParamDto processInstanceRecordParamDto); + /** + * 创建流程事件 + * + * @param processInstanceRecordParamDto + */ + @PostMapping("/remote/createProcessEvent") + void createProcessEvent(@RequestBody ProcessInstanceRecordParamDto processInstanceRecordParamDto); - /** - * 根据角色id集合查询用户id集合 - * @param roleIdList - */ - @PostMapping("/remote/queryUserIdListByRoleIdList") - R> queryUserIdListByRoleIdList(@RequestBody List roleIdList); + /** + * 根据角色id集合查询用户id集合 + * + * @param roleIdList + */ + @PostMapping("/remote/queryUserIdListByRoleIdList") + R> queryUserIdListByRoleIdList(@RequestBody List roleIdList); - /** - * 根据部门id集合查询所有的用户id集合 - * @param deptIdList - */ - @PostMapping("/remote/queryUserIdListByDepIdList") - R> queryUserIdListByDepIdList(@RequestBody List deptIdList); + /** + * 根据部门id集合查询所有的用户id集合 + * + * @param deptIdList + */ + @PostMapping("/remote/queryUserIdListByDepIdList") + R> queryUserIdListByDepIdList(@RequestBody List deptIdList); - /** - * 查询流程管理员 - * @param flowId 流程id - */ - @GetMapping("/remote/queryProcessAdmin") - R queryProcessAdmin(@RequestParam("flowId") String flowId); + /** + * 查询流程管理员 + * + * @param flowId 流程id + */ + @GetMapping("/remote/queryProcessAdmin") + R queryProcessAdmin(@RequestParam("flowId") String flowId); - /** - * 查询节点数据 - * @param flowId 流程id - * @param nodeId 节点id - * @return - */ - @GetMapping("/processNodeData/getNodeData") - R queryNodeOriData(@RequestParam("flowId") String flowId, @RequestParam("nodeId") String nodeId); + /** + * 查询节点数据 + * + * @param flowId 流程id + * @param nodeId 节点id + * @return + */ + @GetMapping("/processNodeData/getNodeData") + R queryNodeOriData(@RequestParam("flowId") String flowId, @RequestParam("nodeId") String nodeId); - /** - * 节点开始指派用户了 - * @param processNodeRecordAssignUserParamDto - */ - @PostMapping("/remote/startAssignUser") - R startAssignUser(@RequestBody ProcessNodeRecordAssignUserParamDto processNodeRecordAssignUserParamDto); + /** + * 节点开始指派用户了 + * + * @param processNodeRecordAssignUserParamDto + */ + @PostMapping("/remote/startAssignUser") + R startAssignUser(@RequestBody ProcessNodeRecordAssignUserParamDto processNodeRecordAssignUserParamDto); - /** - * 任务结束事件 - * @param processNodeRecordAssignUserParamDto - */ - @PostMapping("/remote/taskEndEvent") - R taskEndEvent(@RequestBody ProcessNodeRecordAssignUserParamDto processNodeRecordAssignUserParamDto); + /** + * 任务结束事件 + * + * @param processNodeRecordAssignUserParamDto + */ + @PostMapping("/remote/taskEndEvent") + R taskEndEvent(@RequestBody ProcessNodeRecordAssignUserParamDto processNodeRecordAssignUserParamDto); - /** - * 保存抄送数据 - * @param processCopyDto - */ - @PostMapping("/remote/savecc") - R saveCC(@RequestBody ProcessCopyDto processCopyDto); + /** + * 保存抄送数据 + * + * @param processCopyDto + */ + @PostMapping("/remote/savecc") + R saveCC(@RequestBody ProcessCopyDto processCopyDto); - /** - * 保存节点原始数据 - * @param processNodeDataDto - */ - @PostMapping("/processNodeData/saveNodeData") - R saveNodeOriData(@RequestBody ProcessNodeDataDto processNodeDataDto); + /** + * 保存节点原始数据 + * + * @param processNodeDataDto + */ + @PostMapping("/processNodeData/saveNodeData") + R saveNodeOriData(@RequestBody ProcessNodeDataDto processNodeDataDto); + + /** + * 查询流程实例记录 + * + * @param processInstanceId 过程实例id + * @return {@link R } + */ + @GetMapping("/process-instance/detail") + R queryProcessInstanceRecord(@RequestParam String processInstanceId); } diff --git a/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/entity/ProcessInstanceRecord.java b/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/entity/ProcessInstanceRecord.java index 23b9fa788..7aa3fb935 100644 --- a/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/entity/ProcessInstanceRecord.java +++ b/pigx-flow/pigx-flow-task/pigx-flow-task-api/src/main/java/com/pig4cloud/pigx/flow/task/entity/ProcessInstanceRecord.java @@ -5,6 +5,7 @@ import com.pig4cloud.pigx.common.core.util.TenantTable; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; +import lombok.experimental.FieldNameConstants; import java.time.LocalDateTime; import java.util.Date; @@ -21,6 +22,7 @@ import java.util.Date; @Setter @TenantTable @Accessors(chain = true) +@FieldNameConstants @TableName("process_instance_record") public class ProcessInstanceRecord { diff --git a/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/controller/ProcessInstanceController.java b/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/controller/ProcessInstanceController.java index 0509022c0..a9cf63a5a 100644 --- a/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/controller/ProcessInstanceController.java +++ b/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/controller/ProcessInstanceController.java @@ -31,7 +31,7 @@ public class ProcessInstanceController { } /** - * 查询挖矿任务 + * 查询我的任务 * * @param queryParamDto Query param DTO * @return {@link R } diff --git a/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/service/impl/ProcessInstanceServiceImpl.java b/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/service/impl/ProcessInstanceServiceImpl.java index 209c8f8dc..821a6cea1 100644 --- a/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/service/impl/ProcessInstanceServiceImpl.java +++ b/pigx-flow/pigx-flow-task/pigx-flow-task-biz/src/main/java/com/pig4cloud/pigx/flow/task/service/impl/ProcessInstanceServiceImpl.java @@ -86,52 +86,52 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService { @Override public R queryMineTask(TaskQueryParamDto taskQueryParamDto) { taskQueryParamDto.setAssign(SecurityUtils.getUser().getId().toString()); - R> r = flowEngineService.queryAssignTask(taskQueryParamDto); + R> r = flowEngineService.queryAssignTask(taskQueryParamDto); - if (CollUtil.isEmpty(r.getData().getRecords())) { - return r; - } + if (CollUtil.isEmpty(r.getData().getRecords())) { + return r; + } - Set processInstanceIdSet = r.getData() - .getRecords() - .stream() - .map(TaskDto::getProcessInstanceId) - .collect(Collectors.toSet()); + Set processInstanceIdSet = r.getData() + .getRecords() + .stream() + .map(TaskDto::getProcessInstanceId) + .collect(Collectors.toSet()); // 流程实例记录 List processInstanceRecordList = processInstanceRecordService.lambdaQuery() .in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet) .list(); - // 发起人 + // 发起人 // 发起人 List collect = processInstanceRecordList.stream().map(ProcessInstanceRecord::getUserId).collect(Collectors.toList()); List startUserList = userService.getUserById(collect).getData(); - Page pageResultDto = r.getData(); - List taskDtoList = new ArrayList<>(); - for (TaskDto record : r.getData().getRecords()) { - ProcessInstanceRecord processInstanceRecord = processInstanceRecordList.stream() - .filter(w -> StrUtil.equals(w.getProcessInstanceId(), record.getProcessInstanceId())) - .findAny() - .orElse(null); + Page pageResultDto = r.getData(); + List taskDtoList = new ArrayList<>(); + for (TaskDto record : r.getData().getRecords()) { + ProcessInstanceRecord processInstanceRecord = processInstanceRecordList.stream() + .filter(w -> StrUtil.equals(w.getProcessInstanceId(), record.getProcessInstanceId())) + .findAny() + .orElse(null); - if (processInstanceRecord != null) { - record.setProcessName(processInstanceRecord.getName()); - SysUser startUser = startUserList.stream() - .filter(w -> w.getUserId().longValue() == processInstanceRecord.getUserId()) - .findAny() - .orElse(null); + if (processInstanceRecord != null) { + record.setProcessName(processInstanceRecord.getName()); + SysUser startUser = startUserList.stream() + .filter(w -> w.getUserId().longValue() == processInstanceRecord.getUserId()) + .findAny() + .orElse(null); - record.setRootUserId(processInstanceRecord.getUserId()); - record.setGroupName(processInstanceRecord.getGroupName()); - record.setRootUserName(startUser.getUsername()); - record.setRootUserAvatarUrl(startUser.getAvatar()); - record.setStartTime(processInstanceRecord.getCreateTime()); + record.setRootUserId(processInstanceRecord.getUserId()); + record.setGroupName(processInstanceRecord.getGroupName()); + record.setRootUserName(startUser.getUsername()); + record.setRootUserAvatarUrl(startUser.getAvatar()); + record.setStartTime(processInstanceRecord.getCreateTime()); - taskDtoList.add(record); - } - } + taskDtoList.add(record); + } + } pageResultDto.setRecords(taskDtoList); @@ -160,10 +160,10 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService { .map(TaskDto::getProcessInstanceId) .collect(Collectors.toSet()); - // 流程实例记录 - List processInstanceRecordList = processInstanceRecordService.lambdaQuery() - .in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet) - .list(); + // 流程实例记录 + List processInstanceRecordList = processInstanceRecordService.lambdaQuery() + .in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet) + .list(); // 发起人 List collect = processInstanceRecordList.stream().map(ProcessInstanceRecord::getUserId).collect(Collectors.toList()); @@ -196,9 +196,9 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService { } } - pageResultDto.setRecords(taskDtoList); + pageResultDto.setRecords(taskDtoList); - return R.ok(pageResultDto); + return R.ok(pageResultDto); } /** @@ -385,10 +385,12 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService { Dict set = Dict.create() - .set("processInstanceId", processInstanceId) + .set(ProcessInstanceRecord.Fields.processInstanceId, processInstanceId) + .set(ProcessInstanceRecord.Fields.status, processInstanceRecord.getStatus()) .set("process", oaForms.getProcess()) .set("formItems", oaForms.getFormItems()) .set("formData", formData) + .set("formData", formData) .set("formPerms", formPerms1); return R.ok(set);