From 33f5b404064d528da54157a786031503ff723932 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 21 三月 2024 08:58:49 +0800 Subject: [PATCH] 集成相关更改 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 286 ++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 190 insertions(+), 96 deletions(-) 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 301a208..9528c9e 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 @@ -55,6 +55,7 @@ import com.vci.ubcs.system.vo.RoleVO; import lombok.extern.slf4j.Slf4j; import org.springblade.core.log.exception.ServiceException; +import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; @@ -68,6 +69,8 @@ import javax.servlet.http.HttpServletRequest; import javax.xml.ws.WebServiceContext; import javax.xml.ws.handler.MessageContext; +import java.io.PrintWriter; +import java.io.StringWriter; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.atomic.AtomicBoolean; @@ -280,8 +283,12 @@ systemId = interParameterVO.getData().getSystemId(); UserVO userVo = interParameterVO.getData().getUser(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� - - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(Locale.ROOT),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(Locale.ROOT), this.getRequest()); + }catch (Throwable e){ + errorid[0] ="1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触."); + } List<ClassfyVO> classVOList = classfysVO.getClassify(); InterParameterVO finalInterParameterVO = interParameterVO; //杩欐槸璐﹀彿淇℃伅 @@ -312,7 +319,7 @@ //鏍¢獙鏄惁閰嶇疆 DockingSystemConfig dockingSystemConfig=null; dockingSystemConfig=checkIspass(finalSystemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue(),codeClassifyVO.getOid()); - if(dockingSystemConfig==null){ + if(dockingSystemConfig==null||StringUtils.isBlank(dockingSystemConfig.getOid())){ errorid[0] ="101"; throw new Throwable("绯荤粺鏍囪瘑涓恒��"+ finalSystemId +"銆戯紝闆嗘垚鍒嗙被涓恒��"+codeClassifyVO.getName()+"銆戜互涓婂垎绫伙紝"+sysIntegrationPushTypeEnum.ACCPET_APPCODE.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); } @@ -365,7 +372,6 @@ resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); }); }else{ - XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); xmlResultDataObjectDetailDO.setCode(""); xmlResultDataObjectDetailDO.setId(""); @@ -374,6 +380,7 @@ resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); } e.printStackTrace(); + log.error(e.getMessage()); }finally { XMLResultClassfyVO resultClassfyVO = new XMLResultClassfyVO(); resultClassfyVO.setClassCode(classVO.getClassCode()); @@ -392,6 +399,7 @@ }catch (Throwable e){ e.printStackTrace(); msg="鐢宠缂栫爜澶辫触:"+e.getMessage(); + log.error(msg); /* XMLResultSystemVO XMLResultSystemVO=new XMLResultSystemVO(); XMLResultSystemVO.setErrorid(errorid); XMLResultSystemVO.setMsg("鐢宠缂栫爜澶辫触锛�->"+e.getMessage()); @@ -413,10 +421,10 @@ if(!CollectionUtils.isEmpty(resultClassfyVOList)) { resultClassfyVOList.stream().forEach(xMLResultClassfyVO -> { xMLResultClassfyVO.getObjects().stream().forEach(objec -> { - if (!(objec.getErrorid().equals("0") || objec.getErrorid().equals("204"))) { + if (!(objec.getErrorid().equals("0")||objec.getErrorid().equals("201") ||objec.getErrorid().equals("205")|| objec.getErrorid().equals("204"))) { issucess[0] = false; - msg=objec.getMsg(); } + msg=objec.getMsg(); }); }); } @@ -427,6 +435,7 @@ this.saveLogs(systemId, systemId, data, resultStr, issucess[0], msg, "applyCode"); }catch (Throwable e){ e.printStackTrace(); + log.error(e.getMessage()); } } log.info("杩斿洖鍙傛暟:"+resultStr); @@ -458,7 +467,11 @@ if(personData==null){ throw new Throwable("浼犲叆鍙傛暟涓簄ull"); } - passwordFreeLoginService.pwdFreeLoginByBoolean(systemCode.toLowerCase(Locale.ROOT),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemCode.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } masterDataList = personData.getMasterData(); String personLibrary = personAndDeptConfig.getPersonLibrary(); if (StringUtils.isBlank(personLibrary)) { @@ -560,11 +573,12 @@ sb.append(VciBaseUtil.toInSql(codeList.toArray(new String[0]))); sb.append(")"); List<Map<String,String>> dataMapList=commonsMapper.queryByOnlySqlForMap(sb.toString()); + List<ClientBusinessObject> cboList= ChangeMapTOClientBusinessObjects(dataMapList); ApplyDatasVO applyDatasVO=new ApplyDatasVO(); ApplyDatasVO editDatasVO=new ApplyDatasVO(); if(!CollectionUtils.isEmpty(cboList)){ - Map<String,ClientBusinessObject> oldpplyDataVOMap= cboList.stream().filter(data -> data != null && StringUtils.isNotBlank(data.getId())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); + Map<String,ClientBusinessObject> oldpplyDataVOMap = cboList.stream().filter(data -> data != null && StringUtils.isNotBlank(data.getId())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); //鏁版嵁搴撲笉瀛樺湪鐨� List<ApplyDataVO> applyApplyDataVOList = applyDataVOList.stream().filter(cbo -> { String code =cbo.getCode(); @@ -722,33 +736,36 @@ public ResultOrgData syncDataForOrg(OrgData orgData) { boolean isUsedFlag= personAndDeptConfig.isUsedFlag(); ResultOrgData resultOrgData=new ResultOrgData(); - boolean isPersonApplyGroupCode= personAndDeptConfig.isPersonApplyGroupCode(); + boolean isPersonApplyGroupCode= personAndDeptConfig.isDeptApplyGroupCode(); List<ResultMdMapping> resultMdMappingList=new ArrayList<>(); AtomicBoolean success= new AtomicBoolean(true); String message=""; String systemCode=""; if(isUsedFlag){ List<OrgMasterData> orgMasterDataList=new ArrayList<>(); - List<String> fields= VciBaseUtil.str2List(personAndDeptConfig.getPersonFields()); + List<String> fields= VciBaseUtil.str2List(personAndDeptConfig.getDeptFields()); try { if(orgData==null){ throw new Throwable("浼犲叆鍙傛暟涓簄ull"); } systemCode=orgData.getSystemCode(); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemCode.toLowerCase(),this.getRequest()); - - orgMasterDataList = orgData.getMasterData(); - String personLibrary = personAndDeptConfig.getPersonLibrary(); - if (StringUtils.isBlank(personLibrary)) { - success.set(false); - log.info("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); - throw new Throwable("闆嗘垚閰嶇疆缂哄皯浜哄憳搴撹妭鐐逛俊鎭�,personLibrary->" + personLibrary); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemCode.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); } - String personClassCode = personAndDeptConfig.getPersonClassCode(); + orgMasterDataList = orgData.getMasterData(); + String deptLibrary = personAndDeptConfig.getDeptLibrary(); + if (StringUtils.isBlank(deptLibrary)) { + success.set(false); + log.info("闆嗘垚閰嶇疆缂哄皯閮ㄩ棬搴撹妭鐐逛俊鎭�,deptLibrary->" + deptLibrary); + throw new Throwable("闆嗘垚閰嶇疆缂哄皯閮ㄩ棬搴撹妭鐐逛俊鎭�,deptLibrary->" + deptLibrary); + } + String deptClassCode = personAndDeptConfig.getDeptClassCode(); ClassfyVO classfyVO = new ClassfyVO(); - classfyVO.setLibrary(personLibrary); - classfyVO.setClassCode(personClassCode); - CodeClassifyVO codeClassifyVO=this.getClassfy(classfyVO,personLibrary); + classfyVO.setLibrary(deptLibrary); + classfyVO.setClassCode(deptClassCode); + CodeClassifyVO codeClassifyVO=this.getClassfy(classfyVO,deptLibrary); log.info("end锛氬垎绫绘煡璇㈠畬姣�"); //鑾峰彇鍒嗙被妯℃澘淇℃伅 if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){ @@ -758,7 +775,7 @@ CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid()); if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){ success.set(false); - throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�"); + throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�"); } List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) && @@ -861,7 +878,7 @@ LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs=new LinkedList<>(); if(editDatasVO.getObject()!=null&&editDatasVO.getObject().size()>0){ DataObjectVO dataObjectVO = new DataObjectVO(); - this.getConfigDatas(systemCode, personLibrary, editDatasVO, attrVOS, dataObjectVO); + this.getConfigDatas(systemCode, deptLibrary, editDatasVO, attrVOS, dataObjectVO); log.info("start锛氫慨鏀规暟鎹墽琛屽畬姣�"); boolean personApplyGroupCode =personAndDeptConfig.isPersonApplyGroupCode(); mdmIOService.batchSyncEditDatas(codeClassifyVO,dataObjectVO, resultDataObjectDetailDOs,personApplyGroupCode); @@ -869,7 +886,7 @@ } if(applyDatasVO.getObject()!=null&&applyDatasVO.getObject().size()>0) { DataObjectVO dataObjectVO = new DataObjectVO(); - this.getConfigDatas(systemCode, personLibrary, applyDatasVO, attrVOS, dataObjectVO); + this.getConfigDatas(systemCode, deptLibrary, applyDatasVO, attrVOS, dataObjectVO); CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid()); CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo); @@ -955,7 +972,7 @@ } }catch (Throwable e){ success.set(false); - message="浜哄憳鏁版嵁鎺ュ彈澶辫触:"+e.getMessage(); + message="閮ㄩ棬鏁版嵁鎺ュ彈澶辫触:"+e.getMessage(); //缁勭粐杩斿洖缁撴灉 boolean finalSuccess = success.get(); String finalMessage = message; @@ -1032,7 +1049,12 @@ UserVO userVo = interParameterVO.getData().getUser(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest()); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(Locale.ROOT),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + errorid = "1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } List<ClassfyVO> classVOList = classfysVO.getClassify(); InterParameterVO finalInterParameterVO = interParameterVO; //杩欐槸璐﹀彿淇℃伅 @@ -1060,7 +1082,7 @@ if(CODE_CHECKCONFIG) { //鏍¢獙鏄惁閰嶇疆 DockingSystemConfig dockingSystemConfig= checkIspass(finalSystemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue(),codeClassifyVO.getOid()); - if(dockingSystemConfig==null){ + if(dockingSystemConfig==null||StringUtils.isBlank(dockingSystemConfig.getOid())){ objerrorCode ="101"; throw new Throwable("绯荤粺鏍囪瘑涓恒��"+ finalSystemId +"銆戯紝闆嗘垚鍒嗙被涓恒��"+codeClassifyVO.getName()+"銆戜互涓婂垎绫伙紝"+sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); } @@ -1140,10 +1162,10 @@ if(!CollectionUtils.isEmpty(resultClassfyVOList)) { resultClassfyVOList.stream().forEach(xMLResultClassfyVO -> { xMLResultClassfyVO.getObjects().stream().forEach(objec -> { - if (!(objec.getErrorid().equals("0") || objec.getErrorid().equals("204"))) { + if (!(objec.getErrorid().equals("0")||objec.getErrorid().equals("201") ||objec.getErrorid().equals("205")|| objec.getErrorid().equals("204"))) { issucess[0] = false; - msg=objec.getMsg(); } + msg=objec.getMsg(); }); }); } @@ -1208,7 +1230,12 @@ systemId=queryData.getSystemId(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest()); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + errorid = "1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } QueryLibraryVO libraryVO= queryData.getLibrary(); String libId= libraryVO.getId(); @@ -1369,7 +1396,12 @@ UserVO userVo=condtionsVO.getUser(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest()); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + errorid = "1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } CondtionVO condtionVO= condtionsVO.getCondtion(); SessionInfo sessionInfo = new SessionInfo(); sessionInfo.setUserId(userVo.getUserName()); @@ -1417,7 +1449,7 @@ if(CODE_CHECKCONFIG) { //鏍¢獙鏄惁閰嶇疆 DockingSystemConfig dockingSystemConfig= checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getValue(),currentCodeClassify[0].getOid()); - if(dockingSystemConfig==null){ + if(dockingSystemConfig==null||StringUtils.isBlank(dockingSystemConfig.getOid())){ errorid ="101"; throw new Throwable("绯荤粺鏍囪瘑涓恒��"+ systemId +"銆戯紝闆嗘垚鍒嗙被涓恒��"+currentCodeClassify[0].getName()+"銆戜互涓婂垎绫伙紝"+sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); } @@ -1587,7 +1619,12 @@ systemId=queryData.getSystemId(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest()); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + errorid = "1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } QueryLibraryVO libraryVO= queryData.getLibrary(); String libId= libraryVO.getId(); @@ -2045,7 +2082,12 @@ UserVO userVo = applyBZParamVO.getData().getUser(); //鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭� //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(), this.getRequest()); - passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + try { + passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(),this.getRequest()); + }catch (Throwable e){ + errorid[0] = "1"; + throw new Throwable("鐢ㄦ埛閴存潈澶辫触"); + } //杩欐槸璐﹀彿淇℃伅 SessionInfo sessionInfo = new SessionInfo(); sessionInfo.setUserId(userVo.getUserName()); @@ -2068,7 +2110,7 @@ //鏍¢獙鏄惁閰嶇疆 DockingSystemConfig dockingSystemConfig=null; dockingSystemConfig=checkIspass(finalSystemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue(),codeClassifyVO.getOid()); - if(dockingSystemConfig==null){ + if(dockingSystemConfig==null||StringUtils.isBlank(dockingSystemConfig.getOid())){ errorid[0] ="101"; throw new Throwable("绯荤粺鏍囪瘑涓恒��"+ finalSystemId +"銆戯紝闆嗘垚鍒嗙被涓恒��"+codeClassifyVO.getName()+"銆戜互涓婂垎绫伙紝"+sysIntegrationPushTypeEnum.ACCPET_APPCODE.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); } @@ -2138,6 +2180,7 @@ codeBZApplyDTO.setLastModifier(applyBZDataVO.getEditor()); codeBZApplyDTO.setLcStatus(applyBZDataVO.getStatus()); ApplyBZDatasVO newApplyBZDatasVO=new ApplyBZDatasVO(); + applyBZDataVO.setProp(proppertyVOList); newApplyBZDatasVO.setObject(Arrays.asList(applyBZDataVO)); log.info("end锛氭暟鎹粍缁囧畬姣�"); this.getConfigDatas(finalSystemId, finalLibray, newApplyBZDatasVO, attrVOS, dataObjectVO); @@ -2185,10 +2228,10 @@ if(!CollectionUtils.isEmpty(resultClassfyVOList)) { resultClassfyVOList.stream().forEach(xMLResultClassfyVO -> { xMLResultClassfyVO.getObjects().stream().forEach(objec -> { - if (!(objec.getErrorid().equals("0") || objec.getErrorid().equals("204"))) { + if (!(objec.getErrorid().equals("0")||objec.getErrorid().equals("201")||objec.getErrorid().equals("205") || objec.getErrorid().equals("204"))) { issucess[0] = false; - msg=objec.getMsg(); } + msg=objec.getMsg(); }); }); } @@ -2204,6 +2247,7 @@ //璋冪敤闆嗗洟鐢宠鎺ュ彛鐢宠闆嗗洟鐮� return resultStr; } + private void setPropertyValue(String key,String value,List<ProppertyVO> proppertyVOList){ ProppertyVO proppertyVO=new ProppertyVO(); proppertyVO.setKey(key); @@ -2211,6 +2255,7 @@ proppertyVOList.add(proppertyVO); } + /*** * 鏌ヨ鏍¢獙鍒嗙被淇℃伅 * @param classfyVO @@ -2253,6 +2298,7 @@ } return classifyVO; } + /*** * 鏌ヨ鏍¢獙鍒嗙被淇℃伅 * @param classfyVO @@ -2298,9 +2344,11 @@ private List<ClientBusinessObject> ChangeMapTOClientBusinessObjects(List<Map<String,String>> oldDataMap){ List<ClientBusinessObject> clientBusinessObjectList=new ArrayList<>(); + DefaultAttrAssimtUtil.mapToLowerCase(oldDataMap,true); + final BladeUser user = AuthUtil.getUser(); oldDataMap.stream().forEach(dataMap->{ ClientBusinessObject clientBusinessObject=new ClientBusinessObject(); - DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject,true); + DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject,false,user); for (String key:dataMap.keySet()){ Object value= dataMap.getOrDefault(key,""); clientBusinessObject.setAttributeValue(key.toLowerCase(Locale.ROOT),value==null?"":value.toString()); @@ -2309,7 +2357,6 @@ }); return clientBusinessObjectList; } - private List<CodeOrderSecDTO> getRuleCodeOrderSecDTOsBZ(CodeRuleVO ruleVO,CodeClassifyFullInfoBO classifyFullInfo){ List<CodeBasicSecVO> codeBasicSecVOS= ruleVO.getSecVOList(); @@ -2322,7 +2369,6 @@ } return codeOrderSecDTOList; } - /*** * 鏍规嵁浼犲叆鐨勫弬鏁颁俊鎭牎楠岀爜娈佃鍒� @@ -2387,41 +2433,60 @@ return codeOrderSecDTOList; } + /*** + * 璇诲彇灞炴�ф槧灏勯厤缃俊鎭� + * @param systemId + * @param libray + * @param applyDatasVO + * @param codeClassifyTemplateAttrVOList + * @param dataObjectVO + * @throws Throwable + */ public void getConfigDatas(String systemId,String libray, ApplyBZDatasVO applyDatasVO,List<CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOList,DataObjectVO dataObjectVO) throws Throwable { LinkedHashMap<String,LinkedHashMap<String,String>> dataKeyValueMap=new LinkedHashMap<>(); //濡傛灉灏嗘暟鎹浆鎹㈡垚鎵�闇�瑕佺殑鏁版嵁瀵硅薄 Map<String, String> attrMapConfigMap=new HashMap<>(); Map<String, String> propMaps=new HashMap<>(); - try { - log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); - Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); - log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); - //stringStringMap.put("RLM","D:\\RLM.xml"); - if(!CollectionUtils.isEmpty(stringStringMap)) { + log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); + Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); + log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); + //stringStringMap.put("RLM","D:\\RLM.xml"); + if(!CollectionUtils.isEmpty(stringStringMap)) { + List<LibraryClsfDO> libraryClsfDOList=new ArrayList<>(); + try { log.info("info锛氶渶瑕佽鍙栭厤缃枃浠�"); LibraryDO libraryDO = gennerAttrMapUtil.getNewInstance().gennerAttrMapBySystem(systemId, stringStringMap); - List<LibraryClsfDO> libraryClsfDOList = libraryDO.getClsf(); - if(!CollectionUtils.isEmpty(libraryClsfDOList)) { - Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); - String path=stringStringMap.get(systemId); - if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); - List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); - propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); - }else{ - throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�"+systemId+"銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�"+path+"銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��"+libray+"銆戝睘鎬ф槧灏勪俊鎭厤缃�"); - } - } + libraryClsfDOList = libraryDO.getClsf(); + } catch (Throwable e) { + objerrorCode = "1"; + e.printStackTrace(); + throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); } - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); - }catch (Throwable e){ - objerrorCode="1"; - e.printStackTrace(); - throw new Throwable("MDM闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); + // String path = stringStringMap.get(systemId); + // 蹇界暐key澶у皬鍐欙紝鑾峰彇閰嶇疆鐨勬槧灏勬枃浠惰矾寰� + String path = VciBaseUtil.getMapStrValueIgnoreCase(stringStringMap,systemId); + if (!CollectionUtils.isEmpty(libraryClsfDOList)) { + Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); + if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); + List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); + propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); + } else { + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏈幏鍙栧埌闆嗘垚灞炴�ф槧灏勭郴缁熼厤缃俊鎭�"); } + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); LinkedList<String> rowNameList=new LinkedList<>(); LinkedHashMap<String,Integer> filedIndexMap=new LinkedHashMap<>(); //鏍规嵁鍒嗙被妯℃澘缁勭粐鏁版嵁 @@ -2496,7 +2561,13 @@ } /*** - * 鏍规嵁灞炴�ф槧灏勮浆鎹㈢紪鐮佹墍闇�瀛楁 + * 璇诲彇灞炴�ф槧灏勯厤缃俊鎭� + * @param systemId + * @param libray + * @param applyDatasVO + * @param codeClassifyTemplateAttrVOList + * @param dataObjectVO + * @throws Throwable */ public void getConfigDatas(String systemId,String libray, ApplyDatasVO applyDatasVO,List<CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOList,DataObjectVO dataObjectVO) throws Throwable { @@ -2504,35 +2575,45 @@ //濡傛灉灏嗘暟鎹浆鎹㈡垚鎵�闇�瑕佺殑鏁版嵁瀵硅薄 Map<String, String> attrMapConfigMap=new HashMap<>(); Map<String, String> propMaps=new HashMap<>(); - try { - log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); - Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); - log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); - //stringStringMap.put("RLM","D:\\RLM.xml"); - if(!CollectionUtils.isEmpty(stringStringMap)) { + log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); + Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); + log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); + //stringStringMap.put("RLM","D:\\RLM.xml"); + if(!CollectionUtils.isEmpty(stringStringMap)) { + List<LibraryClsfDO> libraryClsfDOList=new ArrayList<>(); + try { log.info("info锛氶渶瑕佽鍙栭厤缃枃浠�"); LibraryDO libraryDO = gennerAttrMapUtil.getNewInstance().gennerAttrMapBySystem(systemId, stringStringMap); - List<LibraryClsfDO> libraryClsfDOList = libraryDO.getClsf(); - if(!CollectionUtils.isEmpty(libraryClsfDOList)) { - Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); - String path=stringStringMap.get(systemId); - if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); - List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); - propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); - }else{ - throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�"+systemId+"銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�"+path+"銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��"+libray+"銆戝睘鎬ф槧灏勪俊鎭厤缃�"); - } - } + libraryClsfDOList = libraryDO.getClsf(); + } catch (Throwable e) { + objerrorCode = "1"; + e.printStackTrace(); + throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); } - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); - }catch (Throwable e){ - objerrorCode="1"; - e.printStackTrace(); - throw new Throwable("MDM闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); + // String path = stringStringMap.get(systemId); + // 蹇界暐key澶у皬鍐欙紝鑾峰彇閰嶇疆鐨勬槧灏勬枃浠惰矾寰� + String path = VciBaseUtil.getMapStrValueIgnoreCase(stringStringMap,systemId); + if (!CollectionUtils.isEmpty(libraryClsfDOList)) { + Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); + if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); + List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); + propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); + } else { + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏈幏鍙栧埌闆嗘垚灞炴�ф槧灏勭郴缁熼厤缃俊鎭�"); } + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); LinkedList<String> rowNameList=new LinkedList<>(); LinkedHashMap<String,Integer> filedIndexMap=new LinkedHashMap<>(); //鏍规嵁鍒嗙被妯℃澘缁勭粐鏁版嵁 @@ -2610,6 +2691,7 @@ throw new Throwable("缁勭粐鏁版嵁鏄犲皠鍊煎け璐�"); } } + /*** * 璁板綍鏃ュ織淇℃伅 * @param systemId @@ -2723,8 +2805,15 @@ */ private DockingSystemConfig checkIspass(String systemId,String type,String operationType,String classOid){ log.info("systemId锛�"+systemId+",type:"+SysIntegrationDataFlowTypeEnum.getTextByValue(type)+",operationType:"+sysIntegrationPushTypeEnum.getTextByValue(operationType)+",classOid:"+classOid); - CodeClassifyVO codeClassifyVO= classifyService.getObjectByOid(classOid); - classOid=codeClassifyVO.getOid(); + //CodeClassifyVO codeClassifyVO= classifyService.getObjectByOid(classOid); + List<CodeClassify> codeClassifyList= classifyService.selectAllLevelParentByOid(classOid); + List<String> classifyOids=new ArrayList<>(); + if(!CollectionUtils.isEmpty(codeClassifyList)) { + classifyOids = codeClassifyList.stream().map(CodeClassify::getOid).collect(Collectors.toList()); + }else{ + return null; + } + //classOid=codeClassifyVO.getOid(); //鏍规嵁绫诲瀷鍘绘煡璇㈤渶瑕侀泦鎴愮殑鍒嗙被鎴栬�呮暟鎹� LambdaQueryWrapper<DockingSystemConfig> queryWrapper = Wrappers.<DockingSystemConfig>lambdaQuery(); queryWrapper.eq(DockingSystemConfig::getUsedFlag, MdmDuckingConstant.SEND_FLAG_TRUE); @@ -2732,11 +2821,16 @@ queryWrapper.eq(DockingSystemConfig::getDataFlowType,type); queryWrapper.eq(DockingSystemConfig::getPushType,operationType); if(StringUtils.isNotBlank(classOid)){ - queryWrapper.in(DockingSystemConfig::getClassifyOid,classOid); + queryWrapper.in(DockingSystemConfig::getClassifyOid,classifyOids); } List<DockingSystemConfig> dockingSystemConfigList=new ArrayList<>(); dockingSystemConfigList= dockingSystemConfigList=dockingSystemConfigService.list(queryWrapper); if(!CollectionUtils.isEmpty(dockingSystemConfigList)){ + return dockingSystemConfigList.get(0); + }else{ + return null; + } + /*if(!CollectionUtils.isEmpty(dockingSystemConfigList)){ return dockingSystemConfigList.get(0); }else{ if(StringUtils.isNotBlank(codeClassifyVO.getParentCodeClassifyOid())) { @@ -2747,6 +2841,6 @@ return dockingSystemConfigList.get(0); }else{ return new DockingSystemConfig(); - } + }*/ } } -- Gitblit v1.9.3