From be30e17e3c7685a54f761bf3a03487308c939270 Mon Sep 17 00:00:00 2001 From: 田源 <tianyuan@vci-tech.com> Date: 星期三, 05 三月 2025 18:05:11 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 17 ++++++++++++++--- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java | 8 +++++--- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java | 10 ++++++++-- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java index 9ac4e31..3b4964e 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java @@ -38,6 +38,7 @@ import com.vci.ubcs.code.vo.webserviceModel.attrmap.*; import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO; import com.vci.ubcs.code.webService.config.AttributeMapConfig; +import com.vci.ubcs.omd.cache.EnumCache; import com.vci.ubcs.omd.feign.IBtmTypeClient; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.exception.VciBaseException; @@ -543,9 +544,10 @@ SectionVOList.stream().forEach(SectionVO -> { sectionVOMap.put(SectionVO.getName(), SectionVO.getValue()); }); - //Map<String,CodeClassifyVO> codeClassifyVOMap= classifyFullInfo.getParentClassifyVOs().stream().collect(Collectors.toMap(s -> s.getId(), t -> t,(o1, o2)->o2)); List<CodeOrderSecDTO> codeOrderSecDTOList = new ArrayList<>(); Map<String, String> errorMap = new HashMap<>(); + String nullSymbol = EnumCache.getValue("nullSymbol", "NULL"); + nullSymbol = Func.isBlank(nullSymbol) ? "#NaN?":nullSymbol; for (CodeBasicSecVO codeBasicSecVO : codeBasicSecVOS) { String sectype = codeBasicSecVO.getSecType(); String newSecName = codeBasicSecVO.getName(); @@ -568,7 +570,7 @@ if (!CollectionUtils.isEmpty(codeClassifyValueDOList)) { Map<String, CodeClassifyValue> codeClassifyValueDOMap = codeClassifyValueDOList.stream().collect(Collectors.toMap(s -> s.getId(), t -> t, (o1, o2) -> o2)); - if (codeClassifyValueDOMap.containsKey(sectypeValue)) { + if (codeClassifyValueDOMap.containsKey(sectypeValue) || nullSymbol.equals(sectypeValue)) { CodeClassifyValue codeClassifyValue = codeClassifyValueDOMap.get(sectypeValue); sectypeValue = codeClassifyValue.getOid(); } else { @@ -578,7 +580,7 @@ } } } - if (StringUtils.isBlank(sectypeValue)) { + if (StringUtils.isBlank(sectypeValue)&&!name.equals(secName)) { message = "浼犲叆鐨勫垎绫荤爜娈碉細銆�" + name + " 銆戠殑鍊间笉鍏佽涓虹┖"; errorMap.put("error", errorMap.getOrDefault("error", "") + ";" + message); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java index c7a95e2..3c6c37b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java @@ -25,6 +25,7 @@ import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO; import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO; +import com.vci.ubcs.omd.cache.EnumCache; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.revision.model.BaseModel; import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; @@ -822,7 +823,10 @@ case CODE_CLASSIFY_SEC: //鍒嗙被鐮佹鐨勶紝涔熸槸浠庡墠绔�夋嫨浜嗙爜鍊煎嵆鍙紝涓嶈鐮佸�肩殑闀垮害鏄灏� CodeClassifyValue codeClassifyValueDO= codeClassifyValueMapper.selectById(secValue); - if(Func.isBlank(codeClassifyValueDO.getId())){ + //褰撶爜鍊间负绌烘垨#NaN?鏃跺嵆琛ㄧず浣滀负绌哄瓧绗︿覆杩涜鎷兼帴 + String nullSymbol = EnumCache.getValue("nullSymbol", "NULL"); + nullSymbol = Func.isBlank(nullSymbol) ? "#NaN?":nullSymbol; + if(Func.isBlank(codeClassifyValueDO.getId()) || codeClassifyValueDO.getId().equals(nullSymbol)){ codeClassifyValueDO.setId(""); } if(codeClassifyValueDO!=null) { @@ -1329,7 +1333,9 @@ case CODE_CLASSIFY_SEC: //鍒嗙被鐮佹鐨勶紝涔熸槸浠庡墠绔�夋嫨浜嗙爜鍊煎嵆鍙紝涓嶈鐮佸�肩殑闀垮害鏄灏� CodeClassifyValue codeClassifyValueDO= codeClassifyValueMapper.selectById(secValue); - if(Func.isBlank(codeClassifyValueDO.getId())){ + String nullSymbol = EnumCache.getValue("nullSymbol", "NULL"); + nullSymbol = Func.isBlank(nullSymbol) ? "#NaN?":nullSymbol; + if(Func.isBlank(codeClassifyValueDO.getId()) || codeClassifyValueDO.getId().equals(nullSymbol)){ codeClassifyValueDO.setId(""); } if(codeClassifyValueDO!=null) { diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java index 0996090..3c11372 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java @@ -38,7 +38,10 @@ import com.vci.ubcs.code.webService.annotation.VciWebservice; import com.vci.ubcs.code.webService.config.AttributeMapConfig; import com.vci.ubcs.code.webService.config.PersonAndDeptConfig; +import com.vci.ubcs.omd.cache.EnumCache; import com.vci.ubcs.omd.feign.IBtmTypeClient; +import com.vci.ubcs.omd.feign.IDictClient; +import com.vci.ubcs.omd.feign.IEnumClient; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.revision.model.TreeQueryObject; @@ -2423,8 +2426,13 @@ return codeOrderSecDTOList; } - /*** + /** * 鏍规嵁浼犲叆鐨勫弬鏁颁俊鎭牎楠岀爜娈佃鍒� + * @param SectionVOList + * @param ruleVO + * @param classifyFullInfo + * @return + * @throws Throwable */ private List<CodeOrderSecDTO> getRuleCodeOrderSecDTOs(List<SectionVO> SectionVOList,CodeRuleVO ruleVO,CodeClassifyFullInfoBO classifyFullInfo) throws Throwable{ List<CodeBasicSecVO> codeBasicSecVOS= ruleVO.getSecVOList(); @@ -2440,6 +2448,9 @@ // String newSecName=codeBasicSecVO.getName(); String classifySecOid= codeBasicSecVO.getOid(); String message=""; + //#NaN?琛ㄧず鐮佸�间负绌虹殑鍦烘櫙 + String nullSymbol = EnumCache.getValue("nullSymbol", "NULL"); + nullSymbol = Func.isBlank(nullSymbol) ? "#NaN?":nullSymbol; if (!sectype.equals(CodeSecTypeEnum.CODE_SERIAL_SEC.getValue())) { String name = codeBasicSecVO.getName(); String sectypeText = codeBasicSecVO.getSecTypeText(); @@ -2456,8 +2467,8 @@ List<CodeClassifyValue> codeClassifyValueDOList = codeClassifyValueService.list(Wrappers.<CodeClassifyValue>query().lambda().eq(CodeClassifyValue::getCodeClassifySecOid,classifySecOid)); if (!CollectionUtils.isEmpty(codeClassifyValueDOList)) { Map<String, CodeClassifyValue> codeClassifyValueDOMap = codeClassifyValueDOList.stream().collect(Collectors.toMap(s -> s.getId(), t -> t, (o1, o2) -> o2)); - if(codeClassifyValueDOMap.containsKey(sectypeValue)){ - CodeClassifyValue codeClassifyValue= codeClassifyValueDOMap.get(sectypeValue); + if(codeClassifyValueDOMap.containsKey(sectypeValue) || nullSymbol.equals(sectypeValue)){ + CodeClassifyValue codeClassifyValue = codeClassifyValueDOMap.get(sectypeValue); sectypeValue=codeClassifyValue.getOid(); }else { //throw new Throwable("浼犲叆鐨勫垎绫荤爜娈碉細銆�" + name + " 鍊硷細" + sectypeValue + "銆戯紝涓嶇鍚堝綋鍓嶅垎绫诲眰绾т唬鍙�"); -- Gitblit v1.9.3