ludc
2023-07-19 2025087a8dec8f2d301459b9d41c9ef00f6f9289
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -40,9 +40,15 @@
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;
import com.vci.ubcs.system.feign.ISysClient;
import com.vci.ubcs.system.user.entity.User;
import com.vci.ubcs.system.user.feign.IUserClient;
import com.vci.ubcs.system.vo.DeptVO;
import com.vci.ubcs.system.vo.RoleVO;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tool.api.R;
import org.springframework.beans.factory.annotation.Autowired;
@@ -65,7 +71,7 @@
@Slf4j
@VciWebservice(path = "/universalInterface")
public class UniversalInterfaceImpl<IDockingLogeServiceing> implements UniversalInterfaceI {
   @Value("${code.checkConfig:true}")
   @Value("${code.universalinterface.checkSystemConfig:true}")
   public boolean CODE_CHECKCONFIG;
   @Autowired(required = false)
   private AttributeMapConfig attributeMapConfig;
@@ -85,6 +91,18 @@
    */
   @Autowired
   private IBtmTypeClient btmTypeClient;
   /**
    * 人员服务
    */
   @Autowired
   private  ISysClient sysClient;
   /**
    * 人员服务
    */
   @Autowired
   private IUserClient userClient;
   /**
    * 通用查询
@@ -162,13 +180,11 @@
         }
         ClassfysVO classfysVO = interParameterVO.getData().getClassifys();
         systemId = interParameterVO.getData().getSystemId();
         if(CODE_CHECKCONFIG){
            //校验是否配置
            boolean checkPass= checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_APPCODE.getValue());
            if(!checkPass){
               errorid="101";
               throw new Throwable("系统标识为【"+systemId+"】,"+sysIntegrationPushTypeEnum.ACCPET_APPCODE.getText()+"接口配置已停用或者未配置,请联系编码管理员!");
            }
         //校验是否配置
         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();
@@ -338,13 +354,11 @@
         ClassfysVO classfysVO = interParameterVO.getData().getClassifys();
         systemId = interParameterVO.getData().getSystemId();
         if(CODE_CHECKCONFIG) {
            //校验是否配置
            boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue());
            if (!checkPass) {
               errorid = "101";
               throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
            }
         //校验是否配置
         boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue());
         if (!checkPass) {
            errorid = "101";
            throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
         }
         UserVO userVo = interParameterVO.getData().getUser();
         List<ClassfyVO> classVOList = classfysVO.getClassify();
@@ -497,13 +511,11 @@
         String libId= libraryVO.getId();
         List<String> classifyIdList=  libraryVO.getClassifyid();
         List<CodeClassifyVO> codeClassifyVOS =new ArrayList<>();
         if(CODE_CHECKCONFIG) {
            //校验是否配置
            boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILY.getValue());
            if (!checkPass) {
               errorid = "101";
               throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILY.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
            }
         boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILY.getValue());
         if (!checkPass) {
            errorid = "101";
            throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILY.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
         }
         //这是账号信息
@@ -667,14 +679,14 @@
            msg = "接口参数:library 为null";
            throw new Throwable(msg);
         }
         if(CODE_CHECKCONFIG) {
            //校验是否配置
            boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getValue());
            if (!checkPass) {
               errorid = "101";
               throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
            }
         //校验是否配置
         boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getValue());
         if (!checkPass) {
            errorid = "101";
            throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYDATA.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
         }
         //先简称是否有关联模板,有模板要先删除
         List<CodeClassify> libIdDos =classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().eq(CodeClassify::getId,library));
@@ -859,14 +871,14 @@
         String libId= libraryVO.getId();
         List<String> classifyIdList=  libraryVO.getClassifyid();
         List<CodeClassifyVO> codeClassifyVOS =new ArrayList<>();
         if(CODE_CHECKCONFIG) {
            //校验是否配置
            boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILYRULE.getValue());
            if (!checkPass) {
               errorid = "101";
               throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILYRULE.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
            }
         //校验是否配置
         boolean checkPass = checkIspass(systemId, SysIntegrationDataFlowTypeEnum.ACCEPT.getValue(), sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILYRULE.getValue());
         if (!checkPass) {
            errorid = "101";
            throw new Throwable("系统标识为【" + systemId + "】," + sysIntegrationPushTypeEnum.ACCPET_QUERYCLAFILYRULE.getText() + "接口配置已停用或者未配置,请联系编码管理员!");
         }
         //这是账号信息
         //这是账号信息
         if(userVo!=null) {
@@ -961,44 +973,206 @@
                              coderefersecSearchVO = JSONObject.toJavaObject(JSONObject.parseObject(referConfig), CoderefersecSearchVO.class);
                           }
                           String buildSqlwhere="";
                           if(coderefersecSearchVO!=null){
                              Map<String,Object> condtionMap=new HashMap<>();
                              List<CodeSrchCondConfigVO> codeSrchCondConfigVOList=coderefersecSearchVO.getCodeSrchCondConfigVOS();
                           if(coderefersecSearchVO!=null) {
                              if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.DEFAULT.getValue()) || coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.GRID.getValue())) {//默认样式/列表
                                 Map<String, Object> condtionMap = new HashMap<>();
                                 List<CodeSrchCondConfigVO> codeSrchCondConfigVOList = coderefersecSearchVO.getCodeSrchCondConfigVOS();
                              if(!CollectionUtils.isEmpty(codeSrchCondConfigVOList)) {
                                 codeSrchCondConfigVOList.stream().forEach(codeSrchCondConfigVO -> {
                                    condtionMap.put(codeSrchCondConfigVO.getFilterField()+codeSrchCondConfigVO.getFilterType(),codeSrchCondConfigVO.getFilterValue());
                                 });
                                 buildSqlwhere=   UBCSSqlKeyword.buildSqlwhere(condtionMap);
                                 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();
                                 StringBuffer sb = new StringBuffer();
                                 sb.append(" select * from  ");
                                 sb.append(referTable);
                                 sb.append(" where 1=1  ");
                                 if (StringUtils.isNotBlank(buildSqlwhere)) {
                                    sb.append(buildSqlwhere);
                                 }
                                 List<Map> ListMap = commonsMapper.selectBySql(sb.toString());
                                 String valueField = coderefersecSearchVO.getValueField();
                                 String textField = coderefersecSearchVO.getTextField();
                                 final int[] num = {0};
                                 if (!CollectionUtils.isEmpty(ListMap)) {
                                    ListMap.stream().forEach(map -> {
                                       num[0]++;
                                       String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                       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);
                                       codeSectionValueVOList.add(sectionValueVO);
                                    });
                                 }
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.TREE.getValue())) {//树形
                                 Map<String, Object> condtionMap = new HashMap<>();
                                 //使用传入的业务类型查询表
                                 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);
                                 }
                                 List<Map> ListMap = commonsMapper.selectBySql(sb.toString());
                                 String valueField = coderefersecSearchVO.getValueField();
                                 String textField = coderefersecSearchVO.getTextField();
                                 final int[] num = {0};
                                 if (!CollectionUtils.isEmpty(ListMap)) {
                                    ListMap.stream().forEach(map -> {
                                       num[0]++;
                                       String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                       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();
                                       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())//部门树
                              ) {
                                 R<List<DeptVO>> r = sysClient.deptList("");
                                 if (r.isSuccess()) {
                                    List<DeptVO> deptVOList = r.getData();
                                    if (!CollectionUtils.isEmpty(deptVOList)) {
                                       deptVOList.stream().forEach(deptVO -> {
                                          String id = String.valueOf(deptVO.getId());
                                          int num = deptVO.getSort();
                                          String value = String.valueOf(deptVO.getId());
                                          String text = deptVO.getDeptName();
                                          String description = deptVO.getRemark();
                                          String pid = deptVO.getParentId() + "";
                                          CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num + "", value, text, pid, description);
                                          codeSectionValueVOList.add(sectionValueVO);
                                       });
                                    }
                                 }
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.SMUSERREFER.getValue())//用户
                                 || coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.SMUSERGRIDREFER.getValue())//用户列表
                              ) {
                                 R<List<User>>  r=userClient.selectAllUser();
                                 if (r.isSuccess()) {
                                    List<User> userList = r.getData();
                                    if (!CollectionUtils.isEmpty(userList)) {
                                       final int[] num = {0};
                                       userList.stream().forEach(user -> {
                                           String value=StringUtils.isBlank(user.getAccount())?"":user.getAccount();
                                          //String value= String.valueOf(StringUtils.isBlank(user.getCode())?"":user.getCode());
                                          String text=StringUtils.isBlank(user.getName())?"":user.getName();
                                          String pid=user.getDeptId();
                                          num[0]++;
                                          String description="";
                                          String id= String.valueOf(user.getId());
                                          CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, pid, description);
                                          codeSectionValueVOList.add(sectionValueVO);
                                       });
                                    }
                                 }
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.SMROLEREFER.getValue())) {//角色列表
                                 R<List<RoleVO>> r = sysClient.roleTree("");
                                 if (r.isSuccess()) {
                                    List<RoleVO> roleVOList = r.getData();
                                    if (!CollectionUtils.isEmpty(roleVOList)) {
                                       roleVOList.stream().forEach(roleVO -> {
                                          String id = String.valueOf(roleVO.getId());
                                          int num = roleVO.getSort();
                                          String value = String.valueOf(roleVO.getId());
                                          String text = roleVO.getRoleName();
                                          String description = roleVO.getRoleAlias();
                                          String pid = roleVO.getParentId() + "";
                                          CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num + "", value, text, pid, description);
                                          codeSectionValueVOList.add(sectionValueVO);
                                       });
                                    }
                                 }
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.ORGDUTYREFER.getValue())) {//职务
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.SMWORKTYPEREFER.getValue())) {//工种
                              } else if (coderefersecSearchVO.getType().equals(CodeReferConfigTypeEnum.WFPROCESSTEMPLATEREFER.getValue())) {//流程模板
                              }
                           }
                           //使用传入的业务类型查询表
                           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();
                           StringBuffer sb=new StringBuffer();
                           sb.append(" select * from  ");
                           sb.append(referTable);
                           sb.append(" where 1=1  ");
                           if(StringUtils.isNotBlank(buildSqlwhere)){
                              sb.append( buildSqlwhere );
                           }
                           List<Map> ListMap=   commonsMapper.selectBySql(sb.toString());
                           String valueField=coderefersecSearchVO.getValueField();
                           String textField=coderefersecSearchVO.getTextField();
                           final int[] num = {0};
                           if(!CollectionUtils.isEmpty(ListMap)){
                              ListMap.stream().forEach(map->{
                                 num[0]++;
                                 String id= map.getOrDefault("OID".toUpperCase(Locale.ROOT),"").toString();
                                 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);
                                 codeSectionValueVOList.add(sectionValueVO);
                              });
                           }
                           log.info(libId);
                        }else if(secType.equals("codelevelsec")) {//层级码段
@@ -1163,9 +1337,11 @@
      });
      Map<String,CodeClassifyVO> codeClassifyVOMap= classifyFullInfo.getParentClassifyVOs().stream().collect(Collectors.toMap(s -> s.getId(), t -> t,(o1, o2)->o2));
      List<CodeOrderSecDTO> codeOrderSecDTOList=new ArrayList<>();
      Map<String,String> errorMap=new HashMap<>();
      for(CodeBasicSecVO codeBasicSecVO: codeBasicSecVOS) {
         String sectype = codeBasicSecVO.getSecType();
         String classifySecOid= codeBasicSecVO.getOid();
         String message="";
         if (!sectype.equals(CodeSecTypeEnum.CODE_SERIAL_SEC.getValue())) {
            String name = codeBasicSecVO.getName();
            String sectypeText = codeBasicSecVO.getSecTypeText();
@@ -1187,18 +1363,27 @@
                        CodeClassifyValue codeClassifyValue=   codeClassifyValueDOMap.get(sectypeValue);
                        sectypeValue=codeClassifyValue.getOid();
                     }else {
                        objerrorCode = "101";
                        throw new Throwable("传入的分类码段:【" + name + " 值:" + sectypeValue + "】,不符合当前分类层级代号");
                        //throw new Throwable("传入的分类码段:【" + name + " 值:" + sectypeValue + "】,不符合当前分类层级代号");
                        message="传入的分类码段:【" + name + " 值:" + sectypeValue + "】,不符合当前分类层级代号";
                        errorMap.put("error",errorMap.getOrDefault("error","")+";"+message);
                     }
                  }
               }
               if(StringUtils.isBlank(sectypeValue)){
                  message="传入的分类码段:【" + name + " 】的值不允许为空";
                  errorMap.put("error",errorMap.getOrDefault("error","")+";"+message);
               }
               CodeOrderSecDTO.setSecValue(sectypeValue);
               codeOrderSecDTOList.add(CodeOrderSecDTO);
            } else {
               objerrorCode="101";
               throw new Throwable("传入的码段规则缺少" + name + "码段");
               message="传入的码段规则缺少" + name + "码段";
               errorMap.put("error",errorMap.getOrDefault("error","")+";"+message);
            }
         }
      }
      if(errorMap.size()>0){
         objerrorCode="101";
         throw new Throwable(errorMap.getOrDefault("error",""));
      }
      return codeOrderSecDTOList;
   }
@@ -1402,6 +1587,9 @@
    * @return
    */
   private boolean checkIspass(String systemId,String type,String operationType){
      if(!CODE_CHECKCONFIG) {
         return true;
      }
      //根据类型去查询需要集成的分类或者数据
      LambdaQueryWrapper<DockingSystemConfig> queryWrapper = Wrappers.<DockingSystemConfig>lambdaQuery();
      queryWrapper.eq(DockingSystemConfig::getUsedFlag, MdmDuckingConstant.SEND_FLAG_TRUE);