From f6319eac1a466fce4c3ad33e79c184afe3ff0b27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E5=B5=A9?= Date: Thu, 19 Oct 2023 16:06:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B3=95=E8=A7=84=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E7=BB=99=E6=B3=95=E8=A7=84=E5=B7=A5=E7=A8=8B=E5=B8=88?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E9=87=8D=E7=BD=AE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProjectLawsInventoryEOServiceImpl.java | 85 ++++++++++++++++++- .../components/listOfRegulations.vue | 8 +- 2 files changed, 91 insertions(+), 2 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index fcca7ee61..bec6869df 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -4867,10 +4867,93 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl piFlowTypeList = new ArrayList<>(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().in(ProjectLawsInventoryEO::getId, Arrays.asList(ids.split(","))); + queryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId, projectLibraryId); + List projectLawsInventoryEOS = this.list(queryWrapper); + + List idList = Arrays.asList(ids.split(",")); + String projectLawsInventoryIds = ids; + String pIds = ""; + + ProjectLawsInventoryEO projectLawsInventoryEO = new ProjectLawsInventoryEO(); + projectLawsInventoryEO.setInventoryAffirmStatus(InventoryAffirmStatusEnum.LIST_TO_CONFIRM.getValue()); + projectLawsInventoryEO.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue()); + //清单、任务确认初始化。 + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.in(ProjectLawsInventoryEO::getId, idList); + updateWrapper.set(ProjectLawsInventoryEO::getRegulationOwnerSubmitStatus, null); + updateWrapper.set(ProjectLawsInventoryEO::getHomologationEngineerSubmitStatus, null); + updateWrapper.set(ProjectLawsInventoryEO::getSendMsgFlag, null); + updateWrapper.set(ProjectLawsInventoryEO::getSendMsgCurrentFlag, null); + updateWrapper.set(ProjectLawsInventoryEO::getInventoryAffirmDueDate, null); + updateWrapper.set(ProjectLawsInventoryEO::getTaskAffirmDueDate, null); + + // 区分重置设计、验证、全部流程 + if(StringUtils.equals(operateType, OperatorTypeEnum.LAWS_INVENTORY_ALL_RESET_FLOW.getValue())){ + updateWrapper.set(ProjectLawsInventoryEO::getDesignFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue()); + updateWrapper.set(ProjectLawsInventoryEO::getVerifyFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue()); + piFlowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue()); + piFlowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue()); + piFlowTypeList.add(FlowTypeEnum.SJ_XGJFWLC.getValue()); + piFlowTypeList.add(FlowTypeEnum.YZ_XGJFWLC.getValue()); + }else if(StringUtils.equals(operateType,OperatorTypeEnum.LAWS_INVENTORY_DESIGN_RESET_FLOW.getValue())){ + updateWrapper.set(ProjectLawsInventoryEO::getDesignFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue()); + piFlowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue()); + piFlowTypeList.add(FlowTypeEnum.SJ_XGJFWLC.getValue()); + }else if(StringUtils.equals(operateType,OperatorTypeEnum.LAWS_INVENTORY_VERIFY_RESET_FLOW.getValue())){ + updateWrapper.set(ProjectLawsInventoryEO::getVerifyFlowStatus, ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue()); + piFlowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue()); + piFlowTypeList.add(FlowTypeEnum.YZ_XGJFWLC.getValue()); + } + + super.update(projectLawsInventoryEO, updateWrapper); + + QueryWrapper processInfoQueryWrap = new QueryWrapper<>(); + processInfoQueryWrap.lambda().in(ProcessInfoEO::getProjectLawsInventoryId, idList); + processInfoQueryWrap.lambda().in(ProcessInfoEO::getFlowType,piFlowTypeList); + List processInfoEOList = this.processInfoEOService.list(processInfoQueryWrap); + List actiProcInstIdList = processInfoEOList.stream().map(ProcessInfoEO::getActiProcInstId).distinct().collect(Collectors.toList()); + + pIds = actiProcInstIdList.stream().map(String::valueOf).collect(Collectors.joining(",")); + + JSONObject params = new JSONObject(); + params.put("projectLawsInventoryIds", projectLawsInventoryIds); + params.put("pIds", pIds); + + //清除流程中心对应的数据 + params.put("ids", ids); + params.put("operateType", operateType); + this.processInfoEOService.change(params); + + // 删除流程历史数据 + this.processHistoryEOService.deleteBiActiProcInstIdList(actiProcInstIdList); + + this.lawsInventoryEOListSortByInventoryAffirmDueDate(projectLawsInventoryEOS); + Date inventoryAffirmDueDate = projectLawsInventoryEOS.get(0).getInventoryAffirmDueDate(); + String endTime = ""; + if (inventoryAffirmDueDate != null) { + endTime = DateUtils.formatDate(inventoryAffirmDueDate); + } + } + //流程重置后,将平台件关联信息删除 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.in(LawsInventoryPlatformEO::getLawsInventoryId,Arrays.asList(ids.split(","))); + lawsInventoryPlatformEOService.remove(wrapper); + } private void resetFolw(String ids, String projectLibraryId, String operateType) { if (StringUtils.isNotEmpty(ids)) { diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index 2392a3867..44cdf94e3 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -160,6 +160,11 @@ {{ $t('copy') }} + +
+ + {{ $t('processReset') }} +
@@ -2401,7 +2406,8 @@ postAction('/project/projectLawsInventoryEO/change', { ids: idList.join(','), projectLibraryId: _this.$route.query.id, - operateType: _this.formInlineReset.operateType + operateType: _this.formInlineReset.operateType, + currRole:this.roleSwitchingCode }).then((res) => { if (res.success) { _this.$message.success(_this.$t('OperationSuccessful'))