From 70538320c84df0a20b4da63b03a3f821180d80b3 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Fri, 17 Jan 2025 19:29:07 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=8A=9F=E8=83=BD=E8=AF=84=E5=AE=A1?= =?UTF-8?q?=E3=80=91Bpm=EF=BC=9A=E6=B8=85=E7=90=86=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bpm/controller/admin/definition/BpmModelController.java | 2 +- .../yudao/module/bpm/service/definition/BpmModelService.java | 2 +- .../module/bpm/service/definition/BpmModelServiceImpl.java | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/definition/BpmModelController.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/definition/BpmModelController.java index 8d23d4c93e..6483ee0e39 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/definition/BpmModelController.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/definition/BpmModelController.java @@ -164,7 +164,7 @@ public class BpmModelController { @DeleteMapping("/clean") @Operation(summary = "清理模型") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('bpm:model:delete')") + @PreAuthorize("@ss.hasPermission('bpm:model:clean')") public CommonResult cleanModel(@RequestParam("id") String id) { modelService.cleanModel(getLoginUserId(), id); return success(true); diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelService.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelService.java index 3ccba5e613..5601bcda31 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelService.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelService.java @@ -89,7 +89,7 @@ public interface BpmModelService { void deleteModel(Long userId, String id); /** - * 清理模型 + * 清理模型,包括流程实例 * * @param userId 用户编号 * @param id 编号 diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelServiceImpl.java index 85f849c5a7..a8cc55ed91 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmModelServiceImpl.java @@ -262,7 +262,8 @@ public class BpmModelServiceImpl implements BpmModelService { Model model = validateModelManager(id, userId); // 2. 清理所有流程数据 - // TODO @芋艿:这里没有找到批量操作的方法,会不会有性能问题~ + // TODO @芋艿:这里没有找到批量操作的方法,会不会有性能问题~; + // TODO @lesan:建议按照顺序?1)List processInstances 循环处理;然后删除删除一个示实例,接着删除它的 history; // 2.1 先取消所有正在运行的流程 List processInstances = runtimeService.createProcessInstanceQuery() .processDefinitionKey(model.getKey()).list(); @@ -276,6 +277,8 @@ public class BpmModelServiceImpl implements BpmModelService { historicProcessInstances.forEach(historicProcessInstance -> { historyService.deleteHistoricProcessInstance(historicProcessInstance.getId()); }); + // TODO @lesan:流程任务,是不是也要清理哈? + // TODO @lesan:抄送是不是也要清理; } @Override