From 37d1d71f226a62558f54077d568e5bedf10f882a Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Fri, 1 Jul 2022 14:02:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=95=E8=A7=84=E6=B8=85=E5=8D=95=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=9F=A5=E8=AF=A2=E4=BC=98=E5=8C=96-=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=9F=A5=E8=AF=A2=E8=BD=AC=E6=8D=A2=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E5=80=BC=E6=96=B9=E5=BC=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/ProjectLawsInventoryEO.java | 57 +++++-- .../ProjectLawsInventoryEOServiceImpl.java | 160 ++++++++++++++++++ 2 files changed, 203 insertions(+), 14 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java index 4e0f4171b..2184cb6a0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLawsInventoryEO.java @@ -101,10 +101,13 @@ public class ProjectLawsInventoryEO implements Serializable { /**适用地区*/ @ApiModelProperty(value = "适用地区") - @Dict(dicCode ="region") + //@Dict(dicCode ="region") @Excel(name = "适用地区", width = 15, dicCode = "region") private java.lang.String region; + @TableField(exist = false) + private String region_dictText; + /**对应标准*/ @Excel(name = "对应标准", width = 20) @ApiModelProperty(value = "对应标准") @@ -113,8 +116,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**实施类别*/ @Excel(name = "实施类别", width = 20,dicCode ="implement_type") @ApiModelProperty(value = "实施类别") - @Dict(dicCode ="implement_type") + //@Dict(dicCode ="implement_type") private String implementType; + @TableField(exist = false) + private String implementType_dictText; /**新车型实施日期*/ @Excel(name = "新车型实施日期", width = 20, format = "yyyy-MM-dd") @@ -139,14 +144,18 @@ public class ProjectLawsInventoryEO implements Serializable { /**认证类型*/ @Excel(name = "认证类型", width = 20,dicCode ="attestation_type") @ApiModelProperty(value = "认证类型") - @Dict(dicCode ="attestation_type") + //@Dict(dicCode ="attestation_type") private String attestationType; + @TableField(exist = false) + private String attestationType_dictText; /**认证级别*/ @Excel(name = "认证级别", width = 20,dicCode ="attestation_rank") @ApiModelProperty(value = "认证级别") - @Dict(dicCode ="attestation_rank") + //@Dict(dicCode ="attestation_rank") private String attestationRank; + @TableField(exist = false) + private String attestationRank_dictText; //适用增补件 @Excel(name = "适用增补件", width = 20) @@ -160,8 +169,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**责任领域*/ @Excel(name = "责任领域", width = 20,dicCode ="duty_territory") @ApiModelProperty(value = "责任领域") - @Dict(dicCode ="duty_territory") + //@Dict(dicCode ="duty_territory") private String dutyTerritory; + @TableField(exist = false) + private String dutyTerritory_dictText; /**法规工程师id*/ @ApiModelProperty(value = "法规工程师id") @@ -198,10 +209,12 @@ public class ProjectLawsInventoryEO implements Serializable { /**设计符合性确认-交付物类型*/ @Excel(name = "设计符合性确认-交付物类型", width = 20,dicCode ="deliverable_template") @ApiModelProperty(value = "设计符合性确认-交付物类型") - @Dict(dicCode ="deliverable_template") + //@Dict(dicCode ="deliverable_template") private String designDeliverableType; @TableField(exist = false) private String designDeliverableTypeName; + @TableField(exist = false) + private String designDeliverableType_dictText; /**设计符合性确认-交付物模板*/ @ApiModelProperty(value = "设计符合性确认-交付物模板") @@ -214,8 +227,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**设计符合性确认-发起人角色*/ @ApiModelProperty(value = "设计符合性确认-发起人角色") - @Dict(dicCode ="fa1_qi3_ren2") + //@Dict(dicCode ="fa1_qi3_ren2") private String designInitiator; + @TableField(exist = false) + private String designInitiator_dictText; /**设计符合性确认-发起人id*/ //@TableField(updateStrategy = FieldStrategy.IGNORED) @@ -229,8 +244,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**设计符合性确认-责任人角色*/ @ApiModelProperty(value = "设计符合性确认-责任人角色") - @Dict(dicCode ="ze2_ren4_ren2") + //@Dict(dicCode ="ze2_ren4_ren2") private String designDuty; + @TableField(exist = false) + private String designDuty_dictText; /**设计符合性确认-责任人id*/ @ApiModelProperty(value = "设计符合性确认-责任人id") @@ -259,8 +276,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**prehomo确认-交付物类型*/ @Excel(name = "prehomo确认-交付物类型", width = 20,dicCode ="deliverable_template") @ApiModelProperty(value = "prehomo确认-1") - @Dict(dicCode ="deliverable_template") + ////@Dict(dicCode ="deliverable_template") private String prehomoDeliverableType; + @TableField(exist = false) + private String prehomoDeliverableType_dictText; @TableField(exist = false) private String prehomoDeliverableTypeName; @@ -275,8 +294,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**prehomo确认-发起人角色*/ @ApiModelProperty(value = "prehomo确认-发起人角色") - @Dict(dicCode ="fa1_qi3_ren2") + //@Dict(dicCode ="fa1_qi3_ren2") private String prehomoInitiator; + @TableField(exist = false) + private String prehomoInitiator_dictText; /**prehomo确认-发起人id*/ @ApiModelProperty(value = "prehomo确认-发起人id") @@ -290,8 +311,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**prehomo确认-责任人角色*/ @ApiModelProperty(value = "prehomo确认-责任人角色") - @Dict(dicCode ="ze2_ren4_ren2") + //@Dict(dicCode ="ze2_ren4_ren2") private String prehomoDuty; + @TableField(exist = false) + private String prehomoDuty_dictText; /**prehomo确认-责任人id*/ @ApiModelProperty(value = "prehomo确认-责任人id") @@ -320,8 +343,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**验证符合性确认-交付物类型*/ @Excel(name = "验证符合性确认-交付物类型", width = 20,dicCode ="deliverable_template") @ApiModelProperty(value = "验证符合性确认-交付物类型") - @Dict(dicCode ="deliverable_template") + //@Dict(dicCode ="deliverable_template") private String verifyDeliverableType; + @TableField(exist = false) + private String verifyDeliverableType_dictText; @TableField(exist = false) private String verifyDeliverableTypeName; @@ -336,8 +361,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**验证符合性确认-发起人角色*/ @ApiModelProperty(value = "验证符合性确认-发起人角色") - @Dict(dicCode ="fa1_qi3_ren2") + //@Dict(dicCode ="fa1_qi3_ren2") private String verifyInitiator; + @TableField(exist = false) + private String verifyInitiator_dictText; /**验证符合性确认-发起人id*/ @ApiModelProperty(value = "验证符合性确认-发起人id") @@ -351,8 +378,10 @@ public class ProjectLawsInventoryEO implements Serializable { /**验证符合性确认-责任人角色*/ @ApiModelProperty(value = "验证符合性确认-责任人角色") - @Dict(dicCode ="ze2_ren4_ren2") + //@Dict(dicCode ="ze2_ren4_ren2") private String verifyDuty; + @TableField(exist = false) + private String verifyDuty_dictText; /**验证符合性确认-责任人id*/ @ApiModelProperty(value = "验证符合性确认-责任人id") 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 f7d393ae3..1b871abc1 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 @@ -646,6 +646,166 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl result = super.baseMapper.selectList(projectLawsInventoryEOQueryWrapper); dataDispose(result,currentUser,isProjectRole,projectLawsInventoryEO.getCut()); + long startTime = System.currentTimeMillis(); + dataDictDispose(result,projectLawsInventoryEO.getCut()); + log.debug("处理数据字典消耗时间:" + (System.currentTimeMillis() - startTime)); + return result; + } + + /** + * 数据字典数据处理方法 + * @param result 返回值 + * @param cut 中英文切换 + */ + public void dataDictDispose(List result,String cut){ + if(CollectionUtils.isNotEmpty(result)){ + List sysDictItems = sysDictItemServiceImpl.getBaseMapper().selectItemsAll(); + for (ProjectLawsInventoryEO projectLawsInventoryEO : result) { + //处理适用地区 + String region = projectLawsInventoryEO.getRegion(); + if(StringUtils.isNotEmpty(region)){ + String region_dictText = disposeShowDictItemValue(sysDictItems, region,cut,ProjectInventoryFieldEnum.REGION.getValue()); + projectLawsInventoryEO.setRegion_dictText(region_dictText); + } + + //处理实施类别 + String implementType = projectLawsInventoryEO.getImplementType(); + if(StringUtils.isNotEmpty(implementType)){ + String implementType_dictText = disposeShowDictItemValue(sysDictItems, implementType,cut,ProjectInventoryFieldEnum.IMPLEMENT_TYPE.getValue()); + projectLawsInventoryEO.setImplementType_dictText(implementType_dictText); + } + + //处理认证类型 + String attestationType = projectLawsInventoryEO.getAttestationType(); + if(StringUtils.isNotEmpty(attestationType)){ + String attestationType_dictText = disposeShowDictItemValue(sysDictItems, attestationType,cut,ProjectInventoryFieldEnum.ATTESTATION_TYPE.getValue()); + projectLawsInventoryEO.setAttestationType_dictText(attestationType_dictText); + } + + //处理认证级别 + String attestationRank = projectLawsInventoryEO.getAttestationRank(); + if(StringUtils.isNotEmpty(attestationRank)){ + String attestationRank_dictText = disposeShowDictItemValue(sysDictItems, attestationRank,cut,ProjectInventoryFieldEnum.ATTESTATION_RANK.getValue()); + projectLawsInventoryEO.setAttestationRank_dictText(attestationRank_dictText); + } + + //处理责任领域 + String dutyTerritory = projectLawsInventoryEO.getDutyTerritory(); + if(StringUtils.isNotEmpty(dutyTerritory)){ + String dutyTerritory_dictText = disposeShowDictItemValue(sysDictItems, dutyTerritory,cut,ProjectInventoryFieldEnum.DUTY_TERRITORY.getValue()); + projectLawsInventoryEO.setDutyTerritory_dictText(dutyTerritory_dictText); + } + + //处理设计符合性确认-交付物类型 + String designDeliverableType = projectLawsInventoryEO.getDesignDeliverableType(); + if(StringUtils.isNotEmpty(designDeliverableType)){ + String designDeliverableType_dictText = disposeShowDictItemValue(sysDictItems, designDeliverableType,cut,ProjectInventoryFieldEnum.DESIGN_DELIVERABLE_TYPE.getValue()); + projectLawsInventoryEO.setDesignDeliverableType_dictText(designDeliverableType_dictText); + } + + //处理设计符合性确认-发起人角色 + String designInitiator = projectLawsInventoryEO.getDesignInitiator(); + if(StringUtils.isNotEmpty(designInitiator)){ + String designInitiator_dictText = disposeShowDictItemValue(sysDictItems, designInitiator,cut,ProjectInventoryFieldEnum.DESIGN_INITIATOR.getValue()); + projectLawsInventoryEO.setDesignInitiator_dictText(designInitiator_dictText); + } + + //处理设计符合性确认-责任人角色 + String designDuty = projectLawsInventoryEO.getDesignDuty(); + if(StringUtils.isNotEmpty(designDuty)){ + String designDuty_dictText = disposeShowDictItemValue(sysDictItems, designDuty,cut,ProjectInventoryFieldEnum.DESIGN_DUTY.getValue()); + projectLawsInventoryEO.setDesignDuty_dictText(designDuty_dictText); + } + + //处理prehomo确认-交付物类型 + String prehomoDeliverableType = projectLawsInventoryEO.getPrehomoDeliverableType(); + if(StringUtils.isNotEmpty(prehomoDeliverableType)){ + String prehomoDeliverableType_dictText = disposeShowDictItemValue(sysDictItems, prehomoDeliverableType,cut,ProjectInventoryFieldEnum.PREHOMO_DELIVERABLE_TYPE.getValue()); + projectLawsInventoryEO.setPrehomoDeliverableType_dictText(prehomoDeliverableType_dictText); + } + + //处理prehomo确认-发起人角色 + String prehomoInitiator = projectLawsInventoryEO.getPrehomoInitiator(); + if(StringUtils.isNotEmpty(prehomoInitiator)){ + String prehomoInitiator_dictText = disposeShowDictItemValue(sysDictItems, prehomoInitiator,cut,ProjectInventoryFieldEnum.PREHOMO_INITIATOR.getValue()); + projectLawsInventoryEO.setPrehomoInitiator_dictText(prehomoInitiator_dictText); + } + + //处理prehomo确认-责任人角色 + String prehomoDuty = projectLawsInventoryEO.getPrehomoDuty(); + if(StringUtils.isNotEmpty(prehomoDuty)){ + String prehomoDuty_dictText = disposeShowDictItemValue(sysDictItems, prehomoDuty,cut,ProjectInventoryFieldEnum.PREHOMO_DUTY.getValue()); + projectLawsInventoryEO.setPrehomoDuty_dictText(prehomoDuty_dictText); + } + + //处理验证符合性确认-交付物类型 + String verifyDeliverableType = projectLawsInventoryEO.getVerifyDeliverableType(); + if(StringUtils.isNotEmpty(verifyDeliverableType)){ + String verifyDeliverableType_dictText = disposeShowDictItemValue(sysDictItems, verifyDeliverableType,cut,ProjectInventoryFieldEnum.VERIFY_DELIVERABLE_TYPE.getValue()); + projectLawsInventoryEO.setVerifyDeliverableType_dictText(verifyDeliverableType_dictText); + } + + //处理验证符合性确认-发起人角色 + String verifyInitiator = projectLawsInventoryEO.getVerifyInitiator(); + if(StringUtils.isNotEmpty(verifyInitiator)){ + String verifyInitiator_dictText = disposeShowDictItemValue(sysDictItems, verifyInitiator,cut,ProjectInventoryFieldEnum.VERIFY_INITIATOR.getValue()); + projectLawsInventoryEO.setVerifyInitiator_dictText(verifyInitiator_dictText); + } + + //处理验证符合性确认-责任人角色 + String verifyDuty = projectLawsInventoryEO.getVerifyDuty(); + if(StringUtils.isNotEmpty(verifyDuty)){ + String verifyDuty_dictText = disposeShowDictItemValue(sysDictItems, verifyDuty,cut,ProjectInventoryFieldEnum.VERIFY_DUTY.getValue()); + projectLawsInventoryEO.setVerifyDuty_dictText(verifyDuty_dictText); + } + } + } + } + + /** + * 处理展示数据字典值 + * @param sysDictItems 所有的数据字典项 + * @param fieldValues 字段值 + * @param cut 中英文切换标识 + * @param dicCode 数据字典code码 + * @return + */ + public String disposeShowDictItemValue(List sysDictItems,String fieldValues,String cut,String dicCode){ + String result = ""; + List sysDictItemList = sysDictItems.stream().filter(e -> { + boolean flag = false; + if(StringUtils.equals(e.getDictCode(),dicCode)){ + flag = true; + } + return flag; + }).distinct().collect(Collectors.toList()); + if(CollectionUtils.isNotEmpty(sysDictItemList)){ + if(StringUtils.equals(cut,CutEnum.CN.getValue())){ + result = sysDictItemList.stream().filter(e -> { + boolean flag = false; + List fieldValueStrList = Arrays.asList(fieldValues.split(",")); + for (String fieldValueStr : fieldValueStrList) { + if(StringUtils.equals(fieldValueStr,e.getItemValue())){ + flag = true; + break; + } + } + return flag; + }).map(SysDictItem::getItemText).collect(Collectors.joining(",")); + }else if(StringUtils.equals(cut,CutEnum.EN.getValue())){ + result = sysDictItemList.stream().filter(e -> { + boolean flag = false; + List fieldValueStrList = Arrays.asList(fieldValues.split(",")); + for (String fieldValueStr : fieldValueStrList) { + if(StringUtils.equals(fieldValueStr,e.getItemValue())){ + flag = true; + break; + } + } + return flag; + }).map(SysDictItem::getEnName).collect(Collectors.joining(",")); + } + } return result; }