diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/controller/BgXiSpeakController.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/controller/BgXiSpeakController.java index 4ee02cd..bd686b4 100644 --- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/controller/BgXiSpeakController.java +++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/controller/BgXiSpeakController.java @@ -281,24 +281,6 @@ public class BgXiSpeakController extends JeecgController deleteSingleProcess(@RequestParam("processInstId") String processInstId) { - if (oConvertUtils.isEmpty(processInstId)) { - return Result.error("流程实例ID不能为空"); - } - if (bgXiSpeakService.deleteSingleProcess(processInstId)) { - return Result.OK("删除流程成功"); - } - return Result.error("删除流程失败"); - } - /** * 通过id删除 * diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/IBgXiSpeakService.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/IBgXiSpeakService.java index 390edfa..0ff70f6 100644 --- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/IBgXiSpeakService.java +++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/IBgXiSpeakService.java @@ -82,8 +82,6 @@ public interface IBgXiSpeakService extends IService { boolean withDrawXiSpeak(String id); - boolean deleteSingleProcess(String processInstId); - List getRootListWithDept(String pid); void checkAndMarkCompletedByProcessInstId(String processInstanceId); diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/impl/BgXiSpeakServiceImpl.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/impl/BgXiSpeakServiceImpl.java index e7ad321..6c87ef0 100644 --- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/impl/BgXiSpeakServiceImpl.java +++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/bg/xispeak/service/impl/BgXiSpeakServiceImpl.java @@ -280,30 +280,6 @@ public class BgXiSpeakServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper() - .eq(TaskTask::getProcessInstId, processInstId) - .last("for update"); - TaskTask taskTask = taskTaskServiceImpl.getOne(queryWrapper, false); - if (taskTask == null) { - log.warn("删除单个流程时未找到关联的tasktask记录, processInstId: {}", processInstId); - return false; - } - long count = runtimeService.createProcessInstanceQuery() - .processInstanceId(processInstId) - .count(); - if (count > 0) { - runtimeService.deleteProcessInstance(processInstId, "删除单个流程"); - log.info("成功中止运行中的流程实例: {}", processInstId); - } - LambdaQueryWrapper deleteWrapper = new LambdaQueryWrapper() - .eq(TaskTask::getProcessInstId, processInstId); - taskTaskServiceImpl.remove(deleteWrapper); - return true; - } - public List getRootListWithDept(String pid) { // 1. 这里的参数 pid 实际是前端传过来的部门逗号拼接字符串,将其清洗并转换为 Set diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/controller/TaskTaskController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/controller/TaskTaskController.java index ed9fb8b..82a2f6e 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/controller/TaskTaskController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/controller/TaskTaskController.java @@ -222,6 +222,25 @@ public class TaskTaskController extends JeecgController deleteSingleProcess(@RequestParam("processInstId") String processInstId) { + if (oConvertUtils.isEmpty(processInstId)) { + return Result.error("流程实例ID不能为空"); + } + if (taskTaskService.deleteSingleProcess(processInstId)) { + return Result.OK("删除流程成功"); + } + return Result.error("删除流程失败"); + } + /** * 导出excel * diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/ITaskTaskService.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/ITaskTaskService.java index 69be42c..29ee58d 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/ITaskTaskService.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/ITaskTaskService.java @@ -18,4 +18,5 @@ public interface ITaskTaskService extends IService { Result handleFlowStart(TaskTask taskTask, String username, Integer intervalType, Integer startCount)throws Exception; List getTaskTaskListByBusinessId(String businessId) throws Exception; boolean updateDeptHandlerName(String processInstanceId, String deptHandlerName); + boolean deleteSingleProcess(String processInstId); } diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/impl/TaskTaskServiceImpl.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/impl/TaskTaskServiceImpl.java index 419f1d0..9fc8278 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/impl/TaskTaskServiceImpl.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/tasktask/service/impl/TaskTaskServiceImpl.java @@ -174,4 +174,27 @@ public class TaskTaskServiceImpl extends ServiceImpl i taskTask.setDeptHandlerName(deptHandlerName); return this.updateById(taskTask); } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean deleteSingleProcess(String processInstId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .eq(TaskTask::getProcessInstId, processInstId) + .last("for update"); + TaskTask taskTask = this.getOne(queryWrapper, false); + if (taskTask == null) { + log.warn("删除单个流程时未找到关联的tasktask记录, processInstId: {}", processInstId); + return false; + } + long count = runtimeService.createProcessInstanceQuery() + .processInstanceId(processInstId) + .count(); + if (count > 0) { + runtimeService.deleteProcessInstance(processInstId, "删除单个流程"); + log.info("成功中止运行中的流程实例: {}", processInstId); + } + LambdaQueryWrapper deleteWrapper = new LambdaQueryWrapper() + .eq(TaskTask::getProcessInstId, processInstId); + return this.remove(deleteWrapper); + } }