From c60b4e09590121007b35647601e408eb9d01c8af Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Mon, 29 Jul 2024 19:24:31 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=A0=87=E5=87=86=E4=B8=BB=E8=AE=A1?= =?UTF-8?q?=E5=88=92):=20=E6=96=B0=E5=A2=9E=E6=97=B6=E5=8F=8D=E6=98=BE?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mapper/xml/LawsCommonMapper.xml | 6 +- .../common/vo/ManyStandardSelectionBox.java | 4 + .../LawsStandardMasterPlanController.java | 13 ++ .../ILawsStandardMasterPlanService.java | 9 + .../LawsStandardMasterPlanServiceImpl.java | 160 ++++++++++++------ 5 files changed, 138 insertions(+), 54 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/mapper/xml/LawsCommonMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/common/mapper/xml/LawsCommonMapper.xml index 6f425654..2836242e 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/mapper/xml/LawsCommonMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/mapper/xml/LawsCommonMapper.xml @@ -56,20 +56,20 @@ select * from ( SELECT standard.id, standard.standard_number, standard.standard_name, standard.implementation_date, standard.standard_state, standard.source, standard.create_time, - standard.new_product_impl_date, standard.new_auth_impl_date + standard.new_product_impl_date, standard.new_auth_impl_date, create_by, responsible_user , split.id AS split_info_id FROM (SELECT id, standard_number, standard_name, implementation_date, standard_state, '1' AS source, create_time, - new_product_impl_date, new_auth_impl_date + new_product_impl_date, new_auth_impl_date, create_by, responsible_user FROM laws_domestic_standard WHERE del_flag = 0 UNION ALL SELECT id, standard_number, standard_name, release_date, standard_state, '3' AS source, create_time, - null as new_product_impl_date, null as new_auth_impl_date + null as new_product_impl_date, null as new_auth_impl_date, create_by, null as responsible_user FROM laws_enterprise_standard WHERE del_flag = 0) standard diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/vo/ManyStandardSelectionBox.java b/laws-modules/src/main/java/com/jero/modules/laws/common/vo/ManyStandardSelectionBox.java index ffadb550..d3937e65 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/vo/ManyStandardSelectionBox.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/vo/ManyStandardSelectionBox.java @@ -51,6 +51,10 @@ public class ManyStandardSelectionBox { private String newProductImplDate; @ApiModelProperty(value = "文档拆分id") private java.lang.String splitInfoId; + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + @ApiModelProperty(value = "责任人") + private java.lang.String responsibleUser; public void setStandardState(String standardState) { this.standardState = standardState; diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/controller/LawsStandardMasterPlanController.java b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/controller/LawsStandardMasterPlanController.java index 789fb449..9675d8b9 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/controller/LawsStandardMasterPlanController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/controller/LawsStandardMasterPlanController.java @@ -8,6 +8,7 @@ import com.jero.common.aspect.annotation.Translation; import com.jero.common.constant.CommonConstant; import com.jero.common.util.MessageUtils; import com.jero.modules.laws.standardmasterplan.dto.LawsStandardMasterPlanDTO; +import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlanSublist; import com.jero.modules.laws.standardmasterplan.servicce.ILawsStandardMasterPlanService; import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanDetailsVO; import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanVO; @@ -83,6 +84,18 @@ public class LawsStandardMasterPlanController { return Result.OK(MessageUtils.getMessage(ResultCommon.OK)); } + /** + * 标准主计划-返显数据 + * + * @return lawsStandardMasterPlanDTO + */ + @AutoLog(value = "标准主计划-返显数据", operateType = CommonConstant.OPERATE_TYPE_2) + @ApiOperation(value="标准主计划-返显数据", notes="标准主计划-返显数据") + @GetMapping(value = "/queryAssociationId") + public Result> queryAssociationId(String standardId, String applicableMarket) { + return Result.OK(lawsStandardMasterPlanService.queryAssociationId(standardId, applicableMarket)); + } + /** * 标准主计划-编辑 * diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/ILawsStandardMasterPlanService.java b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/ILawsStandardMasterPlanService.java index abbe2250..a278761b 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/ILawsStandardMasterPlanService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/ILawsStandardMasterPlanService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary; import com.jero.modules.laws.standardmasterplan.dto.LawsStandardMasterPlanDTO; import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlan; +import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlanSublist; import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanDetailsVO; import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanVO; import org.springframework.web.servlet.ModelAndView; @@ -73,4 +74,12 @@ public interface ILawsStandardMasterPlanService extends IService queryAssociationId(String standardId, String applicableMarket); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java index 2fcb2b26..9c756c3c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java @@ -136,57 +136,6 @@ public class LawsStandardMasterPlanServiceImpl lawsStandardMasterPlanDTO.getLawsStandardMasterPlanSublistList(); for (LawsStandardMasterPlanSublist lawsStandardMasterPlanSublist : lawsStandardMasterPlanSublistList) { lawsStandardMasterPlanSublist.setMasterPlanId(lawsStandardMasterPlan.getId()); - String type = lawsStandardMasterPlanSublist.getType(); - switch (type) { - // 法规解读 - case LawsStandardMasterPlanCommon.INTERPRETATION_OF_REGULATIONS: - List list = processStandardInterpretService.list( - new LambdaQueryWrapper() - .eq(ProcessStandardInterpret::getStandardId, - lawsStandardMasterPlan.getStandardId())); - if (CollectionUtils.isNotEmpty(list)){ - List projectIdList = list.stream() - .map(ProcessStandardInterpret::getProjectId) - .collect(Collectors.toList()); - ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() - .in(ProcessAll::getProjectId, projectIdList) - .eq(ProcessAll::getPrcType, ProcessType.STANDARD_INTERPRET.getValue()) - .eq(ProcessAll::getPrcStatus, ProcessStatusEnum.COMPLETED.getValue()) - .orderByAsc(ProcessAll::getCreateTime).last("limit 1")); - if (!Objects.isNull(processAll)){ - lawsStandardMasterPlanSublist.setAssociationId(processAll.getId()); - } - } - break; - // 市场法规清单更新 - case LawsStandardMasterPlanCommon.MARKET_REGULATION_LIST_UPDATE: - // 根据适用市场查询获取最早发布的市场法规清单 - LawsMarketStandard lawsMarketStandard = lawsMarketStandardService.getOne( - new LambdaQueryWrapper() - .like(LawsMarketStandard::getCountry, lawsStandardMasterPlanVO.getApplicableMarket()) - .eq(LawsMarketStandard::getManifestStatus, MarketStandardConstants.MANIFEST_STATUS_PUBLISH) - .orderByAsc(LawsMarketStandard::getCreateTime).last("limit 1")); - if (!Objects.isNull(lawsMarketStandard)){ - // 查询第一个发布版本 - lawsStandardMasterPlanSublist.setAssociationId(lawsMarketStandard.getId()); - } - break; - // 法规符合性排查 - case LawsStandardMasterPlanCommon.REGULATORY_COMPLIANCE_INVESTIGATION: - // 根据 标准名称+适用市场 查询 法规符合性排查 - LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary = - new LawsConformityAssessmentLibrary(); - lawsConformityAssessmentLibrary.setStandardNumber(lawsStandardMasterPlanVO.getStandardNumber()); - lawsConformityAssessmentLibrary.setApplicableMarket(lawsStandardMasterPlanVO.getApplicableMarket()); - LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary1 = - lawsConformityAssessmentLibraryService.queryOne(lawsConformityAssessmentLibrary); - if (!Objects.isNull(lawsConformityAssessmentLibrary1)){ - lawsStandardMasterPlanSublist.setAssociationId(lawsConformityAssessmentLibrary1.getId()); - } - break; - default: - break; - } } lawsStandardMasterPlanSublistService.saveBatch(lawsStandardMasterPlanSublistList); } @@ -492,6 +441,115 @@ public class LawsStandardMasterPlanServiceImpl } + @Override + public List queryAssociationId(String standardId, String applicableMarket) { + ArrayList list = new ArrayList<>(); + LawsDomesticStandard lawsDomesticStandard = lawsDomesticStandardService.getById(standardId); + + // 导入通知 + LawsStandardMasterPlanSublist masterPlanSublist = new LawsStandardMasterPlanSublist(); + List list1 = processNewStandardImportService.list( + new LambdaQueryWrapper() + .eq(ProcessNewStandardImport::getStandardId, standardId) + .eq(ProcessNewStandardImport::getApplicableMarket, applicableMarket)); + if (CollectionUtils.isNotEmpty(list1)){ + List processInstanceIdList = list1.stream() + .map(ProcessNewStandardImport::getProcessInstanceId).collect(Collectors.toList()); + List processAllList = processAllService.list(new LambdaQueryWrapper() + .in(ProcessAll::getProcessInstanceId, processInstanceIdList) + .orderByAsc(ProcessAll::getEndTime)); + if (CollectionUtils.isNotEmpty(processAllList)){ + ProcessAll processAll = processAllList.get(0); + masterPlanSublist.setActualCompletionDate(processAll.getEndTime()); + masterPlanSublist.setProcessAllList(processAllList); + } + } + list.add(masterPlanSublist); + + // 法规解读 + LawsStandardMasterPlanSublist masterPlanSublist1 = new LawsStandardMasterPlanSublist(); + masterPlanSublist1.setType(LawsStandardMasterPlanCommon.INTERPRETATION_OF_REGULATIONS); + List processStandardInterpretList = processStandardInterpretService.list( + new LambdaQueryWrapper() + .eq(ProcessStandardInterpret::getStandardId, standardId)); + if (CollectionUtils.isNotEmpty(processStandardInterpretList)){ + List projectIdList = processStandardInterpretList.stream() + .map(ProcessStandardInterpret::getProjectId) + .collect(Collectors.toList()); + ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper() + .in(ProcessAll::getProjectId, projectIdList) + .eq(ProcessAll::getPrcType, ProcessType.STANDARD_INTERPRET.getValue()) + .eq(ProcessAll::getPrcStatus, ProcessStatusEnum.COMPLETED.getValue()) + .orderByAsc(ProcessAll::getCreateTime).last("limit 1")); + if (!Objects.isNull(processAll)){ + masterPlanSublist1.setAssociationId(processAll.getId()); + masterPlanSublist1.setActualCompletionDate(processAll.getEndTime()); + ProcessStandardInterpret processStandardInterpret = processStandardInterpretService.getOne( + new LambdaQueryWrapper() + .eq(ProcessStandardInterpret::getProjectId, processAll.getProjectId())); + if (!Objects.isNull(processStandardInterpret)){ + masterPlanSublist1.setDeliverableFileId(processStandardInterpret.getSplitInfoId()); + } + } + } + list.add(masterPlanSublist1); + + // 市场法规清单更新 + LawsStandardMasterPlanSublist masterPlanSublist2 = new LawsStandardMasterPlanSublist(); + masterPlanSublist2.setType(LawsStandardMasterPlanCommon.MARKET_REGULATION_LIST_UPDATE); + // 根据适用市场查询获取最早发布的市场法规清单 + LawsMarketStandard lawsMarketStandard = lawsMarketStandardService.getOne( + new LambdaQueryWrapper() + .like(LawsMarketStandard::getCountry, applicableMarket) + .eq(LawsMarketStandard::getManifestStatus, MarketStandardConstants.MANIFEST_STATUS_PUBLISH) + .orderByAsc(LawsMarketStandard::getCreateTime).last("limit 1")); + if (!Objects.isNull(lawsMarketStandard)){ + // 查询第一个发布版本 + masterPlanSublist2.setAssociationId(lawsMarketStandard.getId()); + masterPlanSublist2.setResponsiblePerson(lawsMarketStandard.getAuthor()); + masterPlanSublist2.setActualCompletionDate(lawsMarketStandard.getReleaseDate()); + } + list.add(masterPlanSublist2); + + // 法规符合性排查 + LawsStandardMasterPlanSublist masterPlanSublist3 = new LawsStandardMasterPlanSublist(); + masterPlanSublist3.setType(LawsStandardMasterPlanCommon.REGULATORY_COMPLIANCE_INVESTIGATION); + // 根据 标准名称+适用市场 查询 法规符合性排查 + LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary = + new LawsConformityAssessmentLibrary(); + lawsConformityAssessmentLibrary.setStandardNumber(lawsDomesticStandard.getStandardNumber()); + lawsConformityAssessmentLibrary.setApplicableMarket(applicableMarket); + LawsConformityAssessmentLibrary lawsConformityAssessmentLibrary1 = + lawsConformityAssessmentLibraryService.queryOne(lawsConformityAssessmentLibrary); + if (!Objects.isNull(lawsConformityAssessmentLibrary1)){ + masterPlanSublist3.setAssociationId(lawsConformityAssessmentLibrary1.getId()); + masterPlanSublist3.setActualCompletionDate(lawsConformityAssessmentLibrary.getValuationTime()); + } + list.add(masterPlanSublist3); + + // 车型整改 + LawsStandardMasterPlanSublist masterPlanSublist4 = new LawsStandardMasterPlanSublist(); + List lawsEvaluationNotMetLibraryList = lawsEvaluationNotMetLibraryService.list( + new LambdaQueryWrapper() + .eq(LawsEvaluationNotMetLibrary::getStandardId, standardId) + .eq(LawsEvaluationNotMetLibrary::getRectifyStatus, "2") + .orderByDesc(LawsEvaluationNotMetLibrary::getUpdateTime)); + if (CollectionUtils.isNotEmpty(lawsEvaluationNotMetLibraryList)){ + String pcrNos = lawsEvaluationNotMetLibraryList.stream() + .map(LawsEvaluationNotMetLibrary::getPcrNo).collect(Collectors.joining(",")); + masterPlanSublist4.setPcrCode(pcrNos); + LawsEvaluationNotMetLibrary lawsEvaluationNotMetLibrary = lawsEvaluationNotMetLibraryList.get(0); + SysUser sysUser = sysUserService.getUserByName(lawsEvaluationNotMetLibrary.getUpdateBy()); + if (!Objects.isNull(sysUser)){ + masterPlanSublist4.setResponsiblePerson(sysUser.getId()); + } + masterPlanSublist4.setCompletionAccomplishDate( + lawsEvaluationNotMetLibrary.getUpdateTime()); + } + list.add(masterPlanSublist4); + return list; + } + private void vehicleModelRectification(List lawsStandardMasterPlanSublistList, Map lm, SimpleDateFormat dateFormat) { Optional vehicleModelRectification = lawsStandardMasterPlanSublistList.stream()