Commit 9bbeb93b2e8f6a3baf4fd883199e9f3db8d6b99f
1 parent
3c3f46ee
fix:[工作流] 返回对应实例的流程图
Showing
3 changed files
with
13 additions
and
8 deletions
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/workflow/TaskController.java
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/workflow/TaskService.java
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/workflow/impl/TaskServiceImpl.java
| ... | ... | @@ -23,6 +23,7 @@ import org.activiti.engine.RepositoryService; |
| 23 | 23 | import org.activiti.engine.RuntimeService; |
| 24 | 24 | import org.activiti.engine.history.HistoricActivityInstance; |
| 25 | 25 | import org.activiti.engine.history.HistoricProcessInstance; |
| 26 | +import org.activiti.engine.history.HistoricTaskInstance; | |
| 26 | 27 | import org.activiti.engine.repository.ProcessDefinition; |
| 27 | 28 | import org.activiti.engine.runtime.ProcessInstance; |
| 28 | 29 | import org.activiti.engine.task.Comment; |
| ... | ... | @@ -34,7 +35,9 @@ import org.springframework.util.CollectionUtils; |
| 34 | 35 | |
| 35 | 36 | |
| 36 | 37 | import javax.annotation.Resource; |
| 38 | +import javax.imageio.ImageIO; | |
| 37 | 39 | import javax.servlet.http.HttpServletResponse; |
| 40 | +import java.awt.image.BufferedImage; | |
| 38 | 41 | import java.io.IOException; |
| 39 | 42 | import java.io.InputStream; |
| 40 | 43 | import java.net.URLEncoder; |
| ... | ... | @@ -225,28 +228,28 @@ public class TaskServiceImpl implements TaskService { |
| 225 | 228 | |
| 226 | 229 | |
| 227 | 230 | @Override |
| 228 | - public void getHighlightImg(String processDefinitionId, HttpServletResponse response) { | |
| 231 | + public void getHighlightImg(String processInstanceId, HttpServletResponse response) { | |
| 229 | 232 | // 查询历史 |
| 230 | - HistoricProcessInstance hpi = historyService.createHistoricProcessInstanceQuery().processInstanceId(processDefinitionId).singleResult(); | |
| 233 | + HistoricProcessInstance hpi = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); | |
| 231 | 234 | // 如果有结束时间 |
| 232 | 235 | if (hpi == null) { |
| 233 | 236 | return; |
| 234 | 237 | } |
| 235 | 238 | // 没有结束时间。说明流程在执行过程中 |
| 236 | - ProcessInstance pi = runtimeService.createProcessInstanceQuery().processInstanceId(processDefinitionId).singleResult(); | |
| 239 | + ProcessInstance pi = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); | |
| 237 | 240 | BpmnModel bpmnModel = repositoryService.getBpmnModel(pi.getProcessDefinitionId()); |
| 238 | 241 | List<String> highLightedActivities = new ArrayList<>(); |
| 239 | 242 | |
| 240 | - List<HistoricActivityInstance> historicActivityInstances = historyService.createHistoricActivityInstanceQuery().processInstanceId(processDefinitionId) | |
| 243 | + List<HistoricActivityInstance> historicActivityInstances = historyService.createHistoricActivityInstanceQuery().processInstanceId(processInstanceId) | |
| 241 | 244 | .orderByHistoricActivityInstanceId().asc().list(); |
| 242 | 245 | // 获取所有活动节点 |
| 243 | 246 | List<HistoricActivityInstance> finishedInstances = historyService.createHistoricActivityInstanceQuery() |
| 244 | - .processInstanceId(processDefinitionId).finished().list(); | |
| 247 | + .processInstanceId(processInstanceId).finished().list(); | |
| 245 | 248 | for (HistoricActivityInstance hai : finishedInstances) { |
| 246 | 249 | highLightedActivities.add(hai.getActivityId()); |
| 247 | 250 | } |
| 248 | 251 | // 已完成的节点+当前节点 |
| 249 | - highLightedActivities.addAll(runtimeService.getActiveActivityIds(processDefinitionId)); | |
| 252 | + highLightedActivities.addAll(runtimeService.getActiveActivityIds(processInstanceId)); | |
| 250 | 253 | |
| 251 | 254 | // 经过的流 |
| 252 | 255 | List<String> highLightedFlowIds = getHighLightedFlows(bpmnModel, historicActivityInstances); |
| ... | ... | @@ -264,6 +267,7 @@ public class TaskServiceImpl implements TaskService { |
| 264 | 267 | } |
| 265 | 268 | |
| 266 | 269 | private void responseImage(HttpServletResponse response, InputStream inputStream, String picName) throws IOException { |
| 270 | + BufferedImage src = ImageIO.read(inputStream); | |
| 267 | 271 | response.setContentType("application/octet-stream;charset=UTF-8"); |
| 268 | 272 | response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(picName, "UTF-8")); |
| 269 | 273 | byte[] b = new byte[1024]; | ... | ... |