From ccb933362251344091a3881a4950dcab33c5008f Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期六, 28 三月 2020 11:47:55 +0800 Subject: [PATCH] no message --- src/main/java/com/highdatas/mdm/service/act/impl/RepositoryServiceImpl.java | 35 +++++++++++++++++++++++++++++++++-- 1 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/service/act/impl/RepositoryServiceImpl.java b/src/main/java/com/highdatas/mdm/service/act/impl/RepositoryServiceImpl.java index 9396e88..900f844 100644 --- a/src/main/java/com/highdatas/mdm/service/act/impl/RepositoryServiceImpl.java +++ b/src/main/java/com/highdatas/mdm/service/act/impl/RepositoryServiceImpl.java @@ -6,6 +6,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; import com.highdatas.mdm.pojo.Result; +import com.highdatas.mdm.process.canvas.ProcessDiagramGenerator; import com.highdatas.mdm.util.WorkflowUtils; import lombok.extern.slf4j.Slf4j; import org.activiti.bpmn.converter.BpmnXMLConverter; @@ -14,6 +15,7 @@ import org.activiti.editor.constants.ModelDataJsonConstants; import org.activiti.editor.language.json.converter.BpmnJsonConverter; import org.activiti.engine.ActivitiException; +import org.activiti.engine.HistoryService; import org.activiti.engine.RepositoryService; import org.activiti.engine.repository.Deployment; import org.activiti.engine.repository.Model; @@ -32,7 +34,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import org.springframework.util.ClassUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -51,6 +52,9 @@ private static final String MODEL_DESCRIPTION = "description"; @Autowired RepositoryService service; + @Autowired + HistoryService historyService; + @Autowired ObjectMapper objectMapper; @Value("${img.url}") @@ -71,7 +75,34 @@ response.flushBuffer(); } - public boolean updateProcessDefStatus(String type, String modelId) { + @Override + public InputStream getModelImg(String modelId) { + InputStream resource = null; + try{ + Model model = service.createModelQuery().modelId(modelId).singleResult(); + JsonNode editorNode = new ObjectMapper().readTree(service.getModelEditorSource(model.getId())); + BpmnJsonConverter jsonConverter = new BpmnJsonConverter(); + BpmnModel bpmnModel = jsonConverter.convertToBpmnModel(editorNode); + ProcessDiagramGenerator diagramGenerator = new ProcessDiagramGenerator(); + resource = diagramGenerator.generateDiagram(bpmnModel, "png",null,null, "瀹嬩綋","瀹嬩綋" ,null, null,0); + return resource; + } + catch (Exception e) { + e.printStackTrace(); + return null; + } + finally { + if (resource != null) { + try { + resource.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + public boolean updateProcessDefStatus(String type, String modelId) { Model model = service.createModelQuery().modelId(modelId).singleResult(); ProcessDefinition processDefinition = service.createProcessDefinitionQuery().deploymentId(model.getDeploymentId()).singleResult(); String processDefinitionId = processDefinition.getId(); -- Gitblit v1.8.0