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 07a7072..4150df0 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 @@ -257,6 +257,31 @@ public class TaskTaskController extends JeecgController updateTitleAndDeadline(@RequestParam("taskId") String taskId, + @RequestParam("title") String title, + @RequestParam("requireFinishDate") String requireFinishDate) { + if (oConvertUtils.isEmpty(taskId)) { + return Result.error("任务ID不能为空"); + } + if (oConvertUtils.isEmpty(title)) { + return Result.error("标题不能为空"); + } + if (oConvertUtils.isEmpty(requireFinishDate)) { + return Result.error("要求完成日期不能为空"); + } + if (taskTaskService.updateTitleAndDeadline(taskId, title, requireFinishDate)) { + 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 fae4eaa..907ba29 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 @@ -20,4 +20,5 @@ public interface ITaskTaskService extends IService { boolean updateDeptHandlerName(String processInstanceId, String deptHandlerName); boolean deleteSingleProcess(String processInstId); boolean deletePendingTask(String taskId); + boolean updateTitleAndDeadline(String taskId, String title, String requireFinishDate); } 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 7494062..6b49eab 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 @@ -232,4 +232,34 @@ public class TaskTaskServiceImpl extends ServiceImpl i log.info("【督办-删除待发起任务】已逻辑删除待发起的任务记录, taskId: {}", taskId); return true; } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean updateTitleAndDeadline(String taskId, String title, String requireFinishDate) { + TaskTask taskTask = this.getById(taskId); + if (taskTask == null) { + log.warn("【督办-修改标题和截止时间】未找到tasktask记录, taskId: {}", taskId); + return false; + } + taskTask.setTitle(title); + taskTask.setRequireFinishDate(java.sql.Date.valueOf(requireFinishDate)); + this.updateById(taskTask); + log.info("【督办-修改标题和截止时间】已更新tasktask表, taskId: {}, title: {}, requireFinishDate: {}", taskId, title, requireFinishDate); + + if (StringUtils.isNotBlank(taskTask.getProcessInstId())) { + try { + runtimeService.setVariable(taskTask.getProcessInstId(), "title", title); + runtimeService.setVariable(taskTask.getProcessInstId(), "deadline", requireFinishDate); + String bizTitle = (String) runtimeService.getVariable(taskTask.getProcessInstId(), "bpm_biz_title"); + if (StringUtils.isNotBlank(bizTitle)) { + String suffix = bizTitle.replaceAll("^.*?(【)", "【"); + runtimeService.setVariable(taskTask.getProcessInstId(), "bpm_biz_title", title + suffix); + } + log.info("【督办-修改标题和截止时间】已更新流程变量, processInstId: {}", taskTask.getProcessInstId()); + } catch (Exception e) { + log.error("【督办-修改标题和截止时间】更新流程变量失败, processInstId: {}", taskTask.getProcessInstId(), e); + } + } + return true; + } }