From 1a7e084b432dbe97bf4d851ea77ac046093f5746 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期六, 26 八月 2023 13:59:34 +0800 Subject: [PATCH] 统一接口配置保存bug修复 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 226 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 179 insertions(+), 47 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 0ec9aa8..1e7ecf0 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 @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.thoughtworks.xstream.XStream; import com.thoughtworks.xstream.io.xml.DomDriver; +import com.vci.ubcs.code.applyjtcodeservice.feign.IMdmInterJtClient; import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO; import com.vci.ubcs.code.constant.MdmDuckingConstant; import com.vci.ubcs.code.dto.CodeOrderDTO; @@ -40,6 +41,7 @@ import com.vci.ubcs.starter.revision.model.TreeQueryObject; import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; import com.vci.ubcs.starter.util.UBCSSqlKeyword; +import com.vci.ubcs.starter.web.constant.QueryOptionConstant; import com.vci.ubcs.starter.web.pagemodel.SessionInfo; import com.vci.ubcs.starter.web.util.BeanUtilForVCI; import com.vci.ubcs.starter.web.util.VciBaseUtil; @@ -57,7 +59,8 @@ import javax.annotation.Resource; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; -import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.MdmEngineConstant.DEFAULT_SYNC_ATTR_LIST; @@ -127,6 +130,9 @@ @Autowired private ICodeClassifyValueService codeClassifyValueService; + + @Resource + private IMdmInterJtClient mdmInterJtClient; /*** * 闆嗘垚鎺ュ彛鏃ュ織鏈嶅姟鐨勯厤缃� */ @@ -148,7 +154,7 @@ @Override public String applyCode(String data, String dataType) throws Throwable { String resultStr = ""; - String errorid="0"; + final String[] errorid = {"0"}; msg="鎴愬姛"; objerrorCode="0"; objerrorMsg="鎴愬姛"; @@ -158,7 +164,7 @@ List<XMLResultClassfyVO> resultClassfyVOList = new ArrayList<>(); try { if(StringUtils.isBlank(data)) { - errorid="101"; + errorid[0] ="101"; throw new Throwable("鎺ュ彛鍙傛暟锛氫紶閫掍负绌�"); } InterParameterVO interParameterVO =new InterParameterVO(); @@ -174,17 +180,11 @@ interParameterVO = JSONObject.toJavaObject(JSONObject.parseObject(data), InterParameterVO.class); } }catch (Throwable e){ - errorid="101"; + errorid[0] ="101"; throw new Throwable("鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�"); } ClassfysVO classfysVO = interParameterVO.getData().getClassifys(); systemId = interParameterVO.getData().getSystemId(); - //鏍¢獙鏄惁閰嶇疆 - boolean checkPass= checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); - if(!checkPass){ - errorid="101"; - throw new Throwable("绯荤粺鏍囪瘑涓恒��"+systemId+"銆�,"+sysIntegrationPushTypeEnum.ACCPET_APPCODE.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); - } UserVO userVo = interParameterVO.getData().getUser(); List<ClassfyVO> classVOList = classfysVO.getClassify(); InterParameterVO finalInterParameterVO = interParameterVO; @@ -195,20 +195,32 @@ sessionInfo.setUserName(userVo.getTrueName()); sessionInfo.setIp(userVo.getIp()); VciBaseUtil.setCurrentUserSessionInfo(sessionInfo); - +// List<XMLResultDataObjectDetailDO> allResultDataObjectDetailDOS=new ArrayList<>(); String finalSystemId = systemId; classVOList.stream().forEach(classVO -> { log.info("鍙傛暟锛氬垎绫籆Ode:" + classVO.getClassCode()); + boolean isCodeOrGroupCode=false; LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs = new LinkedList<>(); + String libray =""; //鑾峰彇鍒嗙被淇℃伅 try { - String libray = classVO.getLibrary(); - CodeClassifyVO codeClassifyVO = getClassfy(classVO); + libray = classVO.getLibrary(); + CodeClassifyVO codeClassifyVO = getClassfy(classVO,libray); log.info("end锛氬垎绫绘煡璇㈠畬姣�"); //鑾峰彇鍒嗙被妯℃澘淇℃伅 if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){ objerrorCode="100"; throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧埌鍒嗙被淇℃伅"); + } + String operation=""; + if(CODE_CHECKCONFIG) { + //鏍¢獙鏄惁閰嶇疆 + DockingSystemConfig dockingSystemConfig= checkIspass(finalSystemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue(),codeClassifyVO.getOid()); + if(dockingSystemConfig==null){ + errorid[0] ="101"; + throw new Throwable("绯荤粺鏍囪瘑涓恒��"+ finalSystemId +"銆戯紝闆嗘垚鍒嗙被涓恒��"+codeClassifyVO.getName()+"銆戜互涓婂垎绫伙紝"+sysIntegrationPushTypeEnum.ACCPET_APPCODE.getText()+"鎺ュ彛閰嶇疆宸插仠鐢ㄦ垨鑰呮湭閰嶇疆锛岃鑱旂郴缂栫爜绠$悊鍛橈紒"); + } + isCodeOrGroupCode="true".equals(dockingSystemConfig.getIsGroupCodeFlag())?true:false; } CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid()); if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){ @@ -240,15 +252,30 @@ CodeOrderDTO orderDTO = new CodeOrderDTO(); orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭 orderDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹 - mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs); + mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs,isCodeOrGroupCode); + //allResultDataObjectDetailDOS.add(resultDataObjectDetailDOs); log.info("end锛氱敵璇疯幏鍙栧畬姣�"); } catch (Throwable e) { - XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO=new XMLResultDataObjectDetailDO(); - xmlResultDataObjectDetailDO.setCode(""); - xmlResultDataObjectDetailDO.setId(""); - xmlResultDataObjectDetailDO.setErrorid(objerrorCode); - xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:"+e.getMessage()); - resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); + List<ApplyDataVO> applyDataVOList= classVO.getObjects().getObject(); + objerrorCode="1"; + if(!CollectionUtils.isEmpty(applyDataVOList)) { + applyDataVOList.stream().forEach(applyDataVO -> { + XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); + xmlResultDataObjectDetailDO.setCode(""); + xmlResultDataObjectDetailDO.setId(applyDataVO.getId()); + xmlResultDataObjectDetailDO.setErrorid(objerrorCode); + xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); + resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); + }); + }else{ + + XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); + xmlResultDataObjectDetailDO.setCode(""); + xmlResultDataObjectDetailDO.setId(""); + xmlResultDataObjectDetailDO.setErrorid(objerrorCode); + xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:" + e.getMessage()); + resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO); + } e.printStackTrace(); }finally { XMLResultClassfyVO resultClassfyVO = new XMLResultClassfyVO(); @@ -258,14 +285,22 @@ resultClassfyVO.setObjects(resultDataObjectDetailDOs); resultClassfyVOList.add(resultClassfyVO); } + //鏄惁璋冪敤闆嗗洟鎺ュ彛鐢宠鎺ュ彛 + if(isCodeOrGroupCode){ + List<String> IdList=resultDataObjectDetailDOs.stream().filter(xMLResultDataObjectDetailDO->StringUtils.isNotBlank(xMLResultDataObjectDetailDO.getId())).map(XMLResultDataObjectDetailDO::getId).distinct().collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(IdList)) { + this.sendApplyGroupcode(IdList, libray,sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue()); + } + } }); + XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO(); xmlResultSystemVO.setClassifys(resultClassfyVOList); xmlResultSystemVO.setMsg(msg); - xmlResultSystemVO.setErrorid(errorid); + xmlResultSystemVO.setErrorid(errorid[0]); resultStr= transferResultXMl(xmlResultSystemVO,dataType); }catch (Throwable e){ - e.printStackTrace();; + e.printStackTrace(); msg="鐢宠缂栫爜澶辫触:"+e.getMessage(); /* XMLResultSystemVO XMLResultSystemVO=new XMLResultSystemVO(); XMLResultSystemVO.setErrorid(errorid); @@ -279,10 +314,10 @@ XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO(); xmlResultSystemVO.setClassifys(resultClassfyVOList); xmlResultSystemVO.setMsg(msg); - xmlResultSystemVO.setErrorid(errorid); + xmlResultSystemVO.setErrorid(errorid[0]); resultStr= transferResultXMl(xmlResultSystemVO,dataType); final boolean[] issucess = {true}; - if(!errorid.equals("0")) { + if(!errorid[0].equals("0")) { issucess[0] = false; }else { if(!CollectionUtils.isEmpty(resultClassfyVOList)) { @@ -305,10 +340,23 @@ } } log.info("杩斿洖鍙傛暟:"+resultStr); - + //璋冪敤闆嗗洟鐢宠鎺ュ彛鐢宠闆嗗洟鐮� return resultStr; } + /*** + * 鐢宠闆嗗洟缂栫爜 + * @param idList + * @param btmName + */ + private void sendApplyGroupcode(List<String> idList,String btmName,String operationType){ + String oids=VciBaseUtil.array2String(idList.toArray(new String[]{})); + if(operationType.equals(sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue())) { + mdmInterJtClient.applyGroupCode(oids,btmName); + }else if(operationType.equals(sysIntegrationPushTypeEnum.ACCPET_EDITCODE)){ + mdmInterJtClient.receiveEditApply(oids,btmName); + } + } /*** * 缁熶竴鏇存柊鎺ュ彛锛堟洿鏀圭姸鎬侊紝鏇存敼灞炴�т俊鎭級鎺ュ彛 * @param data @@ -375,7 +423,7 @@ //鑾峰彇鍒嗙被淇℃伅 try { String libray = classVO.getLibrary(); - CodeClassifyVO codeClassifyVO = getClassfy(classVO); + CodeClassifyVO codeClassifyVO = getClassfy(classVO,libray); if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){ objerrorCode="100"; throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧埌鍒嗙被淇℃伅"); @@ -1013,29 +1061,75 @@ }); } } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.TREE.getValue())) {//鏍戝舰 + Map<String, Object> condtionMap = new HashMap<>(); - /* Map<String, Object> condtionMap = new HashMap<>(); - List<CodeSrchCondConfigVO> codeSrchCondConfigVOList = coderefersecSearchVO.getCodeSrchCondConfigVOS(); - List<CodeShowFieldConfigVO> codeShowFieldConfigVOS=coderefersecSearchVO.getCodeShowFieldConfigVOS(); - - if (!CollectionUtils.isEmpty(codeSrchCondConfigVOList)) { - codeSrchCondConfigVOList.stream().forEach(codeSrchCondConfigVO -> { - condtionMap.put(codeSrchCondConfigVO.getFilterField() + codeSrchCondConfigVO.getFilterType(), codeSrchCondConfigVO.getFilterValue()); - }); - buildSqlwhere = UBCSSqlKeyword.buildSqlwhere(condtionMap); - } //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(referBtmId)); if (!listR.isSuccess() || listR.getData().size() == 0) { throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒"); } String referTable = listR.getData().get(0).getTableName(); + + String oidFieldName = StringUtils.isNotBlank(coderefersecSearchVO.getParentUsedField())?coderefersecSearchVO.getParentUsedField():coderefersecSearchVO.getValueField(); + String parentValue =coderefersecSearchVO.getParentValue(); + String parentFieldName =StringUtils.isBlank(coderefersecSearchVO.getParentFieldName())?"":coderefersecSearchVO.getParentFieldName(); + List<CodeSrchCondConfigVO> codeSrchCondConfigVOList = coderefersecSearchVO.getCodeSrchCondConfigVOS(); + List<CodeShowFieldConfigVO> codeShowFieldConfigVOS=coderefersecSearchVO.getCodeShowFieldConfigVOS(); + if (!CollectionUtils.isEmpty(codeSrchCondConfigVOList)) { + codeSrchCondConfigVOList.stream().forEach(codeSrchCondConfigVO -> { + condtionMap.put(codeSrchCondConfigVO.getFilterField() + codeSrchCondConfigVO.getFilterType(), codeSrchCondConfigVO.getFilterValue()); + }); + buildSqlwhere = UBCSSqlKeyword.buildSqlwhere(condtionMap); + } + + //if("all".equals(coderefersecSearchVO.getLoadType())) { + String parentOidSql = ""; + if(StringUtils.isNotBlank(parentValue)){ + String temp=parentValue; + if(temp.startsWith(QueryOptionConstant.IN)){ + temp = temp.substring((QueryOptionConstant.IN).length()).trim(); + parentOidSql = " in " + ((temp.startsWith("(") && temp.endsWith(")"))?temp:"(" + temp + ")"); + }else if(temp.startsWith(QueryOptionConstant.NOTIN)){ + parentOidSql = " not in " + ((temp.startsWith("(") && temp.endsWith(")"))?temp:"(" + temp + ")"); + }else if(temp.startsWith(QueryOptionConstant.NOTEQUAL)){ + temp = temp.substring((QueryOptionConstant.NOTEQUAL).length()).trim(); + parentOidSql = QueryOptionConstant.NOTEQUAL + " " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + }else if(temp.startsWith(QueryOptionConstant.MORETHAN)){ + temp = temp.substring((QueryOptionConstant.MORETHAN).length()).trim(); + parentOidSql = QueryOptionConstant.MORETHAN + " " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + }else if(temp.startsWith(QueryOptionConstant.MORE)){ + temp = temp.substring((QueryOptionConstant.MORE).length()).trim(); + parentOidSql = QueryOptionConstant.MORE + " " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + }else if(temp.startsWith(QueryOptionConstant.LESSTHAN)){ + temp = temp.substring((QueryOptionConstant.LESSTHAN).length()).trim(); + parentOidSql = QueryOptionConstant.LESSTHAN + " " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + }else if(temp.startsWith(QueryOptionConstant.LESS)){ + temp = temp.substring((QueryOptionConstant.LESS).length()).trim(); + parentOidSql = QueryOptionConstant.LESS + " " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + }else if (temp.startsWith(QueryOptionConstant.ISNOTNULL)) { + parentOidSql = " is not null"; + } else if (temp.startsWith(QueryOptionConstant.ISNULL)) { + parentOidSql = " is null"; + } else if(temp.contains("*")){ + parentOidSql = " like " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'").replace("*","%"); + }else { + parentOidSql = " = " + ((temp.startsWith("'") && temp.endsWith("'"))?temp:"'" + temp + "'"); + } + } + //鏌ヨ鍏ㄩ儴鐨勪俊鎭� + buildSqlwhere+= " and oid in (select oid from " +referTable + " START WITH " + coderefersecSearchVO.getParentFieldName() + " "+ + parentOidSql + + " CONNECT BY PRIOR " + oidFieldName + " = " + parentFieldName + ")"; + + /*}else{ + if(StringUtils.isNotBlank(coderefersecSearchVO.getParentFieldName()) && StringUtils.isNotBlank(parentValue)){ + buildSqlwhere+=" and "+coderefersecSearchVO.getParentFieldName()+"= '"+parentValue+"'"; + } + }*/ + StringBuffer sb = new StringBuffer(); sb.append(" select * from "); sb.append(referTable); - - - sb.append(" where 1=1 "); if (StringUtils.isNotBlank(buildSqlwhere)) { sb.append(buildSqlwhere); @@ -1051,11 +1145,12 @@ String value = map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString(); String text = map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString(); String description = map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString(); - CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, "", description); + String pid = map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), "").toString(); + CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, pid, description); codeSectionValueVOList.add(sectionValueVO); }); } -*/ + } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.ORGDEPARTMENTGRIDREFERS.getValue()) ||////閮ㄩ棬鍒楄〃 coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.ORGDEPARTMENTREFER.getValue())//閮ㄩ棬鏍� @@ -1234,7 +1329,7 @@ * 鏌ヨ鏍¢獙鍒嗙被淇℃伅 * @param classfyVO */ - private CodeClassifyVO getClassfy(ClassfyVO classfyVO) throws Throwable{ + private CodeClassifyVO getClassfy(ClassfyVO classfyVO,String libray) throws Throwable{ CodeClassifyVO classifyVO = new CodeClassifyVO(); try { String classCode = classfyVO.getClassCode(); @@ -1243,13 +1338,19 @@ if (StringUtils.isNotBlank(classfyVO.getClassCode())) { Map<String, String> conditionMap = new HashMap<>(); List<CodeClassify> codeClassifyList = classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().eq(CodeClassify::getId, classCode)); + final CodeClassify[] newCodeClassify = {new CodeClassify()}; if (!CollectionUtils.isEmpty(codeClassifyList)) { - CodeClassify classifyDO = codeClassifyList.get(0); - //灏咲TO杞崲涓篋O + codeClassifyList.stream().forEach(codeClassify -> { + CodeClassifyVO codeClassifyVO= classifyService.getTopClassifyVO(codeClassify.getOid()); + if(codeClassifyVO.getId().equals(libray)){ + newCodeClassify[0] =codeClassify; + } + }); classifyVO = new CodeClassifyVO(); - BeanUtilForVCI.copyPropertiesIgnoreCase(classifyDO, classifyVO); + BeanUtilForVCI.copyPropertiesIgnoreCase(newCodeClassify[0], classifyVO); + //灏咲TO杞崲涓篋O if(StringUtils.isBlank(classifyVO.getOid())){ - throw new Throwable("鏍规嵁鍒嗙被浠e彿鏈煡璇㈠埌鐩稿簲鐨勫垎绫讳俊鎭�"); + throw new Throwable("鐢宠缂栫爜鐨勫垎绫伙細銆�"+classCode+"銆戜笉灞炰簬搴撹妭鐐广��"+libray+"銆戯紝璇锋鏌ュ弬鏁板垎绫昏妭鐐�/搴撹妭鐐逛俊鎭槸鍚﹀尮閰�"); } }else{ throw new Throwable("鏍规嵁鍒嗙被浠e彿鏈煡璇㈠埌鐩稿簲鐨勫垎绫讳俊鎭�"); @@ -1262,7 +1363,7 @@ } }catch (Throwable e){ objerrorCode="100"; - new Throwable("鑾峰彇鍒嗙被淇℃伅澶辫触:"+e.getMessage()); + throw new Throwable("鑾峰彇鍒嗙被淇℃伅澶辫触:"+e.getMessage()); } return classifyVO; } @@ -1550,4 +1651,35 @@ queryWrapper.eq(DockingSystemConfig::getPushType,operationType); return dockingSystemConfigService.count(queryWrapper)>0?true:false; } + + /*** + * 鏍¢獙鏄惁鍋氫簡閰嶇疆 + * @param systemId,绯荤粺鏍囪瘑 + * @param type:鎺ュ彛绫诲瀷 + * @param operationType:鎺ュ彛鎿嶄綔绫诲瀷 + * @return + */ + private DockingSystemConfig checkIspass(String systemId,String type,String operationType,String classOid){ + DockingSystemConfig dockingSystemConfig=new DockingSystemConfig(); + CodeClassifyVO codeClassifyVO= classifyService.getObjectByOid(classOid); + classOid=codeClassifyVO.getOid(); + //鏍规嵁绫诲瀷鍘绘煡璇㈤渶瑕侀泦鎴愮殑鍒嗙被鎴栬�呮暟鎹� + LambdaQueryWrapper<DockingSystemConfig> queryWrapper = Wrappers.<DockingSystemConfig>lambdaQuery(); + queryWrapper.eq(DockingSystemConfig::getUsedFlag, MdmDuckingConstant.SEND_FLAG_TRUE); + queryWrapper.eq(DockingSystemConfig::getSysBaseId,systemId); + queryWrapper.eq(DockingSystemConfig::getDataFlowType,type); + queryWrapper.eq(DockingSystemConfig::getPushType,operationType); + if(StringUtils.isNotBlank(classOid)){ + queryWrapper.in(DockingSystemConfig::getClassifyId,classOid); + } + List<DockingSystemConfig> dockingSystemConfigList= dockingSystemConfigList=dockingSystemConfigService.list(queryWrapper); + if(!CollectionUtils.isEmpty(dockingSystemConfigList)){ + dockingSystemConfig=dockingSystemConfigList.get(0); + }else{ + if(StringUtils.isNotBlank(codeClassifyVO.getParentCodeClassifyOid())) { + checkIspass(systemId, type, operationType, codeClassifyVO.getOid()); + } + } + return dockingSystemConfig; + } } -- Gitblit v1.9.3