|
@@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.bpm.convert.task;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.map.MapUtil;
|
|
|
+import cn.iocoder.yudao.framework.common.core.KeyValue;
|
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
|
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
|
|
import cn.iocoder.yudao.framework.common.util.number.NumberUtils;
|
|
@@ -9,6 +10,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
|
|
import cn.iocoder.yudao.module.bpm.controller.admin.base.user.UserSimpleBaseVO;
|
|
|
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO;
|
|
|
import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO;
|
|
|
+import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionInfoDO;
|
|
|
import cn.iocoder.yudao.module.bpm.enums.task.BpmTaskStatusEnum;
|
|
|
import cn.iocoder.yudao.module.bpm.framework.flowable.core.util.FlowableUtils;
|
|
|
import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO;
|
|
@@ -41,7 +43,8 @@ public interface BpmTaskConvert {
|
|
|
|
|
|
default PageResult<BpmTaskRespVO> buildTodoTaskPage(PageResult<Task> pageResult,
|
|
|
Map<String, ProcessInstance> processInstanceMap,
|
|
|
- Map<Long, AdminUserRespDTO> userMap) {
|
|
|
+ Map<Long, AdminUserRespDTO> userMap,
|
|
|
+ Map<String, BpmProcessDefinitionInfoDO> processDefinitionInfoMap) {
|
|
|
return BeanUtils.toBean(pageResult, BpmTaskRespVO.class, taskVO -> {
|
|
|
ProcessInstance processInstance = processInstanceMap.get(taskVO.getProcessInstanceId());
|
|
|
if (processInstance == null) {
|
|
@@ -50,13 +53,17 @@ public interface BpmTaskConvert {
|
|
|
taskVO.setProcessInstance(BeanUtils.toBean(processInstance, BpmTaskRespVO.ProcessInstance.class));
|
|
|
AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId()));
|
|
|
taskVO.getProcessInstance().setStartUser(BeanUtils.toBean(startUser, UserSimpleBaseVO.class));
|
|
|
+ // 摘要
|
|
|
+ taskVO.setSummary(FlowableUtils.getSummary(processDefinitionInfoMap.get(processInstance.getProcessDefinitionId()),
|
|
|
+ processInstance.getProcessVariables()));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
default PageResult<BpmTaskRespVO> buildTaskPage(PageResult<HistoricTaskInstance> pageResult,
|
|
|
Map<String, HistoricProcessInstance> processInstanceMap,
|
|
|
Map<Long, AdminUserRespDTO> userMap,
|
|
|
- Map<Long, DeptRespDTO> deptMap) {
|
|
|
+ Map<Long, DeptRespDTO> deptMap,
|
|
|
+ Map<String, BpmProcessDefinitionInfoDO> processDefinitionInfoMap) {
|
|
|
List<BpmTaskRespVO> taskVOList = CollectionUtils.convertList(pageResult.getList(), task -> {
|
|
|
BpmTaskRespVO taskVO = BeanUtils.toBean(task, BpmTaskRespVO.class);
|
|
|
taskVO.setStatus(FlowableUtils.getTaskStatus(task)).setReason(FlowableUtils.getTaskReason(task));
|
|
@@ -72,6 +79,9 @@ public interface BpmTaskConvert {
|
|
|
AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId()));
|
|
|
taskVO.setProcessInstance(BeanUtils.toBean(processInstance, BpmTaskRespVO.ProcessInstance.class));
|
|
|
taskVO.getProcessInstance().setStartUser(BeanUtils.toBean(startUser, UserSimpleBaseVO.class));
|
|
|
+ // 摘要
|
|
|
+ taskVO.setSummary(FlowableUtils.getSummary(processDefinitionInfoMap.get(processInstance.getProcessDefinitionId()),
|
|
|
+ processInstance.getProcessVariables()));
|
|
|
}
|
|
|
return taskVO;
|
|
|
});
|