ludc
2024-02-01 a8d80ddd0aef61cbaf1dbe9fe7abec12f0835399
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -7,7 +7,6 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
import com.vci.ubcs.code.Scheduling.NonWebRequestAttributes;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.constant.MdmDuckingConstant;
import com.vci.ubcs.code.dto.CodeOrderDTO;
@@ -287,7 +286,9 @@
      searchItemParam.setLastchangedon(lastchangedon);
      searchItemParam.setStatus(itemStatus);//
      Map<String,String>searchDataMap=  VciBaseUtil.objectToMapString(searchItemParam);
      SearchItemVO searchItemVO= mdmSearchItemCodeProvider.getppModelByElem(searchDataMap);
      try {
         paramString=JSONObject.toJSON(searchItemParam).toString();
         SearchItemVO searchItemVO = mdmSearchItemCodeProvider.getppModelByElem(searchItemParam);
      /*SearchItemVO searchItemVO=new SearchItemVO();
      List<SearchItemDataVO> data=new ArrayList<>();
      SearchItemDataVO searchItemDataVO1=initData("1","","pro-00001");
@@ -426,9 +427,9 @@
               Object backObject = JSONObject.toJSON(allResultDataObjectDetailDOS);
               backString=Func.isEmpty(backObject)?"":backObject.toString();
            }
         }
         catch (Throwable e){
            e.printStackTrace();;
            } catch (Throwable e) {
               e.printStackTrace();
               ;
            log.error("查询失败--->"+e);
            success=false;
            backString="查询失败--->"+e;
@@ -443,6 +444,24 @@
               log.error(e.getMessage());
               throw new VciBaseException(e.getMessage());
            }
            }
         }else{
            throw  new Throwable("接口未返回信息");
         }
      }catch (Throwable e1){
         e1.printStackTrace();
         log.error("查询失败--->" + e1);
         //paramString="";
         success = false;
         backString = "查询失败--->" + e1;
         msg = "查询失败--->" + e1;
         try {
            //记录日志
            this.saveLogs(systemId, systemId, paramString, backString, success, msg, "queryData");
         } catch (Throwable e) {
            e.printStackTrace();
            log.error(e.getMessage());
            throw new VciBaseException(e.getMessage());
         }
      }
   }
@@ -723,27 +742,33 @@
      }
      Map<String ,List<DockingSystemConfig>> sysIntInfoDOMap = new HashMap<>();//key=classifyoid,value=list<map>
      for (DockingSystemConfig dockingSystemConfig:dockingSystemConfigList){
         List<DockingSystemConfig> dockingSystemList = sysIntInfoDOMap.get(dockingSystemConfig.getClassifyOid());
         if(dockingSystemList==null){
         String classifyOid= dockingSystemConfig.getClassifyOid();
         String codeclassifOid=codeClassifyService.selectLeafByPid(classifyOid);
         List<String> codeList= VciBaseUtil.str2List(codeclassifOid);
         codeList.stream().forEach(oid -> {
            List<DockingSystemConfig> dockingSystemList = sysIntInfoDOMap.get(oid);
            if(Func.isEmpty(dockingSystemList)){
            dockingSystemList = new ArrayList<>();
         }
         dockingSystemList.add(dockingSystemConfig);
         sysIntInfoDOMap.put(dockingSystemConfig.getClassifyOid(),dockingSystemList);
            sysIntInfoDOMap.put(oid,dockingSystemList);
         });
      }
      sysIntInfoDOMap.forEach((classifyOid,effectiveSysIntInfoVOs)->{
      //根据类型去查询需要集成的分类或者数据
      LambdaQueryWrapper<DockingData> queryWrapper = Wrappers.<DockingData>lambdaQuery();
      queryWrapper.eq(DockingData::getSendFlag,"false");
      if(type==2){
         queryWrapper.eq(DockingData::getBtmId,DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT));
            queryWrapper.eq(DockingData::getBtmId,DOCKING_DEFAULT_CLASSIFY);
      }else {
         queryWrapper.notIn(DockingData::getBtmId,DOCKING_DEFAULT_CLASSIFY.toLowerCase(Locale.ROOT));
            queryWrapper.ne(DockingData::getBtmId,DOCKING_DEFAULT_CLASSIFY);
            queryWrapper.eq(DockingData::getClassifyOid,classifyOid);
      }
      List<DockingData> dataList = dockingDataService.list(queryWrapper);
      for (DockingData mapi:dataList){
         WebUtil.setPersistence(false);
         String dataoid = mapi.getOid();//data对象的oid
         String classifyoid = mapi.getClassifyOid();
            String dataClassifyOid = mapi.getClassifyOid();
         String id = mapi.getId();
         String uniquecode = mapi.getUniqueCode();
         String btmid = mapi.getBtmId();
@@ -752,13 +777,15 @@
         String classifyid = mapi.getClassifyId();
         String classifyname = mapi.getClassifyName();
         String curentClassOid=null;
         if(type==2){
            if(!dataClassifyOid.equals(classifyOid)){
               continue;
            }
            /*if(type==2){
            curentClassOid=btmoid;
         }else{
            curentClassOid=classifyoid;
         }
         List<DockingSystemConfig> effectiveSysIntInfoVOs=new ArrayList<>();
         //根据当前数据的id,查询获取哪些系统需要做集成
            }*/
            /*//根据当前数据的id,查询获取哪些系统需要做集成
         List<CodeClassify> parentLeveDO= codeClassifyService.selectAllLevelParentByOid(curentClassOid);
         if(CollectionUtils.isEmpty(parentLeveDO)){
            continue;//说明这个分类被删掉了,不做处理
@@ -774,7 +801,7 @@
         //如果校验的系统接口信息不存在,则数据不不往信息里推送
         if(CollectionUtils.isEmpty(effectiveSysIntInfoVOs)){
            continue;
         }
            }*/
         List<DockingTask> dockingTask_insert = new ArrayList<>();
         for (DockingSystemConfig sysIntInfoVOi:effectiveSysIntInfoVOs){
            DockingTask dockingTask = new DockingTask();
@@ -785,7 +812,7 @@
            dockingTask.setBtmOid(btmoid);//数据oid
            dockingTask.setBtmId(btmid);//数据业务类型id
            dockingTask.setClassifyId(classifyid);//数据在分类id
            dockingTask.setClassifyOid(classifyoid);//数据所在分类oid
               dockingTask.setClassifyOid(dataClassifyOid);//数据所在分类oid
            dockingTask.setClassifyName(classifyname);//数据所在分类名称
            dockingTask.setSendType(sendtype);//数据推送类型
            dockingTask.setDataOid(dataoid);
@@ -811,6 +838,8 @@
            continue;
         }
      }
      });
   }
   /***