From 89a21c0eecacd040e8189faeda6f73f69167cdc9 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 19 六月 2023 14:51:33 +0800 Subject: [PATCH] 合并 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java | 211 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 124 insertions(+), 87 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 d24fc98..08af97d 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 @@ -1,38 +1,35 @@ +/* package com.vci.ubcs.code.service.impl; import com.alibaba.fastjson.JSONObject; -import com.vci.ubcs.code.constant.MdmDuckingConstant; -import com.vci.ubcs.code.dao.CodeClassifyDaoI; -import com.vci.ubcs.code.dao.DockingDataDaoI; -import com.vci.ubcs.code.dao.DockingLogeDaoI; -import com.vci.ubcs.code.dao.DockingTaskDaoI; -import com.vci.ubcs.code.dto.datapush.classify.JsonRootDataDTO; -import com.vci.ubcs.code.dto.datapush.classify.NodeClassifyDTO; -import com.vci.ubcs.code.dto.datapush.classify.NodeDataDTO; -import com.vci.ubcs.code.dto.datapush.classify.NodeLibraryDTO; -import com.vci.ubcs.code.dto.datapush.data.NodeJosnDTO; -import com.vci.ubcs.code.dto.datapush.data.NodeObjectDTO; -import com.vci.ubcs.code.dto.datapush.data.NodeProDTO; -import com.vci.ubcs.code.dto.datapush.data.NodedataDTO; -import com.vci.ubcs.code.dto.datapush.result.ResultJsonDTO; -import com.vci.ubcs.code.dto.datapush.result.ResultNodeDataDTO; -import com.vci.ubcs.code.dto.datapush.result.ResultNodeObjectDTO; -import com.vci.code.model.*; -import com.vci.ubcs.code.service.CodeDuckingSyncServiceI; -import com.vci.ubcs.code.service.MdmEngineServiceI; -import com.vci.ubcs.code.service.SysIntInfoServiceI; -import com.vci.ubcs.code.utils.HttpUtils; -import com.vci.ubcs.code.utils.WsErpClientUtil; import com.thoughtworks.xstream.XStream; import com.thoughtworks.xstream.io.xml.DomDriver; +import com.vci.mdm.constant.MdmDuckingConstant; +import com.vci.mdm.dao.*; +import com.vci.mdm.dto.datapush.classify.JsonRootDataDTO; +import com.vci.mdm.dto.datapush.classify.NodeClassifyDTO; +import com.vci.mdm.dto.datapush.classify.NodeDataDTO; +import com.vci.mdm.dto.datapush.classify.NodeLibraryDTO; +import com.vci.mdm.dto.datapush.data.NodeJosnDTO; +import com.vci.mdm.dto.datapush.data.NodeObjectDTO; +import com.vci.mdm.dto.datapush.data.NodeProDTO; +import com.vci.mdm.dto.datapush.data.NodedataDTO; +import com.vci.mdm.dto.datapush.result.ResultJsonDTO; +import com.vci.mdm.dto.datapush.result.ResultNodeDataDTO; +import com.vci.mdm.dto.datapush.result.ResultNodeObjectDTO; +import com.vci.mdm.model.*; +import com.vci.mdm.pagemodel.CodeClassifyTemplateAttrVO; +import com.vci.mdm.pagemodel.CodeClassifyTemplateVO; +import com.vci.mdm.pagemodel.SysIntInfoVO; +import com.vci.mdm.service.*; +import com.vci.mdm.utils.*; import com.vci.starter.web.constant.QueryOptionConstant; import com.vci.starter.web.enumpck.UserSecretEnum; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.SessionInfo; import com.vci.starter.web.util.VciBaseUtil; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.ubcs.code.model.*; import com.vci.web.pageModel.BatchCBO; import com.vci.web.redis.RedisService; import com.vci.web.service.WebBoServiceI; @@ -41,10 +38,6 @@ import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springblade.code.model.*; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; -import com.vci.ubcs.code.vo.pagemodel.SysIntInfoVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; @@ -57,76 +50,100 @@ import java.util.*; import java.util.stream.Collectors; +import static com.vci.mdm.constant.MdmDuckingConstant.*; + +*/ /** * 涓婚搴撻泦鎴愭湇鍔� * @author wangyi * @date 2022-03-20 - */ + *//* + @Service public class CodeDuckingSyncServiceImpl implements CodeDuckingSyncServiceI { - /** + */ +/** * 鏃ュ織 - */ + *//* + private Logger logger = LoggerFactory.getLogger(getClass()); - /** + */ +/** * 闆嗘垚鎺ㄩ�佷换鍔℃暟鎹搷浣滃眰 - */ + *//* + @Resource private DockingTaskDaoI dockingTaskDaoI; - /** + */ +/** * 闆嗘垚鎺ㄩ�佷换鍔℃暟鎹搷浣滃眰 - */ + *//* + @Resource private DockingDataDaoI dockingDataDaoI; - /** + */ +/** * 闆嗘垚鏃ュ織鏁版嵁鎿嶄綔灞� - */ + *//* + @Resource private DockingLogeDaoI dockingLogeDaoI; - /** + */ +/** * 妯℃澘灞炴�ф暟鎹搷浣滃眰 - */ + *//* + @Resource private CodeClassifyDaoI codeClassifyDaoI; - /** + */ +/** * 涓氬姟绫诲瀷鎿嶄綔鐨勬湇鍔� - */ - @Autowired - private WebBoServiceI boService; + *//* - /** + @Autowired + private WebBoServiceI boService; + + */ +/** * 缂撳瓨鏈嶅姟 - */ + *//* + @Autowired private RedisService redisService; - /** + */ +/** * 鏁版嵁鏈嶅姟 - */ + *//* + @Autowired(required = false) @Lazy private MdmEngineServiceI mdmEngineServiceI; - /** + */ +/** * 瑕佹帹閫佺郴缁熺殑鏈嶅姟 - */ + *//* + @Autowired private SysIntInfoServiceI sysIntInfoServiceI; @Value("${dataSyncPush.dataParamName:xmlData}") public String DATA_PARAM_NAME; - /** + */ +/** * 瀹氭椂浠诲姟鎺ㄩ�� - */ + *//* + @Override public void DockingDataSyncScheduing(){ // insertCache2(); @@ -134,20 +151,24 @@ sendpushDataForService(); } - /** + */ +/** * 鍒嗙被瀹氭椂浠诲姟鎺ㄩ�� - */ + *//* + @Override public void DockingClassSyncScheduing(){ initPushDataTaks(2);//鍒嗙被鎺ㄩ�� sendpushClsfForService(); } - /** + */ +/** * 鎵嬪姩鎺ㄩ�佷负瀹屾垚鐨勬暟鎹� * @param oids * @return - */ + *//* + @Override public BaseResult sendData(String oids) { VciBaseUtil.alertNotNull(oids,"绯荤粺闆嗘垚鍩虹淇℃伅鏁版嵁瀵硅薄",oids,"绯荤粺闆嗘垚鍩虹淇℃伅鐨勪富閿�"); @@ -157,13 +178,13 @@ Map<String,List<DockingTaskDO>> typeDockingTaskDOMap=new HashMap<>(); newDockingTaskDOs.stream().forEach(newDockingTaskDO->{ String btmId=newDockingTaskDO.getBtmid(); - if(btmId.equalsIgnoreCase(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT))){ - List<DockingTaskDO> dockingTaskDOList= typeDockingTaskDOMap.get(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)); + if(btmId.equalsIgnoreCase(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT))){ + List<DockingTaskDO> dockingTaskDOList= typeDockingTaskDOMap.get(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)); if(CollectionUtils.isEmpty(dockingTaskDOList)){ dockingTaskDOList=new ArrayList<>(); } dockingTaskDOList.add(newDockingTaskDO); - typeDockingTaskDOMap.put(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT),dockingTaskDOList); + typeDockingTaskDOMap.put(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT),dockingTaskDOList); }else{ List<DockingTaskDO> dockingTaskDOList= typeDockingTaskDOMap.get("data"); if(CollectionUtils.isEmpty(dockingTaskDOList)){ @@ -176,7 +197,7 @@ typeDockingTaskDOMap.keySet().forEach(type->{ List<DockingTaskDO> DockingTaskDO=typeDockingTaskDOMap.get(type); if(!CollectionUtils.isEmpty(DockingTaskDO)){ - if(type.equalsIgnoreCase(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT))){ + if(type.equalsIgnoreCase(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT))){ this.sendpushClsfForService(DockingTaskDO); }else{ this.sendpushDataForService(DockingTaskDO); @@ -185,10 +206,12 @@ }); return BaseResult.successMsg("鎵嬪姩鎺ㄩ�佸畬鎴�,璇锋牳瀵规槸鍚︽帹閫佹垚鍔�"); } - /*** + */ +/*** * 鏌ヨredis涓暟鎹紝瀵规瘮鍚庢彃鍏ockingtask * @param type - */ + *//* + private void initPushDataTaks(int type){ initSysadmin(); //sysintinfo鏌ヨ瑕佹帹閫佺殑涓婚搴撳拰鐩稿叧绯荤粺淇℃伅 @@ -215,9 +238,9 @@ VciQueryWrapperForDO queryWrapperForDO = new VciQueryWrapperForDO(DockingDataDO.class); queryWrapperForDO.addQueryMap("sendflag","false"); if(type==2){ - queryWrapperForDO.addQueryMap("btmTypeId", MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)); + queryWrapperForDO.addQueryMap("btmTypeId",DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)); }else { - queryWrapperForDO.addQueryMap("btmTypeId", QueryOptionConstant.NOTIN + "(" + VciBaseUtil.toInSql(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)) + ")"); + queryWrapperForDO.addQueryMap("btmTypeId", QueryOptionConstant.NOTIN + "(" + VciBaseUtil.toInSql(DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT)) + ")"); } List<DockingDataDO> dataList = dockingDataDaoI.selectByWrapper(queryWrapperForDO); @@ -261,7 +284,7 @@ for (SysIntInfoDO sysIntInfoVOi:effectiveSysIntInfoVOs){ DockingTaskDO dockingTaskDO = new DockingTaskDO(); dockingTaskDO.setOid(redisService.getUUIDEveryDay()); - dockingTaskDO.setSendflag(MdmDuckingConstant.SEND_FLAG_FALSE); + dockingTaskDO.setSendflag(SEND_FLAG_FALSE); dockingTaskDO.setId(id);//缂栫爜 dockingTaskDO.setUniquecode(uniquecode); dockingTaskDO.setBtmoid(btmoid);//鏁版嵁oid @@ -288,7 +311,7 @@ WebUtil.setPersistence(true); boService.persistenceBatch(batchCBO); //dockingTaskDaoI.updateByPrimaryKey鏂规硶鎶ラ敊浜嗭紝鎵�浠ユ墜鍐欎簡杩欎釜 - boolean u = updateDockingDatasSendFlag(dataoid, MdmDuckingConstant.SEND_FLAG_TRUE); + boolean u = updateDockingDatasSendFlag(dataoid,SEND_FLAG_TRUE); if(!u){ logger.error("闆嗘垚data鍒嗚В浠诲姟澶辫触锛乨ataoid:"+dataoid); continue; @@ -300,14 +323,16 @@ initSysadmin(); //鏌ヨ鍝簺浠诲姟杩樻病鏈夋墽琛屽畬鎴� VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(DockingTaskDO.class); - queryWrapper.addQueryMap("sendFlag", MdmDuckingConstant.SEND_FLAG_FALSE); - queryWrapper.addQueryMap("btmId", QueryOptionConstant.NOTIN + "(" + VciBaseUtil.toInSql(MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toUpperCase(Locale.ROOT)) + ")"); + queryWrapper.addQueryMap("sendFlag",MdmDuckingConstant.SEND_FLAG_FALSE); + queryWrapper.addQueryMap("btmId", QueryOptionConstant.NOTIN + "(" + VciBaseUtil.toInSql(DOCKING_DEFAULT_CLASSIFY.toUpperCase(Locale.ROOT)) + ")"); List<DockingTaskDO> dockingTaskDOS = dockingTaskDaoI.selectByWrapper(queryWrapper); sendpushDataForService(dockingTaskDOS); } - /*** + */ +/*** * 鍙戦�佺紪鐮佷富鏁版嵁 - */ + *//* + private void sendpushDataForService (List<DockingTaskDO> dockingTaskDOS){ //姣忎釜task渚濇鎵ц鎺ㄩ�� @@ -328,10 +353,14 @@ CodeClassifyTemplateVO codeClassifyTemplateVO = mdmEngineServiceI.getUsedTemplateByClassifyOid(classifyoid); BaseResult<Map<String, String>> baseResult = 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*/ +/**涓枃鍚嶇О**//* +> attrIdNameMap = attrVOS.stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t.getName(), (o1, o2) -> o2)); Map<String, String> data = new HashMap<>(); if (baseResult == null) { - JSONObject josni = redisService.getCacheObject(MdmDuckingConstant.DOCKING_CACHE2_DELETE + btmoid); + JSONObject josni = redisService.getCacheObject(DOCKING_CACHE2_DELETE + btmoid); data = (Map) josni; } else { data = baseResult.getObj(); @@ -366,7 +395,7 @@ //鏌ヨ鎺ㄩ�佹帴鍙e弬鏁� SysIntInfoVO sysIntInfoVO = sysIntInfoServiceI.getObjectByOid(systeminfooid); String paramType = sysIntInfoVO.getParamtype();//xml/json - if (paramType.equals(MdmDuckingConstant.DATATYPE_JSON)) { + if (paramType.equals(DATATYPE_JSON)) { Object object = JSONObject.toJSON(nodeJosnDTO); sendString = object.toString(); } else { @@ -392,13 +421,15 @@ //鏌ヨ鍝簺浠诲姟杩樻病鏈夋墽琛屽畬鎴� VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(DockingTaskDO.class); queryWrapper.addQueryMap("sendFlag",MdmDuckingConstant.SEND_FLAG_FALSE); - queryWrapper.addQueryMap("btmId", MdmDuckingConstant.DOCKING_DEFAULT_CLASSIFY.toUpperCase(Locale.ROOT)); + queryWrapper.addQueryMap("btmId",DOCKING_DEFAULT_CLASSIFY.toUpperCase(Locale.ROOT)); List<DockingTaskDO> dockingTaskDOS = dockingTaskDaoI.selectByWrapper(queryWrapper); sendpushClsfForService(dockingTaskDOS); } - /*** + */ +/*** * 鍙戦�佸垎绫绘暟鎹� - */ + *//* + private void sendpushClsfForService(List<DockingTaskDO> dockingTaskDOS){ //姣忎釜task渚濇鎵ц鎺ㄩ�� for (DockingTaskDO dockingTaskDO:dockingTaskDOS){ @@ -422,15 +453,16 @@ nodeClassifyDTO.setFullPathName(codeClassifyDO.getPath());//鍏ㄨ矾寰� nodeClassifyDTO.setLcStatus(codeClassifyDO.getLcStatus());//鐘舵�� // CodeClassifyDO parentClassDo=codeClassifyDaoI.selectByPrimaryKey(codeClassifyDO.getParentCodeClassifyOid()); - nodeClassifyDTO.setPid(codeClassifyDO.getId());//鐖秈d鑺傜偣 + nodeClassifyDTO.setPid(codeClassifyDO.getParentCodeClassifyOid());//鐖秈d鑺傜偣 nodeClassifyDTO.setId(codeClassifyDO.getOid());//鍒嗙被oid nodeClassifyDTO.setName(codeClassifyDO.getName());//鍒嗙被鍚嶇О nodeClassifyDTOList.add(nodeClassifyDTO); NodeLibraryDTO nodeLibraryDTO=new NodeLibraryDTO(); - nodeLibraryDTO.setClassify(nodeClassifyDTOList); CodeClassifyDO rootClassify=codeClassifyDaoI.getRootClassify(btmoid); + nodeLibraryDTO.setClassify(nodeClassifyDTOList); nodeLibraryDTO.setId(rootClassify.getOid()); nodeLibraryDTO.setName(rootClassify.getName()); + nodeLibraryDTO.setClassCode(rootClassify.getId()); NodeDataDTO nodeDataDTO=new NodeDataDTO(); nodeDataDTO.setLibrary(nodeLibraryDTO); jsonRootDataDTO.setData(nodeDataDTO); @@ -438,7 +470,7 @@ //鏌ヨ鎺ㄩ�佹帴鍙e弬鏁� SysIntInfoVO sysIntInfoVO = sysIntInfoServiceI.getObjectByOid(systeminfooid); String paramType = sysIntInfoVO.getParamtype();//xml/json - if(paramType.equals(MdmDuckingConstant.DATATYPE_JSON)){ + if(paramType.equals(DATATYPE_JSON)){ Object object = JSONObject.toJSON(jsonRootDataDTO); sendString = object.toString(); }else{ @@ -460,11 +492,13 @@ } } - /*** + */ +/*** * 璋冪敤鎺ュ彛 * @param sysIntInfoVO * @throws Throwable - */ + *//* + private void callInterface(String sendString , SysIntInfoVO sysIntInfoVO,DockingTaskDO dockingTaskDO,BatchCBO batchCBO) throws Throwable{ String paramString = ""; @@ -487,8 +521,8 @@ List<SysIntParamDO> sysIntParamDOList = sysIntInfoServiceI.getParamsBySystemInfoOid(sysIntInfoVO.getOid()); //鏌ヨheader List<SysIntHeaderDO> sysIntHeaderDOList = sysIntInfoServiceI.getHeadersBySystemInfoOid(sysIntInfoVO.getOid()); - if(type.equals(MdmDuckingConstant.URLTYPE_HTTP)) { - if (requestmethod.equals(MdmDuckingConstant.URLTYPE_GET)) {//GET璇锋眰 + if(type.equals(URLTYPE_HTTP)) { + if (requestmethod.equals(URLTYPE_GET)) {//GET璇锋眰 String sendurl = url + "?" + DATA_PARAM_NAME + "=" + sendString; //鎷兼帴param for (SysIntParamDO sysIntParamDO : sysIntParamDOList) { @@ -496,7 +530,7 @@ } paramString = sendurl; backString = HttpUtils.get(sendurl); - } else if (requestmethod.equals(MdmDuckingConstant.URLTYPE_POST)) {//POST璇锋眰 + } else if (requestmethod.equals(URLTYPE_POST)) {//POST璇锋眰 MultiValueMap<String, String> params = new LinkedMultiValueMap<>(); for (SysIntParamDO sysIntParamDO : sysIntParamDOList) { params.add(sysIntParamDO.getParamkey(), sysIntParamDO.getParamvalue()); @@ -523,7 +557,7 @@ String res="\\\\\""; backString= backString.replaceAll(res,"\"").trim(); } - }else if (type.equals(MdmDuckingConstant.URLTYPE_WEBSERVICE)) {//webserver璇锋眰 + }else if (type.equals(URLTYPE_WEBSERVICE)) {//webserver璇锋眰 MultiValueMap<String, String> params = new LinkedMultiValueMap<>(); for (SysIntParamDO sysIntParamDO : sysIntParamDOList) { params.add(sysIntParamDO.getParamkey(), sysIntParamDO.getParamvalue()); @@ -541,7 +575,7 @@ } ResultJsonDTO resultJsonDTO = new ResultJsonDTO(); - if(returnType.equals(MdmDuckingConstant.DATATYPE_JSON)){ + if(returnType.equals(DATATYPE_JSON)){ resultJsonDTO =JSONObject.toJavaObject(JSONObject.parseObject(backString), ResultJsonDTO.class); }else { //缁勭粐杩斿洖鎺ュ彛淇℃伅 @@ -590,7 +624,7 @@ dockingLogeDO.setParamstring(paramString); dockingLogeDO.setReturnstring(backString); dockingLogeDO.setInterfacestatus(isSend?"true":"false"); - dockingLogeDO.setType(MdmDuckingConstant.DATA_LOGE_OUT); + dockingLogeDO.setType(DATA_LOGE_OUT); dockingLogeDO.setMsg(msg); logger.error("闆嗘垚鎺ㄩ�佹暟鎹�,systemcode:"+dockingTaskDO.getSystemcode()+",systemname:"+dockingTaskDO.getSystemname()+",url:"+url+",param:"+paramString+",e:"+msg); BatchCBO dockingLogeDOBo = dockingLogeDaoI.insert(dockingLogeDO); @@ -616,12 +650,14 @@ @Autowired private PlatformClientUtil platformClientUtil; - /** + */ +/** * dockingdata鏍规嵁oid淇敼sendflag * @param oid * @param sendflag * @return - */ + *//* + public boolean updateDockingDatasSendFlag(String oid,String sendflag){ boolean u=false; String sql = "update PLATFORMBTM_codedockingdata set sendFlag = '"+sendflag+"' where oid='"+oid+"'"; @@ -634,3 +670,4 @@ } } +*/ -- Gitblit v1.9.3