diff --git a/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java b/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java index 319e3c23..a3b50347 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/config/shiro/ShiroConfig.java @@ -170,6 +170,7 @@ public class ShiroConfig { filterChainDefinitionMap.put("/srms/syncPartData", "anon"); // PDM获取零部件号绑定的法规数据 filterChainDefinitionMap.put("/srms/bindPartStandardInfo", "anon"); + filterChainDefinitionMap.put("/oldSystem/sendDoneTask", "anon"); // 添加自己的过滤器并且取名为jwt Map filterMap = new HashMap<>(1); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/controller/OldSystemController.java b/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/controller/OldSystemController.java index 6960b40d..cba380c5 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/controller/OldSystemController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/controller/OldSystemController.java @@ -225,5 +225,13 @@ public class OldSystemController { return Result.OK(oldSystemDeptRelationService.gbSplitStatusDataFix()); } - + @GetMapping("/sendDoneTask") + @AutoLog(value = "老法规系统-重新发送指定日期内的所有已办") + @ApiOperation(value="老法规系统-重新发送指定日期内的所有已办", notes="老法规系统-重新发送指定日期内的所有已办") + @ApiOperationSupport(order = 100) + public Result sendDoneTask(@RequestParam(value = "endTime", required = false) String endTime, + @RequestParam(value = "taskId", required = false) String taskId, + @RequestParam(value = "id", required = false) String id) { + return Result.OK(oldSystemDeptRelationService.sendDoneTask(endTime, taskId, id)); + } } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/service/OldSystemDepartRelationService.java b/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/service/OldSystemDepartRelationService.java index 5ff8e7f1..8b249792 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/service/OldSystemDepartRelationService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/oldSystem/service/OldSystemDepartRelationService.java @@ -26,4 +26,6 @@ public interface OldSystemDepartRelationService extends IService errImportList = new ArrayList<>(); @@ -413,6 +430,41 @@ public class OldSystemDepartRelationServiceImpl extends ServiceImpl recordWrapper = new LambdaQueryWrapper<>(); + recordWrapper.eq(ProcessApprovalRecord::getFinishFlag, 2); +// recordWrapper.ge(ProcessApprovalRecord::getEndTime, "2024-09-19 20:00:00"); + recordWrapper.ge(StrUtil.isNotBlank(endTime), ProcessApprovalRecord::getEndTime, endTime); + recordWrapper.eq(StrUtil.isNotBlank(taskID) ,ProcessApprovalRecord::getTaskId, taskID); + recordWrapper.eq(StrUtil.isNotBlank(id), ProcessApprovalRecord::getId, id); + List approvalRecordList = prService.list(recordWrapper); + log.info("待发送完成任务记录条数为:{}", approvalRecordList.size()); + // 对接统一平台生成完成任务 + PushWorkflowIntegrationAPI pushWorkflowIntegrationAPI = SpringContextUtil.getBean(PushWorkflowIntegrationAPI.class); + List list = new ArrayList<>(); + for (ProcessApprovalRecord approvalRecord : approvalRecordList) { + taskService.deleteTask(approvalRecord.getTaskId()); + + // 通过 taskId 查询历史流程实例,获取流程定义 ID + String processInstanceId = historyService.createHistoricTaskInstanceQuery() + .taskId(approvalRecord.getTaskId()) + .singleResult() + .getProcessInstanceId(); + + String processDefinitionId = historyService.createHistoricProcessInstanceQuery() + .processInstanceId(processInstanceId) + .singleResult() + .getProcessDefinitionId(); + HiworkTodoAdd hiworkTodoAdd = new HiworkTodoAdd(); + hiworkTodoAdd.setRecordId(approvalRecord.getId()); + hiworkTodoAdd.setProcessDefinitionId(processDefinitionId); + list.add(hiworkTodoAdd); + } + pushWorkflowIntegrationAPI.sendTodoTask(list); + return "处理完成"; + } + }