From 778cde15e534dcb350f1354de6ebae88f279414e Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 08 三月 2024 10:15:51 +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     |   10 +-
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java |  171 ++----------------------------------------
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java                  |    7 +
 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java         |   15 +++
 4 files changed, 35 insertions(+), 168 deletions(-)

diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
index 8b576fc..bd9f7d9 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
@@ -78,6 +78,21 @@
 		return null;
 	}
 
+	/**
+	 * 浠巑ap涓幏鍙栧�硷紝骞朵笖鍙互蹇界暐澶у皬鍐�
+	 * @param map
+	 * @param key
+	 * @return
+	 */
+	public static String getMapStrValueIgnoreCase(Map<String, String> map,String key){
+		for (Map.Entry<String, String> entry : map.entrySet()) {
+			if (entry.getKey().equalsIgnoreCase(key)) {
+				return entry.getValue();
+			}
+		}
+		return null;
+	}
+
 	public static String getPk() {
 		return String.valueOf(getPKLong(1,1));
 	}
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 0289569..d21f912 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
@@ -908,9 +908,8 @@
 				DockingSystemConfig dockingSystemConfig = dockingSystemConfigService.getById(systeminfooid);
 				String paramType = dockingSystemConfig.getParamType();//xml/json
 				if(paramType.equals(DATATYPE_JSON)){
-					// Object object = JSONObject.toJSON(jsonRootDataDTO);
-					// sendString = object.toString();
-					sendString = jsonRootDataDTO;
+					 Object object = JSONObject.toJSON(jsonRootDataDTO);
+					 sendString = object;
 				}else{
 					//缁勭粐杩斿洖鎺ュ彛淇℃伅
 					XStream xStream = new XStream(new DomDriver());
@@ -936,7 +935,7 @@
 		for (DockingTask dockingTask:dockingTaskS){
 			//姣忎釜task涓�涓簨鍔★紝寮�鍚�
 			String paramString="";
-			String sendObject="";
+			Object sendString="";
 			String backString="";
 			try {
 				//鏌ヨ绯荤粺鎺ュ彛淇℃伅,ip method,dataType
@@ -1010,16 +1009,17 @@
 				String paramType = dockingSystemConfig.getParamType();//xml/json
 				if (paramType.equals(DATATYPE_JSON)) {
 					Object object = JSONObject.toJSON(nodeJosnDTO);
-					sendObject = object.toString();
+					//sendString = object.toString();
+					sendString = object;
 				} else {
 					//缁勭粐杩斿洖鎺ュ彛淇℃伅
 					XStream xStream = new XStream(new DomDriver());
 					xStream.processAnnotations(NodedataDTO.class);
 					xStream.autodetectAnnotations(true);
-					sendObject = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(nodeDataDTO);
+					sendString = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(nodeDataDTO);
 				}
 				//璋冪敤鎺ュ彛
-				callInterface(sendObject,dockingSystemConfig, dockingTask,"pushData");
+				callInterface(sendString,dockingSystemConfig, dockingTask,"pushData");
 			}catch (Throwable e){
 				e.printStackTrace();
 			}finally {
@@ -1037,7 +1037,7 @@
 	private void callInterface(Object sendObject, DockingSystemConfig dockingSystemConfig,DockingTask dockingTask,String operation) throws  Throwable{
 		String paramString = "";
 		String backString = "";
-		String sendString = dockingSystemConfig.getContentType().equals(DATATYPE_JSON) ? JSONObject.toJSON(sendObject).toString():sendObject.toString();
+		String sendString = sendObject.toString();
 		String msg= "" ;
 		String url = dockingSystemConfig.getRequestUrl();//url
 		List<ResultNodeObjectDTO> resultNodeObjectDTOS =new ArrayList<>();
@@ -1079,160 +1079,7 @@
 					for (DockingSysIntHeader dockingSysIntHeader : dockingSysIntHeaderList) {
 						headers.add(dockingSysIntHeader.getHeaderKey(), dockingSysIntHeader.getHeaderValue());
 					}
-					backString = HttpUtils.postByMediaType(url, params, headers,new MediaType(dockingSystemConfig.getContentType()));
-				}
-				if(backString.startsWith("\"")){
-					backString=backString.substring(backString.indexOf("\"")+1);
-				}
-				if(backString.endsWith("\"")){
-					backString=backString.substring(0,backString.lastIndexOf("\""));
-				}
-				if(backString.contains("\n")){
-					String res="\n";
-					backString=  backString.replaceAll(res,"");
-				}
-				if(backString.contains("\\")){
-					String res="\\\\\"";
-					backString=  backString.replaceAll(res,"\"").trim();
-				}
-			}else if (type.equals(URLTYPE_WEBSERVICE)) {//webserver璇锋眰
-				MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
-				for (DockingSysIntParam dockingSysIntParam : dockingSysIntParamList) {
-					params.add(dockingSysIntParam.getParamKey(), dockingSysIntParam.getParamValue());
-				}
-
-				paramString = sendString;
-				MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
-				for (DockingSysIntHeader dockingSysIntHeader : dockingSysIntHeaderList) {
-					headers.add(dockingSysIntHeader.getHeaderKey(), dockingSysIntHeader.getHeaderValue());
-				}
-				backString = WsErpClientUtil.sendMsg(url, namespace, soapaction, interfaceFunction, targName, sendString, 10000);
-
-			} else {//corba鎺ュ彛
-				//paramString=sendString;
-				//  backString = jacorbClient.getBOFactoryService().sendCode(sendString);
-			}
-
-			ResultJsonDTO resultJsonDTO = new ResultJsonDTO();
-			if(returnType.equals(DATATYPE_JSON)){
-				resultJsonDTO =JSONObject.toJavaObject(JSONObject.parseObject(backString), ResultJsonDTO.class);
-			}else {
-				//缁勭粐杩斿洖鎺ュ彛淇℃伅
-				XStream xStream = new XStream(new DomDriver());
-				xStream.processAnnotations(ResultNodeDataDTO.class);
-				xStream.autodetectAnnotations(true);
-				ResultNodeDataDTO resultNodeDataDTO = (ResultNodeDataDTO) xStream.fromXML(backString);
-				resultJsonDTO.setData(resultNodeDataDTO);
-			}
-			ResultNodeDataDTO resultNodeDataDTO=resultJsonDTO.getData();
-			resultNodeObjectDTOS=resultNodeDataDTO.getObject();
-		}catch (Throwable e){
-			msg="璋冪敤鎺ュ彛澶辫触:"+e.getMessage();
-			e.printStackTrace();
-			log.error("璋冪敤鎺ュ彛澶辫触:"+e);
-			//   throw  new Throwable("璋冪敤鎺ュ彛澶辫触:"+e);
-			ResultNodeObjectDTO   resultNodeObjectDTO=new ResultNodeObjectDTO();
-			resultNodeObjectDTO.setErroid("1");
-			resultNodeObjectDTO.setMsg(msg);
-			resultNodeObjectDTO.setCode(dockingSystemConfig.getPushType().equalsIgnoreCase("2")?dockingTask.getClassifyId():dockingTask.getId());
-			resultNodeObjectDTO.setItemid(dockingTask.getBtmOid());
-			resultNodeObjectDTOS.add(resultNodeObjectDTO);
-		}finally {
-			boolean isSend = false;
-			for (ResultNodeObjectDTO resultNodeObjectDTO:resultNodeObjectDTOS){
-				String erroid = resultNodeObjectDTO.getErroid();
-				msg = resultNodeObjectDTO.getMsg();
-				if("0".equals(erroid)){
-					isSend = true;
-				}else if("1".equals(erroid)){
-					isSend=false;
-				}else{
-					isSend=false;
-				}
-				DockingLog dockingLogeDO = new DockingLog();
-				String oid=VciBaseUtil.getPk();
-				dockingLogeDO.setOid(oid);
-				dockingLogeDO.setSystemCode(dockingTask.getSystemCode());
-				dockingLogeDO.setSystemName(dockingTask.getSystemName());
-				dockingLogeDO.setSystemOid(dockingTask.getSystemOid());
-				dockingLogeDO.setClassifyOid(dockingTask.getClassifyOid());
-				dockingLogeDO.setClassifyId(dockingTask.getClassifyId());
-				dockingLogeDO.setClassifyName(dockingTask.getClassifyName());
-				dockingLogeDO.setCreateTime(new Date());
-				dockingLogeDO.setId(dockingTask.getId());
-				dockingLogeDO.setUniqueCode(dockingTask.getUniqueCode());
-				dockingLogeDO.setParamString(paramString);
-				dockingLogeDO.setReturnString(backString);
-				dockingLogeDO.setInterfaceStatus(isSend?"true":"false");
-				dockingLogeDO.setType(operation);
-				dockingLogeDO.setMsg(msg);
-				log.error("闆嗘垚鎺ㄩ�佹暟鎹�,systemcode:"+dockingTask.getSystemCode()+",systemname:"+dockingTask.getSystemName()+",url:"+url+",param:"+paramString+",e:"+msg);
-				dockingLogeService.save(dockingLogeDO);
-			}
-			//鍏ㄩ兘鎺ユ敹鎴愬姛鐨勬儏鍐典笅,淇敼dockingtask sendflag涓哄凡鍙戦��
-			if(isSend) {
-				dockingTask.setSendFlag(MdmDuckingConstant.SEND_FLAG_TRUE);
-				dockingTask.setLastModifyTime(new Date());
-				dockingTaskService.updateById(dockingTask);
-			}
-		}
-	}
-
-	/**
-	 * 璋冪敤鎺ュ彛锛屼紶鍙備负JSON鏃朵紶object绫诲瀷
-	 * @param sendObject
-	 * @param dockingSystemConfig
-	 * @param dockingTask
-	 * @param operation
-	 * @throws Throwable
-	 */
-	private void callInterfaceByContentType(Object sendObject, DockingSystemConfig dockingSystemConfig,DockingTask dockingTask,String operation,String sendType) throws  Throwable{
-		String paramString = "";
-		String sendString = sendType.equals(DATATYPE_JSON) ? JSONObject.toJSON(sendObject).toString():sendObject.toString();
-		String backString = "";
-		String msg="";
-		String url = dockingSystemConfig.getRequestUrl();//url
-		List<ResultNodeObjectDTO> resultNodeObjectDTOS =new ArrayList<>();
-		try {
-			boolean usedFlag= dockingSystemConfig.getUsedFlag().equals("true")?true:false;
-			if(!usedFlag){
-				throw  new Throwable("鎺ュ彛宸茬粡鍋滅敤锛�");
-			}
-			String type = dockingSystemConfig.getInterfaceType().toLowerCase(Locale.ROOT);//get/post/webserver/corba
-			String paramType = dockingSystemConfig.getParamType();//xml/json
-			String returnType = dockingSystemConfig.getReturnType();//xml/json
-			String requestmethod= dockingSystemConfig.getRequestMethod();
-			String interfaceFunction = dockingSystemConfig.getInterfaceFunction();//涓昏鏄痺ebservice鐨勬柟娉曞悕
-			String namespace = dockingSystemConfig.getNamespace();//namespace
-			String soapaction = dockingSystemConfig.getSoapAction();//soapaction
-			String targName = dockingSystemConfig.getTargetName();//targName
-			String cxfaxis = dockingSystemConfig.getCxfAxis();//webservice鏄痗xf/axis
-			//鏌ヨparam
-			List<DockingSysIntParam> dockingSysIntParamList = dockingSysIntParamService.list(Wrappers.<DockingSysIntParam>query().lambda().eq(DockingSysIntParam::getInfoOid,dockingSystemConfig.getOid()));
-			//鏌ヨheader
-			List<DockingSysIntHeader> dockingSysIntHeaderList = dockingSysIntHeaderService.list(Wrappers.<DockingSysIntHeader>query().lambda().eq(DockingSysIntHeader::getInfoOid,dockingSystemConfig.getOid()));
-			if(type.equals(URLTYPE_HTTP)) {
-				if (requestmethod.equals(URLTYPE_GET)) {//GET璇锋眰
-					String sendurl = url + "?" + DATA_PARAM_NAME + "=" + sendString;
-					//鎷兼帴param
-					for (DockingSysIntParam dockingSysIntParam : dockingSysIntParamList) {
-						sendurl = sendurl + "&" + dockingSysIntParam.getParamKey() + "=" + dockingSysIntParam.getParamValue();
-					}
-					paramString = sendurl;
-					backString = HttpUtils.get(sendurl);
-				} else if (requestmethod.equals(URLTYPE_POST)) {//POST璇锋眰
-					MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
-					for (DockingSysIntParam dockingSysIntParam : dockingSysIntParamList) {
-						params.add(dockingSysIntParam.getParamKey(), dockingSysIntParam.getParamValue());
-					}
-					params.add(DATA_PARAM_NAME,sendObject);
-					paramString = params.toString();
-					MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
-					for (DockingSysIntHeader dockingSysIntHeader : dockingSysIntHeaderList) {
-						headers.add(dockingSysIntHeader.getHeaderKey(), dockingSysIntHeader.getHeaderValue());
-					}
-					// TODO: 2024-02-25鏀癸紝涓轰簡婊¤冻HR浠ュ強鍏朵粬鎯呭喌涓嬫牴鎹瓹ontent-type鐨勭被鍨嬫潵鍙戣姹傦紝骞朵笖param涓殑json鏄渶鍚庣殑鏃跺�欏彂閫佽姹傚啀杞�
-					backString = HttpUtils.postByMediaType(url, params, headers, MediaType.APPLICATION_FORM_URLENCODED);
+					backString = HttpUtils.postByMediaType(url, params, headers,MediaType.valueOf(dockingSystemConfig.getContentType()));
 				}
 				if(backString.startsWith("\"")){
 					backString=backString.substring(backString.indexOf("\"")+1);
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 30d7676..2af4b6c 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
@@ -2355,7 +2355,6 @@
 		return clientBusinessObjectList;
 	}
 
-
 	private List<CodeOrderSecDTO> getRuleCodeOrderSecDTOsBZ(CodeRuleVO ruleVO,CodeClassifyFullInfoBO classifyFullInfo){
 		List<CodeBasicSecVO>  codeBasicSecVOS= ruleVO.getSecVOList();
 		List<CodeOrderSecDTO> codeOrderSecDTOList=new ArrayList<>();
@@ -2367,7 +2366,6 @@
 		}
 		return codeOrderSecDTOList;
 	}
-
 
 	/***
 	 * 鏍规嵁浼犲叆鐨勫弬鏁颁俊鎭牎楠岀爜娈佃鍒�
@@ -2462,7 +2460,9 @@
 				e.printStackTrace();
 				throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�");
 			}
-			String path = stringStringMap.get(systemId);
+			// 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 + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�");
@@ -2587,7 +2587,9 @@
 				e.printStackTrace();
 				throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�");
 			}
-			String path = stringStringMap.get(systemId);
+			// 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 + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�");
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
index 8916bdc..b6b05d8 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/util/gennerAttrMapUtil.java
@@ -6,9 +6,11 @@
 import com.vci.ubcs.code.vo.webserviceModel.attrmap.LibraryDO;
 import com.vci.ubcs.code.webService.config.AttributeMapConfig;
 import com.vci.ubcs.starter.util.LocalFileUtil;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 
+import java.util.Locale;
 import java.util.Map;
 
 @Slf4j
@@ -34,8 +36,9 @@
             throw new Throwable("绯荤粺鏍囪瘑涓虹┖");
         }
         LibraryDO rootDataVO=new LibraryDO();
-        if(system_attrmap.containsKey(systemId)){
-           String path=system_attrmap.get(systemId);
+        if(system_attrmap.containsKey(systemId.toLowerCase(Locale.ROOT)) || system_attrmap.containsKey(systemId.toUpperCase(Locale.ROOT))){
+           //String path = system_attrmap.get(systemId);
+			String path = VciBaseUtil.getMapStrValueIgnoreCase(system_attrmap,systemId);
 		   log.info("绯荤粺鏍囪瘑->"+systemId+"锛涙枃浠跺睘鎬ч厤缃枃浠惰矾寰�->"+path);
            String attributeMapData=  LocalFileUtil.readContentForFile(path);
 		   log.info("璇诲彇鍚庣殑灞炴�ф槧灏勫唴瀹�"+attributeMapData);

--
Gitblit v1.9.3