田源
2023-06-30 3e35833e70a7532d4ae8da0dcd905627230f2b2c
Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs
已修改12个文件
240 ■■■■■ 文件已修改
Source/UBCS-WEB/src/api/batchImport/index.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/BatchImport/index.vue 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/mixins/codeApply.js 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/vue.config.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeWupinMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/batchImport/index.js
@@ -10,8 +10,8 @@
    responseType: 'blob'
  })
}
// 批量申请编码顶层节点模板下载
export const downloadCodeApplyTopTemplate = (params) => {
// 批量申请编码模板下载
export const downloadBatchApplyCodeTemplate = (params) => {
  return request({
    url: '/api/ubcs-code/mdmEngineController/downloadTopImportExcel',
    method: 'get',
Source/UBCS-WEB/src/components/BatchImport/index.vue
@@ -12,17 +12,26 @@
        {{ item }}
      </li>
    </ul>
    <div class="radio_box" v-show="currentTypeObj[type]['upParams'] === 'classifyAttr'">
    <div
      class="radio_box"
      v-show="currentTypeObj[type]['upParams'] === 'classifyAttr'"
    >
      <span>分类的路径使用的属性:</span>
      <el-radio-group v-model="classifyAttr">
        <el-radio label="id">分类编号</el-radio>
        <el-radio label="name">分类名称</el-radio>
      </el-radio-group>
    </div>
    <div style="margin-top: 20px;" v-if="showCodeApply && type === 'batchImportApply'">
      <Divider text="编码规则的码段信息,请先选择后再导入" left="30px"></Divider>
    <div
      style="margin-top: 20px"
      v-if="showCodeApply && currentTypeObj[type]['upParams'] === 'codeApply'"
    >
      <Divider
        text="编码规则的码段信息,请先选择后再导入"
        left="30px"
      ></Divider>
      <FormTemplate
        style="margin-top: 30px;"
        style="margin-top: 30px"
        type="add"
        :selfColumnType="selfColumnType"
        :selfColumnConfig="selfColumnConfig"
@@ -76,11 +85,12 @@
  downloadHistoryImportTemplate,
  downloadErrorFile,
  getHistoryLeftTree,
  downloadBatchImportApplyTemplate
  downloadBatchImportApplyTemplate,
  downloadBatchApplyCodeTemplate,
} from "../../api/batchImport/index";
import FormTemplate from "../FormTemplate/FormTemplate.vue";
import { getToken } from "@/util/auth";
import codeApply from '@/mixins/codeApply.js'
import codeApply from "@/mixins/codeApply.js";
export default {
  name: "BatchImport",
  mixins: [codeApply],
@@ -118,31 +128,37 @@
      },
    },
    title() {
      return this.currentTypeObj[this.type]['title']
      return this.currentTypeObj[this.type]["title"];
    },
    tipList() {
      return this.currentTypeObj[this.type]['tipList']
      return this.currentTypeObj[this.type]["tipList"];
    },
    downloadTemplateApi() {
      return this.currentTypeObj[this.type]['downloadTemplateFun']
      console.log(this.currentTypeObj[this.type], 'this.type');
      return this.currentTypeObj[this.type]["downloadTemplateFun"];
    },
    action() {
      return this.currentTypeObj[this.type]['action']
      return this.currentTypeObj[this.type]["action"];
    },
    upParams() {
      if (this.type === 'historyImport') {
      if (this.type === "historyImport") {
        return {
        codeClassifyOid: this.codeClassifyOid,
        classifyAttr: this.classifyAttr,
      }
      } else if(this.type === 'batchImportApply') {
          codeClassifyOid: this.codeClassifyOid,
          classifyAttr: this.classifyAttr,
        };
      } else if (this.type === "batchImportApply") {
        return {
          codeClassifyOid: this.codeClassifyOid,
          secDTOList: this.secDTOList,
          ...this.codeApplyForm
        }
          ...this.codeApplyForm,
        };
      } else if (this.type === "batchApplyCode") {
        return {
          codeClassifyOid: this.codeClassifyOid,
          classifyAttr: this.classifyAttr,
        };
      }
    }
    },
  },
  data() {
    return {
@@ -163,7 +179,7 @@
          ],
          action: "/api/ubcs-code/mdmEngineController/batchImportHistoryData",
          downloadTemplateFun: downloadHistoryImportTemplate,
          upParams: 'classifyAttr'
          upParams: "classifyAttr",
        },
        batchImportApply: {
          title: "批量申请编码",
@@ -175,26 +191,41 @@
          ],
          action: "/api/ubcs-code/mdmEngineController/batchImportCode",
          downloadTemplateFun: downloadBatchImportApplyTemplate,
          upParams: false
        }
          upParams: "codeApply",
        },
        batchApplyCode: {
          title: "批量申请编码",
          tipList: [
            "1.标题带五角星的表示关键属性,带星号表示必输项",
            "2.分类的路径需要用#分隔。从当前选择分类节点的下级开始填写,直到最末尾节点,如 产品#主机产品#主机产品",
          ],
          action: "/api/ubcs-code/mdmEngineController/batchTopImportCode",
          downloadTemplateFun: downloadBatchApplyCodeTemplate,
          upParams: "classifyAttr",
        },
      },
    };
  },
  methods: {
    async beforeUpload(file) {
      console.log(223344);
      const fileType = file.name.split(".").pop();
      if (fileType !== "xlsx" && fileType !== "xls") {
        // 上传格式不符合要求,提示错误信息并取消上传
        this.$message.error("只允许上传xlsx、xls格式的文件");
        return Promise.reject(false)
        return Promise.reject(false);
      }
      if (this.type === 'batchImportApply') {
        const flag = await this.$refs.CodeApply.validate()
      if (this.type === "batchImportApply") {
        const flag = await this.$refs.CodeApply.validate();
        if (!flag) {
          return Promise.reject(false)
          return Promise.reject(false);
        }
      }
      this.pageLoading = this.$loading({
        lock: true,
        text: "文件上传中",
        spinner: "el-icon-loading",
        background: "rgba(0, 0, 0, 0.7)",
      });
      return true;
    },
    // 下载导入模板
@@ -233,21 +264,12 @@
      }
    },
    uploadChange(file) {
      if (file.status === "uploadin") {
        this.pageLoading = this.$loading({
          lock: true,
          text: "文件上传中",
          spinner: "el-icon-loading",
          background: "rgba(0, 0, 0, 0.7)",
        });
      }
      if (file.status === "success" || file.status === "error") {
        this.pageLoading.close();
      }
    },
  },
  watch: {
  },
  watch: {},
};
</script>
Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -8,9 +8,9 @@
        <el-button plain size="small" type="primary" @click="editHandler"
          >编辑
        </el-button>
        <el-button plain size="small" type="primary">批量导入申请</el-button>
        <el-button plain size="small" type="primary">历史数据导入</el-button>
        <el-button plain size="small" type="primary">批量申请编码</el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">批量导入申请</el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">历史数据导入</el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">批量申请编码</el-button>
        <el-button plain size="small" type="primary">批量发布</el-button>
        <el-button plain size="small" type="primary">查看流程历史</el-button>
        <el-button plain size="small" type="primary">删除</el-button>
@@ -144,6 +144,7 @@
      >
      </el-pagination>
    </div>
    <BatchImport v-if="batchImportData.visible" :visible.sync="batchImportData.visible" v-bind="batchImportData"></BatchImport>
  </basic-container>
</template>
<script>
@@ -152,11 +153,13 @@
import integrationTransfer from "@/views/integration/integrationTransfer";
import SetPersonnel from "@/components/template/SetPersonnel";
import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue";
import BatchImport from '@/components/BatchImport'
export default {
  components: {
    integrationTransfer,
    SetPersonnel,
    ResembleQueryDialog,
    BatchImport
  },
  name: "Crud.vue",
  props: {
@@ -243,6 +246,11 @@
      seniorQueryColumns: [],
      selectRow: [],
      userName: "",
      batchImportData: {
        visible: false,
        type: '',
        codeClassifyOid: ''
      }
    };
  },
  computed: {},
@@ -503,6 +511,11 @@
    EditSumbit(val) {
      this.editvisible = false;
    },
    openBatchImport(type) {
      this.batchImportData.visible = true
      this.batchImportData.type = type
      this.batchImportData.codeClassifyOid = this.codeClassifyOid
    }
  },
};
</script>
Source/UBCS-WEB/src/mixins/codeApply.js
@@ -41,7 +41,9 @@
    }
  },
  created() {
    this.getCodeRule()
    if (this.type === 'batchImportApply') {
      this.getCodeRule()
    }
  },
  methods: {
    // 获取码值申请数据
Source/UBCS-WEB/vue.config.js
@@ -27,8 +27,8 @@
      '/api': {
        // target: 'http://localhost:37000',
        // target: 'http://localhost:37000',
        target: 'http://192.168.1.51:37000',
        // target: 'http://192.168.1.46:37000',
        // target: 'http://192.168.1.51:37000',
        target: 'http://192.168.1.46:37000',
        // target: 'http://dev.vci-tech.com:37000',
        // target: 'http://192.168.1.51:37000/',
        //   target: 'http://192.168.1.104:37000',
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/ClassifyVO.java
@@ -47,6 +47,11 @@
    private String codeRuleId;
    /***
     * 规则id
     */
    @XStreamAsAttribute
    private CodeRuleVO codeRuleVO;
    /***
     * 是否为叶子节点
     */
    @XStreamAsAttribute
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/coderule/CodeRuleVO.java
@@ -1,5 +1,8 @@
package com.vci.ubcs.code.vo.webserviceModel.coderule;
import com.vci.ubcs.code.dto.CodeRuleDTO;
public class CodeRuleVO {
//    private String
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -131,11 +131,11 @@
        if(StringUtils.isNotBlank(codeClassifyEntity.getParentCodeClassifyOid()) && StringUtils.isNotBlank(codeClassifyEntity.getBtmTypeId())){
            return R.fail("只有在顶层的主题库分类才能设置业务类型");
        }
        codeClassifyEntity.setCreator(AuthUtil.getUser().getUserName());
        codeClassifyEntity.setCreator(String.valueOf(AuthUtil.getUser().getUserId()));
        codeClassifyEntity.setCreateTime(new Date());
        codeClassifyEntity.setTs(new Date());
        codeClassifyEntity.setOwner(AuthUtil.getUser().getUserName());
        codeClassifyEntity.setLastModifier(AuthUtil.getUser().getUserName());
        codeClassifyEntity.setOwner(String.valueOf(AuthUtil.getUser().getUserId()));
        codeClassifyEntity.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
        codeClassifyEntity.setLastModifyTime(new Date());
        codeClassifyEntity.setRevisionSeq(1);
        codeClassifyEntity.setVersionSeq(1);
@@ -154,20 +154,17 @@
            return R.fail("传入数据不能为空!");
        }
        //检查ts
        Map<String,Object> condition = new HashMap<>(2);
        condition.put("oid",codeClassifyEntity.getOid());
        condition.put("ts",codeClassifyEntity.getTs());
        CodeClassify detail = codeClassifyMapper
            .selectOne(Condition.getQueryWrapper(condition,CodeClassify.class));
        if(detail == null){//不是最新的不让改
        CodeClassify detail = codeClassifyMapper.selectById(codeClassifyEntity.getOid());
        if(!detail.getTs().toString().equals(codeClassifyEntity.getTs().toString())){//不是最新的不让改
            return R.fail("当前数据不是最新,请刷新后再修改!");
        }
        if(StringUtils.isNotBlank(codeClassifyEntity.getParentCodeClassifyOid()) && StringUtils.isNotBlank(codeClassifyEntity.getBtmTypeId())){
            return R.fail("只有在顶层的主题库分类才能设置业务类型");
        }
        codeClassifyEntity.setLastModifier(AuthUtil.getUser().getUserName());
        codeClassifyEntity.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
        codeClassifyEntity.setLastModifyTime(new Date());
        codeClassifyEntity.setTs(new Date());
        int insertNumber = codeClassifyMapper.updateById(codeClassifyEntity);
//         //处理数据集成逻辑,成功后执行集成第一步,分类数据特殊处理。只有启用状态的分类才推送
@@ -354,7 +351,7 @@
        codeClassify.setLcStatus(lcStatus);
        codeClassify.setTs(new Date());
        codeClassify.setLastModifyTime(new Date());
        codeClassify.setLastModifier(AuthUtil.getUser().getUserName());
        codeClassify.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
        //启用、停用
//        int u = codeClassifyMapper.updateLcStatus(oid,lcStatus);
        int count = codeClassifyMapper.updateById(codeClassify);
@@ -900,9 +897,9 @@
                    classifyDO.setTs(new Date());
                    classifyDO.setBtmname("codeclassify");
                    classifyDO.setLcStatus("Enabled");
                    classifyDO.setOwner(AuthUtil.getUser().getUserName());
                    classifyDO.setCreator(AuthUtil.getUser().getUserName());
                    classifyDO.setLastModifier(AuthUtil.getUser().getUserName());
                    classifyDO.setOwner(String.valueOf(AuthUtil.getUser().getUserId()));
                    classifyDO.setCreator(String.valueOf(AuthUtil.getUser().getUserId()));
                    classifyDO.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
                    classifyDO.setLastModifyTime(new Date());
                    codeClassifyMapper.insert(classifyDO);
                }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -55,8 +55,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.launch.constant.AppConstant;
import com.vci.ubcs.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
@@ -1579,7 +1577,7 @@
        List<CodeClassifyTemplateAttrVO> referAttrVOs = templateVO.getAttributes().stream().filter(
                s -> StringUtils.isNotBlank(s.getReferBtmId()) || StringUtils.isNotBlank(s.getReferConfig())
        ).collect(Collectors.toList());
        Map<String/**参照的属性**/, String/**实际的字段**/> referFieldMap = new HashMap<>();
        Map<String/**参照的属性**/, String/**实际的字段**/> referFieldMap = new ConcurrentHashMap<>();
        if (!CollectionUtils.isEmpty(referAttrVOs)) {
            referAttrVOs.parallelStream().forEach(attrVO -> {
                UIFormReferVO referVO = null;
@@ -1612,11 +1610,7 @@
            });
        }
        R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getDefaultAttrByBtmId(btmType);
//        Optional.ofNullable(allAttributeByBtmId.getData()).orElseGet(allAttributeByBtmId.getData().getAttributes()).stream().forEach(attrId -> {
//            if (!selectFieldList.contains(attrId.getOid()) && !"secretgrade".equalsIgnoreCase(attrId.getOid())) {
//                selectFieldList.add(attrId.getOid());
//            }
//        });
        if (allAttributeByBtmId.getData() != null) {
            for (BtmTypeAttributeVO attribute : allAttributeByBtmId.getData().getAttributes()) {
                if (!selectFieldList.contains(attribute.getId()) && !"secretgrade".equalsIgnoreCase(attribute.getId())) {
@@ -1863,13 +1857,13 @@
                    return (field.contains(".") ? "" : "t.") + field + SPACE + "= '" + getStringValueInWhere(field, value, attrVOMap) + "'" + SPACE;
                }
            } else {
                if (referFieldMap.containsKey(key)) {
                    //说明是参照的,我们参照的查询都认为是字符串,如果是时间格式的查询肯定有问题,
                    String selectKey = referFieldMap.get(key);
                    return getSqlByValue(selectKey, value, null, btmType);
                } else {
//                if (referFieldMap.containsKey(key)) {
//                    //说明是参照的,我们参照的查询都认为是字符串,如果是时间格式的查询肯定有问题,
//                    String selectKey = referFieldMap.get(key);
//                    return getSqlByValue(selectKey, value, null, btmType);
//                } else {
                    return getSqlByValue(key, value, attrVOMap, btmType);
                }
//                }
            }
        }
        return "";
@@ -1923,7 +1917,7 @@
            }
            if (field.contains(".") && attrVOMap != null && attrVOMap.containsKey(field.split("\\.")[0].toLowerCase(Locale.ROOT))) {
                //是参照
                return value;
                return "'" + value + "'";
            } else {
                return value;
            }
@@ -1947,13 +1941,13 @@
                        || VciFieldTypeEnum.VTInteger.equals(fieldTypeEnum)) {
                    return value;
                } else {
                    return value;
                    return "'" + value + "'";
                }
            } else {
                if ((value.startsWith("(") && value.endsWith(")")) || (value.startsWith("'") && value.endsWith("'"))) {
                    return value;
                }
                return value;
                return "'" + value + "'";
            }
        }
@@ -2077,9 +2071,7 @@
                    .append(SPACE)
                    .append(QueryOptionConstant.EQUAL)
                    .append(SPACE)
                    .append("'")
                    .append(value)
                    .append("'");
                    .append(value);
        }
        sql.append(SPACE);
        return sql.toString();
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -2209,7 +2209,7 @@
            } else if (StringUtils.isNotBlank(orderDTO.getCopyFromVersion())) {
                sql[0] += " and oid != '" + orderDTO.getCopyFromVersion() + "'";
            }
            sql[0] += " and islastR = '1' and islastV = '1' ";
            sql[0] += " and lastR = '1' and lastV = '1' ";
            if (commonsMapper.queryCountBySql(sql[0]) > 0) {
                String ruleInfoMsg = keyRuleVO == null ? "" : "查询规则:去除空格--{0},忽略大小写--{1},忽略全半角--{2},忽略全部空格--{3}";
                String[] objs = new String[]{trim ? "是" : "否", ignoreCase ? "是" : "否", ignoreWidth ? "是" : "否", trimAll ? "是" : "否"};
@@ -3850,8 +3850,8 @@
            }else{
                if (!CollectionUtils.isEmpty(conditionMap)) {
                    Map<String, String> andConditionMap = new HashMap<>();
                    andConditionMap.put("islastr", "1");
                    andConditionMap.put("islastv", "1");
                    andConditionMap.put("lastr", "1");
                    andConditionMap.put("lastv", "1");
                    conditionMap.putAll(andConditionMap);
                    PageHelper pageHelper = new PageHelper(-1);
                    pageHelper.addDefaultDesc("id");
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -655,7 +655,7 @@
                    propertyVOS.stream().forEach(propertyVO -> {
                        sb.append( " and  "+propertyVO.getFiledName()+"='"+propertyVO.getFiledValue()+"'");
                    });
                    sb.append(" and islastr=1 and islastv=1" );
                    sb.append(" and lastr=1 and lastv=1" );
                    sb.append(" and codeclsfid in (" + VciBaseUtil.toInSql(oidCodeclassifyDOMap.keySet().toArray(new String[0])) +")");
                    sb.append(" and Lcstatus in (" + VciBaseUtil.toInSql(statusList.toArray(new String[]{})) +")");
                    List<Map<String,String>>  newDataList= commonsMapper.queryByOnlySqlForMap(sb.toString());
@@ -752,6 +752,7 @@
        log.info("查询分类的数据类型:->"+dataType);
        ResultClassifyVO resultClassifyVO =new ResultClassifyVO();
        List<ClassifyVO> classifyVOList=new ArrayList<>();
        ResultData resultData=new ResultData();
        try {
            if (StringUtils.isBlank(data)) {
                errorid = "101";
@@ -806,21 +807,44 @@
                treeQueryObject.setQueryAllLevel(true);
                codeClassifyVOS=classifyService.selectCodeClassifyDOByTree(treeQueryObject);
            }
            LibraryVO libraryVo=new LibraryVO();
            libraryVo.setId(libId);
            libraryVo.setName("");
            if(!CollectionUtils.isEmpty(codeClassifyVOS)){
                errorid = "0";
                msg="成功!";
                codeClassifyVOS.stream().forEach(codeClassifyDO -> {
                    ClassifyVO classifyVO=new ClassifyVO();
                    classifyVO.setId(codeClassifyDO.getOid());
                    classifyVO.setLcStatus(codeClassifyDO.getLcStatus());
                    classifyVO.setClassCode(codeClassifyDO.getId());
                    classifyVO.setDescription(codeClassifyDO.getDescription());
                    classifyVO.setName(codeClassifyDO.getName());
                    classifyVO.setPid(codeClassifyDO.getParentcodeclassifyoid());
                    classifyVO.setFullPathName(codeClassifyDO.getPath());
                    classifyVOList.add(classifyVO);
                });
                libraryVo.setClassify(classifyVOList);
            }else{
                errorid = "100";
                msg="未查询到相关的分类信息";
            }
            issucess=true;
            resultData.setLibrary(libraryVo);
        }catch (Throwable e){
            e.printStackTrace();;
            msg="查询分类失败:"+e.getMessage();
        }finally {
        //    resultData.setErrorid(errorid);
        //    resultData.setMsg(msg);
        //    resultClassifyVO.setResultData(resultData);
            resultData.setErrorid(errorid);
            resultData.setMsg(msg);
            resultClassifyVO.setResultData(resultData);
        }
        if(dataType.equals("xml")){
            //组织返回接口信息
            XStream xStream = new XStream(new DomDriver());
            xStream.processAnnotations(XMLResultSystemVO.class);
            xStream.autodetectAnnotations(true);
            //resultStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(resultData);
            resultStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(resultData);
        }else{
            Object object = JSONObject.toJSON(resultClassifyVO);
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeWupinMapper.xml
@@ -8,10 +8,10 @@
        <result column="REVISIONOID" property="revisionOid"/>
        <result column="NAMEOID" property="nameOid"/>
        <result column="BTMNAME" property="btmname"/>
        <result column="ISLASTR" property="lastR"/>
        <result column="ISFIRSTR" property="firstR"/>
        <result column="ISLASTV" property="lastV"/>
        <result column="ISFIRSTV" property="firstV"/>
        <result column="LASTR" property="lastR"/>
        <result column="FIRSTR" property="firstR"/>
        <result column="LASTV" property="lastV"/>
        <result column="FIRSTV" property="firstV"/>
        <result column="CREATOR" property="creator"/>
        <result column="CREATETIME" property="createTime"/>
        <result column="LASTMODIFIER" property="lastModifier"/>