mirror of
http://git.pig4cloud.com/pig/pigx.git
synced 2026-11-08 12:39:05 +08:00
feat(flow): 新增流程实例详情接口并优化代码格式
- 增加查询流程实例记录的远程接口 - 统一和优化部分代码缩进与注释描述 - 修正“查询挖矿任务”为“查询我的任务”中文注释
This commit is contained in:
1 parent
a5abaa4d2c
commit
1700648c2e
4 files changed
+138
-113
No files matched your search
+95
-74
@@ -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<List<String>> queryUserIdListByRoleIdList(@RequestBody List<String> roleIdList);
|
||||
/**
|
||||
* 根据角色id集合查询用户id集合
|
||||
*
|
||||
* @param roleIdList
|
||||
*/
|
||||
@PostMapping("/remote/queryUserIdListByRoleIdList")
|
||||
R<List<String>> queryUserIdListByRoleIdList(@RequestBody List<String> roleIdList);
|
||||
|
||||
/**
|
||||
* 根据部门id集合查询所有的用户id集合
|
||||
* @param deptIdList
|
||||
*/
|
||||
@PostMapping("/remote/queryUserIdListByDepIdList")
|
||||
R<List<String>> queryUserIdListByDepIdList(@RequestBody List<String> deptIdList);
|
||||
/**
|
||||
* 根据部门id集合查询所有的用户id集合
|
||||
*
|
||||
* @param deptIdList
|
||||
*/
|
||||
@PostMapping("/remote/queryUserIdListByDepIdList")
|
||||
R<List<String>> queryUserIdListByDepIdList(@RequestBody List<String> deptIdList);
|
||||
|
||||
/**
|
||||
* 查询流程管理员
|
||||
* @param flowId 流程id
|
||||
*/
|
||||
@GetMapping("/remote/queryProcessAdmin")
|
||||
R<Long> queryProcessAdmin(@RequestParam("flowId") String flowId);
|
||||
/**
|
||||
* 查询流程管理员
|
||||
*
|
||||
* @param flowId 流程id
|
||||
*/
|
||||
@GetMapping("/remote/queryProcessAdmin")
|
||||
R<Long> queryProcessAdmin(@RequestParam("flowId") String flowId);
|
||||
|
||||
/**
|
||||
* 查询节点数据
|
||||
* @param flowId 流程id
|
||||
* @param nodeId 节点id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/processNodeData/getNodeData")
|
||||
R<Node> queryNodeOriData(@RequestParam("flowId") String flowId, @RequestParam("nodeId") String nodeId);
|
||||
/**
|
||||
* 查询节点数据
|
||||
*
|
||||
* @param flowId 流程id
|
||||
* @param nodeId 节点id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/processNodeData/getNodeData")
|
||||
R<Node> 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);
|
||||
}
|
||||
+2
@@ -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 {
|
||||
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ public class ProcessInstanceController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询挖矿任务
|
||||
* 查询我的任务
|
||||
*
|
||||
* @param queryParamDto Query param DTO
|
||||
* @return {@link R }
|
||||
|
||||
+40
-38
@@ -86,52 +86,52 @@ public class ProcessInstanceServiceImpl implements IProcessInstanceService {
|
||||
@Override
|
||||
public R queryMineTask(TaskQueryParamDto taskQueryParamDto) {
|
||||
taskQueryParamDto.setAssign(SecurityUtils.getUser().getId().toString());
|
||||
R<Page<TaskDto>> r = flowEngineService.queryAssignTask(taskQueryParamDto);
|
||||
R<Page<TaskDto>> r = flowEngineService.queryAssignTask(taskQueryParamDto);
|
||||
|
||||
if (CollUtil.isEmpty(r.getData().getRecords())) {
|
||||
return r;
|
||||
}
|
||||
if (CollUtil.isEmpty(r.getData().getRecords())) {
|
||||
return r;
|
||||
}
|
||||
|
||||
Set<String> processInstanceIdSet = r.getData()
|
||||
.getRecords()
|
||||
.stream()
|
||||
.map(TaskDto::getProcessInstanceId)
|
||||
.collect(Collectors.toSet());
|
||||
Set<String> processInstanceIdSet = r.getData()
|
||||
.getRecords()
|
||||
.stream()
|
||||
.map(TaskDto::getProcessInstanceId)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
// 流程实例记录
|
||||
List<ProcessInstanceRecord> processInstanceRecordList = processInstanceRecordService.lambdaQuery()
|
||||
.in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet)
|
||||
.list();
|
||||
|
||||
// 发起人
|
||||
// 发起人
|
||||
// 发起人
|
||||
List<Long> collect = processInstanceRecordList.stream().map(ProcessInstanceRecord::getUserId).collect(Collectors.toList());
|
||||
List<SysUser> startUserList = userService.getUserById(collect).getData();
|
||||
|
||||
Page<TaskDto> pageResultDto = r.getData();
|
||||
List<TaskDto> 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<TaskDto> pageResultDto = r.getData();
|
||||
List<TaskDto> 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<ProcessInstanceRecord> processInstanceRecordList = processInstanceRecordService.lambdaQuery()
|
||||
.in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet)
|
||||
.list();
|
||||
// 流程实例记录
|
||||
List<ProcessInstanceRecord> processInstanceRecordList = processInstanceRecordService.lambdaQuery()
|
||||
.in(ProcessInstanceRecord::getProcessInstanceId, processInstanceIdSet)
|
||||
.list();
|
||||
|
||||
// 发起人
|
||||
List<Long> 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);
|
||||
|
||||
Reference in new issue
Block a user