From 5eeac80ea84b10b323b73dfcf1aefab666ccb0ae Mon Sep 17 00:00:00 2001 From: konbai <1527468660@qq.com> Date: Sun, 16 Oct 2022 02:40:59 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E5=B7=A5=E4=BD=9C=E6=B5=81=E6=B5=81?= =?UTF-8?q?=E7=A8=8B):=20=E6=96=B0=E5=A2=9E=E8=AF=BB=E5=8F=96xml=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=9B=BF=E6=8D=A2=E5=8E=9F?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=AE=9A=E4=B9=89=E4=B8=AD=E7=9A=84=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/workflow/WfProcessController.java | 9 +++++++++ .../ruoyi/workflow/service/IWfProcessService.java | 6 ++++++ .../service/impl/WfProcessServiceImpl.java | 14 ++++++++++++++ ruoyi-ui/src/api/workflow/process.js | 8 ++++++++ ruoyi-ui/src/views/workflow/work/index.vue | 5 ++--- 5 files changed, 39 insertions(+), 3 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/WfProcessController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/WfProcessController.java index 3e748550..e495446b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/WfProcessController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/workflow/WfProcessController.java @@ -73,6 +73,15 @@ public class WfProcessController extends BaseController { } + /** + * 读取xml文件 + * @param processDefId 流程定义ID + */ + @GetMapping("/bpmnXml/{processDefId}") + public R getBpmnXml(@PathVariable(value = "processDefId") String processDefId) { + return R.ok(null, processService.queryBpmnXmlById(processDefId)); + } + /** * 查询流程详情信息 * diff --git a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IWfProcessService.java b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IWfProcessService.java index 677700ff..feb4492d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IWfProcessService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/IWfProcessService.java @@ -43,6 +43,12 @@ public interface IWfProcessService { */ void startProcessByDefKey(String procDefKey, Map variables); + /** + * 读取xml文件 + * @param processDefId 流程定义ID + */ + String queryBpmnXmlById(String processDefId); + /** * 查询流程任务详情信息 * @param procInsId 流程实例ID diff --git a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/WfProcessServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/WfProcessServiceImpl.java index 874f530a..c724f4f1 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/WfProcessServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/workflow/service/impl/WfProcessServiceImpl.java @@ -189,6 +189,20 @@ public class WfProcessServiceImpl extends FlowServiceFactory implements IWfProce } } + /** + * 读取xml文件 + * @param processDefId 流程定义ID + */ + @Override + public String queryBpmnXmlById(String processDefId) { + InputStream inputStream = repositoryService.getProcessModel(processDefId); + try { + return IoUtil.readUtf8(inputStream); + } catch (IORuntimeException exception) { + throw new RuntimeException("加载xml文件异常"); + } + } + /** * 流程详情信息 * diff --git a/ruoyi-ui/src/api/workflow/process.js b/ruoyi-ui/src/api/workflow/process.js index 63dded4e..09c207bb 100644 --- a/ruoyi-ui/src/api/workflow/process.js +++ b/ruoyi-ui/src/api/workflow/process.js @@ -27,6 +27,14 @@ export function startProcess(processDefId, data) { }) } +// 获取流程图 +export function getBpmnXml(processDefId) { + return request({ + url: '/workflow/process/bpmnXml/' + processDefId, + method: 'get' + }) +} + export function detailProcess(query) { return request({ url: '/workflow/process/detail', diff --git a/ruoyi-ui/src/views/workflow/work/index.vue b/ruoyi-ui/src/views/workflow/work/index.vue index 3d1b17bf..e9066f41 100644 --- a/ruoyi-ui/src/views/workflow/work/index.vue +++ b/ruoyi-ui/src/views/workflow/work/index.vue @@ -77,9 +77,8 @@