Commit 9a9e721b50e5e570da0bb79c18cb7d5d911f4772
1 parent
56d280fd
【功能修改】工作流:流程审批详情的“流程记录”,从 timeline 改成 list table
Showing
2 changed files
with
6 additions
and
9 deletions
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/task/BpmTaskController.java
| @@ -123,18 +123,15 @@ public class BpmTaskController { | @@ -123,18 +123,15 @@ public class BpmTaskController { | ||
| 123 | } | 123 | } |
| 124 | 124 | ||
| 125 | // 拼接数据 | 125 | // 拼接数据 |
| 126 | - HistoricProcessInstance processInstance = processInstanceService.getHistoricProcessInstance(processInstanceId); | ||
| 127 | - // 获得 User 和 Dept Map | ||
| 128 | Set<Long> userIds = convertSetByFlatMap(taskList, task -> | 126 | Set<Long> userIds = convertSetByFlatMap(taskList, task -> |
| 129 | Stream.of(NumberUtils.parseLong(task.getAssignee()), NumberUtils.parseLong(task.getOwner()))); | 127 | Stream.of(NumberUtils.parseLong(task.getAssignee()), NumberUtils.parseLong(task.getOwner()))); |
| 130 | - userIds.add(NumberUtils.parseLong(processInstance.getStartUserId())); | ||
| 131 | Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds); | 128 | Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds); |
| 132 | Map<Long, DeptRespDTO> deptMap = deptApi.getDeptMap( | 129 | Map<Long, DeptRespDTO> deptMap = deptApi.getDeptMap( |
| 133 | convertSet(userMap.values(), AdminUserRespDTO::getDeptId)); | 130 | convertSet(userMap.values(), AdminUserRespDTO::getDeptId)); |
| 134 | // 获得 Form Map | 131 | // 获得 Form Map |
| 135 | Map<Long, BpmFormDO> formMap = formService.getFormMap( | 132 | Map<Long, BpmFormDO> formMap = formService.getFormMap( |
| 136 | convertSet(taskList, task -> NumberUtils.parseLong(task.getFormKey()))); | 133 | convertSet(taskList, task -> NumberUtils.parseLong(task.getFormKey()))); |
| 137 | - return success(BpmTaskConvert.INSTANCE.buildTaskListByProcessInstanceId(taskList, processInstance, | 134 | + return success(BpmTaskConvert.INSTANCE.buildTaskListByProcessInstanceId(taskList, |
| 138 | formMap, userMap, deptMap)); | 135 | formMap, userMap, deptMap)); |
| 139 | } | 136 | } |
| 140 | 137 |
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/convert/task/BpmTaskConvert.java
| @@ -9,6 +9,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | @@ -9,6 +9,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||
| 9 | import cn.iocoder.yudao.module.bpm.controller.admin.base.user.UserSimpleBaseVO; | 9 | import cn.iocoder.yudao.module.bpm.controller.admin.base.user.UserSimpleBaseVO; |
| 10 | import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO; | 10 | import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO; |
| 11 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | 11 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; |
| 12 | +import cn.iocoder.yudao.module.bpm.enums.task.BpmTaskStatusEnum; | ||
| 12 | import cn.iocoder.yudao.module.bpm.framework.flowable.core.util.FlowableUtils; | 13 | import cn.iocoder.yudao.module.bpm.framework.flowable.core.util.FlowableUtils; |
| 13 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; | 14 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; |
| 14 | import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | 15 | import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; |
| @@ -78,18 +79,17 @@ public interface BpmTaskConvert { | @@ -78,18 +79,17 @@ public interface BpmTaskConvert { | ||
| 78 | } | 79 | } |
| 79 | 80 | ||
| 80 | default List<BpmTaskRespVO> buildTaskListByProcessInstanceId(List<HistoricTaskInstance> taskList, | 81 | default List<BpmTaskRespVO> buildTaskListByProcessInstanceId(List<HistoricTaskInstance> taskList, |
| 81 | - HistoricProcessInstance processInstance, | ||
| 82 | Map<Long, BpmFormDO> formMap, | 82 | Map<Long, BpmFormDO> formMap, |
| 83 | Map<Long, AdminUserRespDTO> userMap, | 83 | Map<Long, AdminUserRespDTO> userMap, |
| 84 | Map<Long, DeptRespDTO> deptMap) { | 84 | Map<Long, DeptRespDTO> deptMap) { |
| 85 | return CollectionUtils.convertList(taskList, task -> { | 85 | return CollectionUtils.convertList(taskList, task -> { |
| 86 | + // 特殊:已取消的任务,不返回 | ||
| 86 | BpmTaskRespVO taskVO = BeanUtils.toBean(task, BpmTaskRespVO.class); | 87 | BpmTaskRespVO taskVO = BeanUtils.toBean(task, BpmTaskRespVO.class); |
| 87 | Integer taskStatus = FlowableUtils.getTaskStatus(task); | 88 | Integer taskStatus = FlowableUtils.getTaskStatus(task); |
| 89 | + if (BpmTaskStatusEnum.isCancelStatus(taskStatus)) { | ||
| 90 | + return null; | ||
| 91 | + } | ||
| 88 | taskVO.setStatus(taskStatus).setReason(FlowableUtils.getTaskReason(task)); | 92 | taskVO.setStatus(taskStatus).setReason(FlowableUtils.getTaskReason(task)); |
| 89 | - // 流程实例 | ||
| 90 | - AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); | ||
| 91 | - taskVO.setProcessInstance(BeanUtils.toBean(processInstance, BpmTaskRespVO.ProcessInstance.class)); | ||
| 92 | - taskVO.getProcessInstance().setStartUser(BeanUtils.toBean(startUser, UserSimpleBaseVO.class)); | ||
| 93 | // 表单信息 | 93 | // 表单信息 |
| 94 | BpmFormDO form = MapUtil.get(formMap, NumberUtils.parseLong(task.getFormKey()), BpmFormDO.class); | 94 | BpmFormDO form = MapUtil.get(formMap, NumberUtils.parseLong(task.getFormKey()), BpmFormDO.class); |
| 95 | if (form != null) { | 95 | if (form != null) { |