From c8844d5167ead638cadabc14fe245ac35384456e Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期二, 10 十月 2023 10:15:32 +0800 Subject: [PATCH] 定时器推送更将增加集成系统唯一标识字段以便对方系统更新数据 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 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 a1a876f..ae522ff 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 @@ -43,6 +43,7 @@ import javax.annotation.Resource; import java.util.*; +import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.MdmDuckingConstant.*; @@ -59,8 +60,8 @@ public class CodeDuckingSyncServiceImpl implements ICodeDuckingSyncService { @Value("${dataSyncPush.dataParamName:xmlData}") public String DATA_PARAM_NAME; - - + @Value("${dataSyncPush.dataId:itemOid}") + private String itemId; @Resource private MdmEngineService mdmEngineServiceI; @@ -336,6 +337,7 @@ //琛ㄧず鏄富鏁版嵁 CodeClassifyTemplateVO codeClassifyTemplateVO = mdmEngineServiceI.getUsedTemplateByClassifyOid(classifyoid); R<List<Map<String, String>>> r = mdmEngineServiceI.getDataByOid(btmoid, codeClassifyTemplateVO.getOid()); + List<CodeClassifyTemplateAttrVO> attrVOS = codeClassifyTemplateVO.getAttributes(); Map<String/**鑻辨枃鍚嶇О**/, String/**涓枃鍚嶇О**/> attrIdNameMap = attrVOS.stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t.getName(), (o1, o2) -> o2)); Map<String, String> data = new HashMap<>(); @@ -347,7 +349,12 @@ } List<NodeProDTO> nodeProDTOS = new ArrayList<>(); Map<String, String> finalData = data; + AtomicReference<String> newItemId= new AtomicReference<>(""); attrIdNameMap.keySet().forEach(field -> { + if(field.toLowerCase(Locale.ROOT).equals(itemId.toLowerCase(Locale.ROOT))){ + String Value = finalData.get(field); + newItemId.set(Value); + } String outName = attrIdNameMap.get(field); if (finalData.containsKey(field)) { String Value = finalData.get(field); @@ -381,6 +388,7 @@ nodeObjectDTO.setCode(code);//璁剧疆缂栫爜 nodeObjectDTO.setClassCode(classCodeLeves[0]); nodeObjectDTO.setStatus(data.get("lcstatus")); + nodeObjectDTO.setItemid(newItemId.get()); nodeObjectDTO.setLibrary(classCodeLeves[classCodeLeves.length - 1]); nodeObjectDTO.setPro(nodeProDTOS); List<NodeObjectDTO> nodeObjectDTOS = new ArrayList<>(); @@ -506,14 +514,13 @@ } 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.setErroid("0"); resultNodeObjectDTO.setMsg(msg); resultNodeObjectDTO.setCode(dockingSystemConfig.getPushType().equalsIgnoreCase("2")?dockingTask.getClassifyId():dockingTask.getId()); resultNodeObjectDTO.setItemid(dockingTask.getBtmOid()); @@ -523,9 +530,9 @@ for (ResultNodeObjectDTO resultNodeObjectDTO:resultNodeObjectDTOS){ String erroid = resultNodeObjectDTO.getErroid(); msg = resultNodeObjectDTO.getMsg(); - if("0".equals(erroid)){ + if("1".equals(erroid)){ isSend = true; - }else if("1".equals(erroid)){ + }else if("0".equals(erroid)){ isSend=false; }else{ isSend=false; -- Gitblit v1.9.3