ludc
2023-09-08 be1abfb614840ba9f74b693b21fe0ca12bdf18ea
Merge remote-tracking branch 'origin/master'
已修改17个文件
已添加10个文件
2632 ■■■■ 文件已修改
Source/UBCS-WEB/src/components/FormTemplate/CodeApply.vue 206 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/index.vue 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/mixins/codeApply.js 380 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/code/code.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/docking/loge.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/modeling/original.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/modeling/originalAdd.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/EnumerableData.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgData.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgMasterData.java 477 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonData.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonMasterData.java 722 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/ResultMdMapping.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/ResultOrgData.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/org..json 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplyOrgPersonController.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/PersonAndDeptConfig.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/CodeApply.vue
@@ -1,103 +1,103 @@
<template>
  <FormTemplate
    ref="FormTemplate"
    :selfColumnType="selfColumnType"
    :selfColumnConfig="selfColumnConfig"
  ></FormTemplate>
</template>
<script>
export default {
  name: "CodeApply",
  components: { FormTemplate: () => import('./FormTemplate.vue') },
  props: {
  },
  data() {
    return {
      secVOList: [],
      formItems: [],
      trendsSpan: 8,
      selfColumnType: {
        codefixedsec: "combox",
        codeclassifysec: "refer",
        codevariablesec: "text",
        coderefersec: "refer",
      },
      selfColumnConfig: {
        function: {
          required: this.isRequired,
          dicData: this.getOptionList,
          type: this.getType,
        },
        exchange: {
          text: "name",
          field: "oid",
          prop: "oid",
          showField: "name",
          parentClassifySecOid: "parentClassifySecOid",
          label: "name",
          maxlength: "codeSecLength",
          data: "fixedValueVOList",
        },
        directVoluation: {
          search: true,
          props: {
            label: "id",
            value: "id",
          },
        },
      },
    };
  },
  created() {
    this.handleResize();
  },
  mounted() {},
  methods: {
    getType(item) {
      return this.selfColumnType[item.sectype];
    },
    isRequired(item) {
      return item.nullableFlag != "true";
    },
    getOptionList(item) {
      if (
        Array.isArray(item.fixedValueVOList) &&
        item.fixedValueVOList.length > 0
      ) {
        const configAttr = {
          key: "id",
          value: "id",
        };
        const optionList = item.fixedValueVOList.map((item) => {
          for (const key in configAttr) {
            if (Object.hasOwnProperty.call(configAttr, key)) {
              const element = configAttr[key];
              item[key] = item[element];
            }
          }
          return item;
        });
        return optionList;
      } else {
        return [];
      }
    },
    init(columnList) {
      this.$refs.FormTemplate.templateRender(columnList);
    },
    handleResize() {
      let windowWidth = document.body.clientWidth;
      this.trendsSpan = 24 / Math.floor(windowWidth / 500);
    },
    async validate() {
      return await this.$refs.FormTemplate.validate();
    },
  },
  watch: {},
};
</script>
<style lang="less" scoped></style>
<template>
  <FormTemplate
    ref="FormTemplate"
    :selfColumnType="selfColumnType"
    :selfColumnConfig="selfColumnConfig"
  ></FormTemplate>
</template>
<script>
export default {
  name: "CodeApply",
  components: { FormTemplate: () => import('./FormTemplate.vue') },
  props: {
  },
  data() {
    return {
      secVOList: [],
      formItems: [],
      trendsSpan: 8,
      selfColumnType: {
        codefixedsec: "combox",
        codeclassifysec: "refer",
        codevariablesec: "text",
        coderefersec: "refer",
      },
      selfColumnConfig: {
        function: {
          required: this.isRequired,
          dicData: this.getOptionList,
          type: this.getType,
        },
        exchange: {
          text: "name",
          field: "oid",
          prop: "oid",
          showField: "name",
          parentClassifySecOid: "parentClassifySecOid",
          label: "name",
          maxlength: "codeSecLength",
          data: "fixedValueVOList",
        },
        directVoluation: {
          search: true,
          props: {
            label: "id",
            value: "id",
          },
        },
      },
    };
  },
  created() {
    this.handleResize();
  },
  mounted() {},
  methods: {
    getType(item) {
      return this.selfColumnType[item.sectype];
    },
    isRequired(item) {
      return item.nullableFlag != "true";
    },
    getOptionList(item) {
      if (
        Array.isArray(item.fixedValueVOList) &&
        item.fixedValueVOList.length > 0
      ) {
        const configAttr = {
          key: "id",
          value: "id",
        };
        const optionList = item.fixedValueVOList.map((item) => {
          for (const key in configAttr) {
            if (Object.hasOwnProperty.call(configAttr, key)) {
              const element = configAttr[key];
              item[key] = item[element];
            }
          }
          return item;
        });
        return optionList;
      } else {
        return [];
      }
    },
    init(columnList) {
      this.$refs.FormTemplate.templateRender(columnList);
    },
    handleResize() {
      let windowWidth = document.body.clientWidth;
      this.trendsSpan = 24 / Math.floor(windowWidth / 500);
    },
    async validate() {
      return await this.$refs.FormTemplate.validate();
    },
  },
  watch: {},
};
</script>
<style lang="less" scoped></style>
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -138,7 +138,7 @@
      let value=''
      formItemList.forEach((formItem) => {
        formItem = this.resetFormConfig(formItem);
        console.log('formItem',formItem)
        // console.log('formItem',formItem)
        // console.log('formItem.dicData.value',formItem.dicData)
        if (formItem.type === "line") {
          group.push({
@@ -195,10 +195,12 @@
          valueFormat:formItem.dateFormate,
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: formItem.dicData && formItem.dicData.length > 0 && formItem.type == 'combox' ? formItem.dicData[0].id : null,
          value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            (formItem.secType == "codedatesec"?formItem.codeDateFormatStr: null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
          // hidden:formItem.secType && formItem.codeValueApplyStatus == 3 ? true : false,
          // readonly:formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false ,
          display: !formItem.hidden,
          maxlength: formItem.maxlength,
@@ -239,6 +241,7 @@
        };
        // console.log('columnItem',columnItem)
        slotColumnList.push(columnItem);
        // console.log('slotColumnList',slotColumnList)
        if (group.length === 0) {
          column.push(columnItem);
        } else {
@@ -255,10 +258,12 @@
      this.geDictData(dictKeys);
      this.getFormDetail();
      // console.log('selfColumnConfig',this.selfColumnConfig)
    },
    // ä½¿ç”¨ä¼ å…¥çš„表单数据配置
    resetFormConfig(formItem) {
      // console.log(this.selfColumnConfig)
      for (const configType in this.selfColumnConfig) {
        if (Object.hasOwnProperty.call(this.selfColumnConfig, configType)) {
          const element = this.selfColumnConfig[configType];
@@ -274,6 +279,9 @@
              if (Object.hasOwnProperty.call(element, newAttr)) {
                const oldAttr = element[newAttr];
                formItem[newAttr] = formItem[oldAttr];
                // console.log(formItem)
                // console.log(newAttr,oldAttr)
                // console.log(formItem[newAttr],formItem[oldAttr])
              }
            }
          } else if (configType === "directVoluation") {
@@ -364,7 +372,7 @@
      );
    },
    setReferValue(data) {
      console.log(data)
      // console.log(data)
      if (data.field) {
        this.form[data.field] = data.value || "";
        this.form[data.showField] = data.text || "";
Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -142,7 +142,7 @@
        coderefersec: "refer",//引用码段
        codeattrsec: "text",
        codelevelsec: "text",
        codedatesec: "date"
        codedatesec: "text"
      },
      selfColumnConfig: {
        function: {
@@ -263,9 +263,10 @@
    },
    // èŽ·å–ç å€¼ç”³è¯·æ•°æ®
    getCodeRule() {
      getCodeRule({ codeClassifyOid: this.codeClassifyOid }).then((res) => {
      let  that = this;
      getCodeRule({ codeClassifyOid: that.codeClassifyOid }).then((res) => {
        if (res.data && res.data.code === 200) {
          this.codeRuleOid = res.data.data.oid;
          that.codeRuleOid = res.data.data.oid;
          const typeList = [
            //属性码段 åªè¯»
            "codeattrsec",
@@ -283,20 +284,20 @@
            "codelevelsec",
            //流水码段 éšè—
          ];
          this.secVOList = (res.data.data.secVOList || []).filter((item) =>
          that.secVOList = (res.data.data.secVOList || []).filter((item) =>
            typeList.includes(item.secType)
          );
          if (this.secVOList.length > 0 && this.type === "add") {
            this.showCodeApply = true;
            this.activeName = "codeApply";
            this.$nextTick(() => {
              this.$refs.CodeApply.templateRender(this.secVOList);
          if (that.secVOList.length > 0 && that.type === "add") {
            that.showCodeApply = true;
            that.activeName = "codeApply";
            that.$nextTick(() => {
              that.$refs.CodeApply.templateRender(that.secVOList);
            });
          } else {
            this.showCodeApply = false;
            that.showCodeApply = false;
          }
        }
        // console.log(' this.secVOList',this.secVOList)
        // console.log(' this.secVOList',that.secVOList)
        // console.log(' res.data.data.secVOList',res.data.data.secVOList)
      });
    },
@@ -382,7 +383,6 @@
        this.$delete(formValue, item);
      });
      const keys = Object.keys(formValue);
      debugger
      keys.forEach((item, index) => {
        keys.forEach((itm, idx) => {
          if ((item === ('$' + itm)) && idx !== index) {
@@ -475,6 +475,8 @@
      } else if (item.secType == "coderefersec") {
        //引用码段
        params = JSON.parse(item.referValueInfo);
        // console.log('item',item)
        console.log('params',params)
      }
      return params;
    },
@@ -492,6 +494,7 @@
    isRequired(item) {
      return item.nullableFlag != "true";
    },
    //默认值
    getOptionList(item) {
      if (
        Array.isArray(item.fixedValueVOList) &&
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -69,6 +69,7 @@
                              :nodeList="nodeList" @MasterHandler="MasterHandler" @flushed="flushed"
                              @referTreeForm="referTreeForm"></classifyTreeform>
          </el-dialog>
<!--          å·¦ä¾§æ ‘-->
          <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata"
                     :defaultExpandAll="false"
                     :option="Treeoption"
Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
@@ -222,19 +222,19 @@
      this.selectionList.forEach((item,_index) =>{
        if(isMutiValue){
          var valueFieldArray = _that.props.value.split(",");
          valueFieldArray.forEach((_indexField,_itemField)=>{
            value.push( item[_itemField] + (_that.referConfig.valueSep?_that.referConfig.valueSep:' '));
          valueFieldArray.forEach((_itemField,_indexFiel)=>{
            value.push( (item[_itemField] || item['data'][_itemField]) + (_that.referConfig.valueSep?_that.referConfig.valueSep:' '));
          })
        }else {
          value.push(item[_that.props.value]);
          value.push(item[_that.props.value] || item['data'][_that.props.value]);
        }
        if(isMutiRaw) {
          var rawFieldArray = _that.props.label.split(",");
          rawFieldArray.forEach((_indexField,_itemField)=>{
            text.push(item[_itemField] + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ;
          rawFieldArray.forEach((_itemField,_indexField)=>{
            text.push((item[_itemField] || item['data'][_itemField]) + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ;
          })
        }else{
          text.push(item[_that.props.label]);
          text.push(item[_that.props.label] || item['data'][_that.props.label]);
        }
      })
Source/UBCS-WEB/src/components/refer/vciWebReferTable.vue
@@ -95,6 +95,9 @@
      this.page.pageSize=this.referConfig.options.page.limit || this.referConfig.options.page.pageSize;
      this.page.currentPage=this.referConfig.options.page.page || this.referConfig.options.page.currentPage;
    }
    this.$nextTick(() => {
      this.$refs.referCrud.doLayout()
    })
  },
  computed:{
@@ -161,6 +164,7 @@
      if(this.options.displayTable){
        //说明是使用平台的表格
        getTableDefinedUrl({btmType:(this.options.referBo||this.options.referType),code:this.options.displayTable,isMuti:this.isMuti},this.tableDefinedUrl).then(result => {
          console.log('result',result)
          if(result.success){
            var queryScheme = result.querySchema;
            if(!validatenull(queryScheme) && validatenull(this.options.queryScheme)){
@@ -282,19 +286,19 @@
      this.selectionList.forEach((item,_index) =>{
        if(isMutiValue){
          var valueFieldArray = _that.props.value.split(",");
          valueFieldArray.forEach((_indexField,_itemField)=>{
            value.push( item[_itemField] + (_that.referConfig.valueSep?_that.referConfig.valueSep:' '));
          valueFieldArray.forEach((_itemField,_indexFiel)=>{
            value.push( (item[_itemField] || item['data'][_itemField]) + (_that.referConfig.valueSep?_that.referConfig.valueSep:' '));
          })
        }else {
          value.push(item[_that.props.value]);
          value.push(item[_that.props.value] || item['data'][_that.props.value]);
        }
        if(isMutiRaw) {
          var rawFieldArray = _that.props.label.split(",");
          rawFieldArray.forEach((_indexField,_itemField)=>{
            text.push(item[_itemField] + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ;
          rawFieldArray.forEach((_itemField,_indexField)=>{
            text.push((item[_itemField] || item['data'][_itemField]) + (_that.referConfig.textSep?_that.referConfig.textSep:' ')) ;
          })
        }else{
          text.push(item[_that.props.label]);
          text.push(item[_that.props.label] || item['data'][_that.props.label]);
        }
      })
Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
@@ -163,13 +163,13 @@
      const textSep =this.config.textSep;
      for(var j =0;j<checkedData.checkedNodes.length;j++){
        const item=checkedData.checkedNodes[j];
        var v=this.config.valueField.indexOf("attribute.")>=0?item.attributes[this.config.valueField.replace("attribute.","")]:(item.attributes[this.config.valueField] || item[this.config.valueField])
        var v=this.config.valueField.indexOf("attribute.")>=0?(item.attributes[this.config.valueField.replace("attribute.","")] || item.attributes.data[this.config.valueField.replace("attribute.","")]):(item.attributes[this.config.valueField] || item[this.config.valueField] || item.attributes.data[this.config.valueField])
        value.push(v);
        var tempRaw = [];
        var textFieldArray = this.config.textField.split(",");
        for (var i = 0; i < textFieldArray.length; i++) {//显示的字段可能有多个
          if (!validatenull(textFieldArray[i])) {
            var t=textFieldArray[i].indexOf("attribute.")>=0?item.attributes[textFieldArray[i].replace("attribute.","")]:(item.attributes[textFieldArray[i]] || item[textFieldArray[i]])
            var t=textFieldArray[i].indexOf("attribute.")>=0?(item.attributes[textFieldArray[i].replace("attribute.","")] ||item.attributes.data[textFieldArray[i].replace("attribute.","")]):(item.attributes[textFieldArray[i]] || item[textFieldArray[i]] || item.attributes.data[textFieldArray[i]])
            tempRaw.push(t);
          }
        }
Source/UBCS-WEB/src/mixins/codeApply.js
@@ -1,190 +1,190 @@
import { getCodeRule } from "@/api/formTemplate.js";
export default {
  data() {
    return {
      secVOList: [],
      localSecVOList: [],
      showCodeApply: false,
      selfColumnType: {
        codefixedsec: "combox",
        codeclassifysec: "refer",
        codevariablesec: "text",
        coderefersec: "refer",
      },
      selfColumnConfig: {
        function: {
          required: this.isRequired,
          dicData: this.getOptionList,
          type: this.getType,
          referConfig: this.getReferConfig,
          readOnly: this.getDisabled,
        },
        exchange: {
          text: "name",
          field: "oid",
          prop: "oid",
          showField: "name",
          parentClassifySecOid: "parentClassifySecOid",
          label: "name",
          maxlength: "codeSecLength",
          data: "fixedValueVOList",
        },
        directVoluation: {
          search: true,
          span: 12,
          props: {
            label: "id",
            value: "id",
          },
        },
      },
      codeApplyForm: {},
    }
  },
  created() {
    if (this.type === 'batchImportApply') {
      this.getCodeRule()
    }
  },
  methods: {
    // èŽ·å–ç å€¼ç”³è¯·æ•°æ®
    getCodeRule() {
      getCodeRule({ codeClassifyOid: this.localCodeClassifyOid || this.codeClassifyOid }).then((res) => {
        if (res.data && res.data.code === 200) {
          const typeList = [
            "codefixedsec",
            "codeclassifysec",
            "codevariablesec",
            "coderefersec",
          ];
          this.secVOList = res.data.data.secVOList || []
          this.localSecVOList = (res.data.data.secVOList || []).filter((item) =>
            typeList.includes(item.secType)
          );
          if (this.localSecVOList.length > 0) {
            this.showCodeApply = true
            this.$nextTick(() => {
              if (this.batchApplyCodeTableData) {
                this.batchApplyCodeTableData[this.codeRuleOid]["localSecVOList"] = this.localSecVOList
              }
              this.$refs.CodeApply.templateRender(this.localSecVOList);
            });
          } else {
            this.showCodeApply = false
          }
        }
      });
    },
    getCodeApplyFormData(codeApplyForm) {
      this.codeApplyForm = codeApplyForm;
      if (this.batchApplyCodeTableData) {
        this.batchApplyCodeTableData[this.codeRuleOid]["codeApply"] = codeApplyForm
      }
    },
    getType(item) {
      console.log(item.secType, 'item.secType');
      return this.selfColumnType[item.secType];
    },
    getReferConfig(item) {
      let params = {};
      if (item.secType == "codeclassifysec") {
        params = {
          isMuti: false,
          type: "grid",
          tableConfig: {
            limit: -1,
            cols: [
              {
                field: "id",
                title: "英文名称",
                sort: true,
                width: 150,
              },
              {
                field: "name",
                title: "中文名称",
                sort: true,
                width: 150,
              },
              {
                field: "description",
                title: "描述",
                width: 250,
              },
            ],
            queryColumns: [
              {
                field: "id",
                title: "英文名称",
              },
              {
                field: "name",
                title: "中文名称",
              },
            ],
          },
          url: "api/ubcs-code/ubcs-code/mdmEngineController/listCodeClassifyValueBySecOid",
          extraParams: {
            classifySecOid: item.oid,
            parentClassifyValueOid: item.parentClassifySecOid
              ? this.codeApplyForm[item.parentClassifySecOid]
              : "",
          },
        };
      } else if (item.secType == "coderefersec") {
        params = JSON.parse(item.referValueInfo);
      }
      return params;
    },
    getDisabled(item) {
      if (item.secType === "codeclassifysec") {
        if (item.parentClassifySecOid) {
          if (!this.codeApplyForm[item.parentClassifySecOid]) {
            return true;
          } else {
            return false;
          }
        }
      }
    },
    isRequired(item) {
      return item.nullableFlag != "true";
    },
    getOptionList(item) {
      if (
        Array.isArray(item.fixedValueVOList) &&
        item.fixedValueVOList.length > 0
      ) {
        const configAttr = {
          key: "id",
          value: "id",
        };
        const optionList = item.fixedValueVOList.map((item) => {
          for (const key in configAttr) {
            if (Object.hasOwnProperty.call(configAttr, key)) {
              const element = configAttr[key];
              item[key] = item[element];
            }
          }
          return item;
        });
        return optionList;
      } else {
        return [];
      }
    },
    // å‚照组件数据变更
    referConfigDataUpdate(data) {
      const { field } = data;
      this.localSecVOList = this.localSecVOList.map((item) => {
        if (item.parentClassifySecOid === field) {
          this.$refs.CodeApply.form[item.oid] = undefined;
          this.$refs.CodeApply.form[item.name] = undefined;
        }
        return item;
      });
      this.$refs.CodeApply.templateRender(this.localSecVOList);
    },
  }
}
import { getCodeRule } from "@/api/formTemplate.js";
export default {
  data() {
    return {
      secVOList: [],
      localSecVOList: [],
      showCodeApply: false,
      selfColumnType: {
        codefixedsec: "combox",
        codeclassifysec: "refer",
        codevariablesec: "text",
        coderefersec: "refer",
      },
      selfColumnConfig: {
        function: {
          required: this.isRequired,
          dicData: this.getOptionList,
          type: this.getType,
          referConfig: this.getReferConfig,
          readOnly: this.getDisabled,
        },
        exchange: {
          text: "name",
          field: "oid",
          prop: "oid",
          showField: "name",
          parentClassifySecOid: "parentClassifySecOid",
          label: "name",
          maxlength: "codeSecLength",
          data: "fixedValueVOList",
        },
        directVoluation: {
          search: true,
          span: 12,
          props: {
            label: "id",
            value: "id",
          },
        },
      },
      codeApplyForm: {},
    }
  },
  created() {
    if (this.type === 'batchImportApply') {
      this.getCodeRule()
    }
  },
  methods: {
    // èŽ·å–ç å€¼ç”³è¯·æ•°æ®
    getCodeRule() {
      getCodeRule({ codeClassifyOid: this.localCodeClassifyOid || this.codeClassifyOid }).then((res) => {
        if (res.data && res.data.code === 200) {
          const typeList = [
            "codefixedsec",
            "codeclassifysec",
            "codevariablesec",
            "coderefersec",
          ];
          this.secVOList = res.data.data.secVOList || []
          this.localSecVOList = (res.data.data.secVOList || []).filter((item) =>
            typeList.includes(item.secType)
          );
          if (this.localSecVOList.length > 0) {
            this.showCodeApply = true
            this.$nextTick(() => {
              if (this.batchApplyCodeTableData) {
                this.batchApplyCodeTableData[this.codeRuleOid]["localSecVOList"] = this.localSecVOList
              }
              this.$refs.CodeApply.templateRender(this.localSecVOList);
            });
          } else {
            this.showCodeApply = false
          }
        }
      });
    },
    getCodeApplyFormData(codeApplyForm) {
      this.codeApplyForm = codeApplyForm;
      if (this.batchApplyCodeTableData) {
        this.batchApplyCodeTableData[this.codeRuleOid]["codeApply"] = codeApplyForm
      }
    },
    getType(item) {
      console.log(item.secType, 'item.secType');
      return this.selfColumnType[item.secType];
    },
    getReferConfig(item) {
      let params = {};
      if (item.secType == "codeclassifysec") {
        params = {
          isMuti: false,
          type: "grid",
          tableConfig: {
            limit: -1,
            cols: [
              {
                field: "id",
                title: "英文名称",
                sort: true,
                width: 150,
              },
              {
                field: "name",
                title: "中文名称",
                sort: true,
                width: 150,
              },
              {
                field: "description",
                title: "描述",
                width: 250,
              },
            ],
            queryColumns: [
              {
                field: "id",
                title: "英文名称",
              },
              {
                field: "name",
                title: "中文名称",
              },
            ],
          },
          url: "api/ubcs-code/ubcs-code/mdmEngineController/listCodeClassifyValueBySecOid",
          extraParams: {
            classifySecOid: item.oid,
            parentClassifyValueOid: item.parentClassifySecOid
              ? this.codeApplyForm[item.parentClassifySecOid]
              : "",
          },
        };
      } else if (item.secType == "coderefersec") {
        params = JSON.parse(item.referValueInfo);
      }
      return params;
    },
    getDisabled(item) {
      if (item.secType === "codeclassifysec") {
        if (item.parentClassifySecOid) {
          if (!this.codeApplyForm[item.parentClassifySecOid]) {
            return true;
          } else {
            return false;
          }
        }
      }
    },
    isRequired(item) {
      return item.nullableFlag != "true";
    },
    getOptionList(item) {
      if (
        Array.isArray(item.fixedValueVOList) &&
        item.fixedValueVOList.length > 0
      ) {
        const configAttr = {
          key: "id",
          value: "id",
        };
        const optionList = item.fixedValueVOList.map((item) => {
          for (const key in configAttr) {
            if (Object.hasOwnProperty.call(configAttr, key)) {
              const element = configAttr[key];
              item[key] = item[element];
            }
          }
          return item;
        });
        return optionList;
      } else {
        return [];
      }
    },
    // å‚照组件数据变更
    referConfigDataUpdate(data) {
      const { field } = data;
      this.localSecVOList = this.localSecVOList.map((item) => {
        if (item.parentClassifySecOid === field) {
          this.$refs.CodeApply.form[item.oid] = undefined;
          this.$refs.CodeApply.form[item.name] = undefined;
        }
        return item;
      });
      this.$refs.CodeApply.templateRender(this.localSecVOList);
    },
  }
}
Source/UBCS-WEB/src/views/code/code.vue
@@ -477,17 +477,17 @@
      <!-- åˆ†ç±»ç æ®µç å€¼ç®¡ç† -->
      <el-row v-show="!isShowFixedForm">
        <el-col :span="11">
          <basic-container>
          <basic-container style="overflow:hidden">
            <div
              class="box classify_value_box"
              style="height: 60vh; margin-bottom: -40px"
            >
              <basic-container>
                <div class="abox" style="height: 54vh">
                <div class="abox">
                  <avue-tree
                    :data="classifyValueTreeData"
                    :option="classisyValueTreeOption"
                    style=""
                    style="height: calc(60vh - 100px);"
                    @node-click="classisyValueTreeOnodeClick"
                  />
                </div>
Source/UBCS-WEB/src/views/docking/loge.vue
@@ -96,7 +96,7 @@
          },
          {
            label: '类型',
            prop: 'type',
            prop: 'typeText',
            search: true,
            sortable:true,
            width: 150
@@ -129,7 +129,7 @@
            width: 160
          },
          {
            label: '是否推送成功',
            label: '是否成功',
            prop: 'interfaceStatus',
            search: true,
            sortable:true,
Source/UBCS-WEB/src/views/modeling/original.vue
@@ -1,4 +1,4 @@
<template>
  <template>
  <el-container>
    <el-main>
      <basic-container>
Source/UBCS-WEB/src/views/modeling/originalAdd.vue
@@ -111,7 +111,7 @@
            <!-- é€‰æ‹©æžšä¸¾æ—¶çš„弹窗 -->
            <el-dialog title="枚举列表" :visible.sync="enumRefer.show" append-to-body @close="closeEnumDialog" width="70%"
                style="height: 115vh;">
                <avue-crud ref="eunmTable" :option="enumRefer.option" :data="enumRefer.data" class="enumTable"
                <avue-crud ref="eunmTable" :option="enumRefer.option"  @on-load="enumOnLoad" :data="enumRefer.data" class="enumTable"
                    @row-click="enumReferClick" :page.sync="enumRefer.enumPage">
                    <template slot="radio" slot-scope="{row}">
                        <el-radio v-model="enumRefer.selectRow" :label="row.$index">&nbsp;
@@ -281,6 +281,12 @@
        this.initAttributeReferTypeList();
    },
    methods: {
        enumOnLoad(){
          getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize).then(res => {
            this.enumRefer.enumPage.total = res.data.data.total;
            this.enumRefer.data = res.data.data.records;
          })
        },
        closeSubmitDialog() {
            this.resetAttributeForm();
            this.showSubmitDialog = false;
Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/CodeApplyFor410Dialog.java
@@ -31,7 +31,8 @@
    private Component parentComponet = null;
    private Map<String, String> attrNameAndValMap = new LinkedHashMap();//存储属性名称(包含内部名称和外部名称)和对应的值
    private String tokenUrl= ConfigUtils.getConfigValue("410.code.token.url","http://127.0.0.1:37000/ubcs-auth/oauth/token");
    private String[] fields;
    private String[] Values;
    /**
     * å­˜å‚¨åˆ†ç±»çš„Map,key:分类名称,value:分类值
     */
@@ -49,6 +50,18 @@
    public CodeApplyFor410Dialog(JDialog dialog, String clsfName, String deptName) {
        this(dialog, "pdmUser", clsfName, deptName,new String[]{});
    }
    public CodeApplyFor410Dialog(Frame frame, String clsfName, String deptName,String[] fields,String[] values){
        this.setModal(true);
        parentComponet = frame;
        this.userName = userName;
        this.clsfName = clsfName;
        this.deptName = deptName;
        this.fields=fields;
        this.Values=values;
        //this.libName = libName;
        init();
    }
    public CodeApplyFor410Dialog(Frame frame, String userName, String clsfName, String deptName, String[] libName){
        super(frame, true);
        VCISwingUtil.setClientMainFrame(frame);
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/EnumerableData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
public class EnumerableData {
    /***
     *内部值
     */
    private String mdm_code;
    /***
     * å†…部值
     */
    private String code;
    /**
     * æ˜¾ç¤ºå€¼
     */
    private String name;
    /**
     * æè¿°
     */
    private String descript;
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,103 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
import java.util.List;
public class OrgData {
    /**
     * æ•°æ®å®¡æ‰¹çŠ¶æ€0:审批正常,1:审批拒绝
     */
    private int code;
    /***
     * å®¡æ‰¹æ‹’绝时的详情信息
     */
    private String msg;
    /**
     * é›†æˆç³»ç»Ÿç¼–码
     */
    private String systemCode;
    /**
     * ä¸»æ•°æ®æ¨¡åž‹çš„编码
     */
    private  String mdType;
    /***
     * æ•°æ®åˆ†å‘所触发的类型 æ‰‹åŠ¨åˆ†å‘:distribute_manual,
     */
    private String action;
    /***
     * æ¶ˆè´¹ç³»ç»Ÿä¸­é…ç½®çš„分发令牌
     */
    private String distributeToken;
    /***
     * åˆ†å‘人员数据信息
     */
    private List<OrgMasterData> masterData ;
    public int getCode() {
        return code;
    }
    public void setCode(int code) {
        this.code = code;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }
    public String getSystemCode() {
        return systemCode;
    }
    public void setSystemCode(String systemCode) {
        this.systemCode = systemCode;
    }
    public String getMdType() {
        return mdType;
    }
    public void setMdType(String mdType) {
        this.mdType = mdType;
    }
    public String getAction() {
        return action;
    }
    public void setAction(String action) {
        this.action = action;
    }
    public String getDistributeToken() {
        return distributeToken;
    }
    public void setDistributeToken(String distributeToken) {
        this.distributeToken = distributeToken;
    }
    public List<OrgMasterData> getMasterData() {
        return masterData;
    }
    public void setMasterData(List<OrgMasterData> masterData) {
        this.masterData = masterData;
    }
    @Override
    public String toString() {
        return "PersonData{" +
            "code='" + code + '\'' +
            ", msg='" + msg + '\'' +
            ", systemCode='" + systemCode + '\'' +
            ", mdType='" + mdType + '\'' +
            ", action='" + action + '\'' +
            ", distributeToken='" + distributeToken + '\'' +
            ", masterData=" + masterData +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgMasterData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,477 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
public class OrgMasterData {
    /**
     * éš¶å±žå•位代码
     */
    private  String company_code;
    /**
     * éš¶å±žå•位名称/所属公司
     */
    private  String  company_name;
    /**
     * éƒ¨é—¨ç¼–码
     */
    private String department_code;
    /**
     * éƒ¨é—¨åç§°
     */
    private String department_name;
    /**
     * éƒ¨é—¨ç±»åž‹ 1=普通部门,2=决策部门
     */
    private String department_type;
    /**
     * ä¸Šçº§éƒ¨é—¨ç¼–码 æ‰€å±‹ä¸Šçº§éƒ¨é—¨ï¼Œå¼•用部门主数据,集团命名“上级部门代码
     */
    private String  parent_department_code;
    /**
     * ä¸Šçº§éƒ¨é—¨åç§°
     */
    private String  parent_department_name;
    /**
     * éƒ¨é—¨è´Ÿè´£äºº
     */
    private String  department_head;
    /***
     * è´Ÿè´£äººç¼–码
     */
    private String department_head_code;
    /***
     * ç”µè¯
     */
    private String telephone_number;
    /***
     * æŽ’序号
     */
    private  String sort_order;
    /**
     *启用状态 1=未启用,2=已启用,3e已停用
     */
    private int enable_datus;
    /**
     * éƒ¨é—¨å±‚级
     */
    private String department_level;
    /***
     * æ˜¯é¦™è™šæ‹Ÿéƒ¨é—¨
     */
    private String is_virtual;
    /***
     * éƒ¨é—¨çŠ¶æ€,有效、作度
     */
    private  String department_status;
    /***
     * éƒ¨é—¨æ˜¾ç¤ºçŠ¶æ€,显示、不显示
     */
    private String diplay_status;
    /***
     * éƒ¨é—¨ID路径
     */
    private String id_route;
    /***
     *部门名称路径
     */
    private String name_route;
    /***
     *节点类型,当前新加节点的类别,部门,企业(法人单位),默认
     */
    private String node_type;
    /***
     * éƒ¨é—¨åŽŸç¼–ç ,记录该部门的原有编码,作为换号时的对解
     */
    private String onginal_code;
    /**
     * åˆ›å»ºè€…
     */
    private String creator;
    /***
     * åˆ›å»ºæ—¶é—´
     */
    private String createtime;
    /***
     * ä¿®æ”¹è€…
     */
    private  String modifier;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    private String modifytime;
    private String mdm_parentcode;
    private  int mdm_workflow_status;
    private String  mdm_datastatus;
    private String mdm_cleanstatus;
    private String  link_fieldvalue;
    private String floy_middatastatus;
    private String originalcode;
    private String pk_mdn;
    private String mdm_duplicate;
    private String mdm_code;
    private String mdm_version;
    private String original_nane;
    private String ts;
    /***
     *0:正常,1数据被删除,默认为0;
     */
    private int dr;
    private String dr_ndm_code;
    public String getCompany_code() {
        return company_code;
    }
    public void setCompany_code(String company_code) {
        this.company_code = company_code;
    }
    public String getCompany_name() {
        return company_name;
    }
    public void setCompany_name(String company_name) {
        this.company_name = company_name;
    }
    public String getDepartment_code() {
        return department_code;
    }
    public void setDepartment_code(String department_code) {
        this.department_code = department_code;
    }
    public String getDepartment_name() {
        return department_name;
    }
    public void setDepartment_name(String department_name) {
        this.department_name = department_name;
    }
    public String getDepartment_type() {
        return department_type;
    }
    public void setDepartment_type(String department_type) {
        this.department_type = department_type;
    }
    public String getParent_department_code() {
        return parent_department_code;
    }
    public void setParent_department_code(String parent_department_code) {
        this.parent_department_code = parent_department_code;
    }
    public String getParent_department_name() {
        return parent_department_name;
    }
    public void setParent_department_name(String parent_department_name) {
        this.parent_department_name = parent_department_name;
    }
    public String getDepartment_head() {
        return department_head;
    }
    public void setDepartment_head(String department_head) {
        this.department_head = department_head;
    }
    public String getDepartment_head_code() {
        return department_head_code;
    }
    public void setDepartment_head_code(String department_head_code) {
        this.department_head_code = department_head_code;
    }
    public String getTelephone_number() {
        return telephone_number;
    }
    public void setTelephone_number(String telephone_number) {
        this.telephone_number = telephone_number;
    }
    public String getSort_order() {
        return sort_order;
    }
    public void setSort_order(String sort_order) {
        this.sort_order = sort_order;
    }
    public int getEnable_datus() {
        return enable_datus;
    }
    public void setEnable_datus(int enable_datus) {
        this.enable_datus = enable_datus;
    }
    public String getDepartment_level() {
        return department_level;
    }
    public void setDepartment_level(String department_level) {
        this.department_level = department_level;
    }
    public String getIs_virtual() {
        return is_virtual;
    }
    public void setIs_virtual(String is_virtual) {
        this.is_virtual = is_virtual;
    }
    public String getDepartment_status() {
        return department_status;
    }
    public void setDepartment_status(String department_status) {
        this.department_status = department_status;
    }
    public String getDiplay_status() {
        return diplay_status;
    }
    public void setDiplay_status(String diplay_status) {
        this.diplay_status = diplay_status;
    }
    public String getId_route() {
        return id_route;
    }
    public void setId_route(String id_route) {
        this.id_route = id_route;
    }
    public String getName_route() {
        return name_route;
    }
    public void setName_route(String name_route) {
        this.name_route = name_route;
    }
    public String getNode_type() {
        return node_type;
    }
    public void setNode_type(String node_type) {
        this.node_type = node_type;
    }
    public String getOnginal_code() {
        return onginal_code;
    }
    public void setOnginal_code(String onginal_code) {
        this.onginal_code = onginal_code;
    }
    public String getCreator() {
        return creator;
    }
    public void setCreator(String creator) {
        this.creator = creator;
    }
    public String getCreatetime() {
        return createtime;
    }
    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }
    public String getModifier() {
        return modifier;
    }
    public void setModifier(String modifier) {
        this.modifier = modifier;
    }
    public String getModifytime() {
        return modifytime;
    }
    public void setModifytime(String modifytime) {
        this.modifytime = modifytime;
    }
    public String getMdm_parentcode() {
        return mdm_parentcode;
    }
    public void setMdm_parentcode(String mdm_parentcode) {
        this.mdm_parentcode = mdm_parentcode;
    }
    public int getMdm_workflow_status() {
        return mdm_workflow_status;
    }
    public void setMdm_workflow_status(int mdm_workflow_status) {
        this.mdm_workflow_status = mdm_workflow_status;
    }
    public String getMdm_datastatus() {
        return mdm_datastatus;
    }
    public void setMdm_datastatus(String mdm_datastatus) {
        this.mdm_datastatus = mdm_datastatus;
    }
    public String getMdm_cleanstatus() {
        return mdm_cleanstatus;
    }
    public void setMdm_cleanstatus(String mdm_cleanstatus) {
        this.mdm_cleanstatus = mdm_cleanstatus;
    }
    public String getLink_fieldvalue() {
        return link_fieldvalue;
    }
    public void setLink_fieldvalue(String link_fieldvalue) {
        this.link_fieldvalue = link_fieldvalue;
    }
    public String getFloy_middatastatus() {
        return floy_middatastatus;
    }
    public void setFloy_middatastatus(String floy_middatastatus) {
        this.floy_middatastatus = floy_middatastatus;
    }
    public String getOriginalcode() {
        return originalcode;
    }
    public void setOriginalcode(String originalcode) {
        this.originalcode = originalcode;
    }
    public String getPk_mdn() {
        return pk_mdn;
    }
    public void setPk_mdn(String pk_mdn) {
        this.pk_mdn = pk_mdn;
    }
    public String getMdm_duplicate() {
        return mdm_duplicate;
    }
    public void setMdm_duplicate(String mdm_duplicate) {
        this.mdm_duplicate = mdm_duplicate;
    }
    public String getMdm_code() {
        return mdm_code;
    }
    public void setMdm_code(String mdm_code) {
        this.mdm_code = mdm_code;
    }
    public String getMdm_version() {
        return mdm_version;
    }
    public void setMdm_version(String mdm_version) {
        this.mdm_version = mdm_version;
    }
    public String getOriginal_nane() {
        return original_nane;
    }
    public void setOriginal_nane(String original_nane) {
        this.original_nane = original_nane;
    }
    public String getTs() {
        return ts;
    }
    public void setTs(String ts) {
        this.ts = ts;
    }
    public int getDr() {
        return dr;
    }
    public void setDr(int dr) {
        this.dr = dr;
    }
    public String getDr_ndm_code() {
        return dr_ndm_code;
    }
    public void setDr_ndm_code(String dr_ndm_code) {
        this.dr_ndm_code = dr_ndm_code;
    }
    @Override
    public String toString() {
        return "OrgMasterData{" +
            "company_code='" + company_code + '\'' +
            ", company_name='" + company_name + '\'' +
            ", department_code='" + department_code + '\'' +
            ", department_name='" + department_name + '\'' +
            ", department_type='" + department_type + '\'' +
            ", parent_department_code='" + parent_department_code + '\'' +
            ", parent_department_name='" + parent_department_name + '\'' +
            ", department_head='" + department_head + '\'' +
            ", department_head_code='" + department_head_code + '\'' +
            ", telephone_number='" + telephone_number + '\'' +
            ", sort_order='" + sort_order + '\'' +
            ", enable_datus=" + enable_datus +
            ", department_level='" + department_level + '\'' +
            ", is_virtual='" + is_virtual + '\'' +
            ", department_status='" + department_status + '\'' +
            ", diplay_status='" + diplay_status + '\'' +
            ", id_route='" + id_route + '\'' +
            ", name_route='" + name_route + '\'' +
            ", node_type='" + node_type + '\'' +
            ", onginal_code='" + onginal_code + '\'' +
            ", creator='" + creator + '\'' +
            ", createtime='" + createtime + '\'' +
            ", modifier='" + modifier + '\'' +
            ", modifytime='" + modifytime + '\'' +
            ", mdm_parentcode='" + mdm_parentcode + '\'' +
            ", mdm_workflow_status=" + mdm_workflow_status +
            ", mdm_datastatus='" + mdm_datastatus + '\'' +
            ", mdm_cleanstatus='" + mdm_cleanstatus + '\'' +
            ", link_fieldvalue='" + link_fieldvalue + '\'' +
            ", floy_middatastatus='" + floy_middatastatus + '\'' +
            ", originalcode='" + originalcode + '\'' +
            ", pk_mdn='" + pk_mdn + '\'' +
            ", mdm_duplicate='" + mdm_duplicate + '\'' +
            ", mdm_code='" + mdm_code + '\'' +
            ", mdm_version='" + mdm_version + '\'' +
            ", original_nane='" + original_nane + '\'' +
            ", ts='" + ts + '\'' +
            ", dr=" + dr +
            ", dr_ndm_code='" + dr_ndm_code + '\'' +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,106 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
import java.util.List;
/***
 * ä¸ŽäººåŠ›èµ„æºé›†æˆçš„æ•°æ®å¯¹è±¡
 */
public class PersonData {
    /**
     * æ•°æ®å®¡æ‰¹çŠ¶æ€0:审批正常,1:审批拒绝
     */
    private int code;
    /***
     * å®¡æ‰¹æ‹’绝时的详情信息
     */
    private String msg;
    /**
     * é›†æˆç³»ç»Ÿç¼–码
     */
    private String systemCode;
    /**
     * ä¸»æ•°æ®æ¨¡åž‹çš„编码
     */
    private  String mdType;
    /***
     * æ•°æ®åˆ†å‘所触发的类型 æ‰‹åŠ¨åˆ†å‘:distribute_manual,
     */
    private String action;
    /***
     * æ¶ˆè´¹ç³»ç»Ÿä¸­é…ç½®çš„分发令牌
     */
    private String distributeToken;
    /***
     * åˆ†å‘人员数据信息
     */
    private List<PersonMasterData> masterData ;
    public int getCode() {
        return code;
    }
    public void setCode(int code) {
        this.code = code;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }
    public String getSystemCode() {
        return systemCode;
    }
    public void setSystemCode(String systemCode) {
        this.systemCode = systemCode;
    }
    public String getMdType() {
        return mdType;
    }
    public void setMdType(String mdType) {
        this.mdType = mdType;
    }
    public String getAction() {
        return action;
    }
    public void setAction(String action) {
        this.action = action;
    }
    public String getDistributeToken() {
        return distributeToken;
    }
    public void setDistributeToken(String distributeToken) {
        this.distributeToken = distributeToken;
    }
    public List<PersonMasterData> getMasterData() {
        return masterData;
    }
    public void setMasterData(List<PersonMasterData> masterData) {
        this.masterData = masterData;
    }
    @Override
    public String toString() {
        return "PersonData{" +
            "code='" + code + '\'' +
            ", msg='" + msg + '\'' +
            ", systemCode='" + systemCode + '\'' +
            ", mdType='" + mdType + '\'' +
            ", action='" + action + '\'' +
            ", distributeToken='" + distributeToken + '\'' +
            ", masterData=" + masterData +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonMasterData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,722 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
public class PersonMasterData {
    /***
     * æ•°æ®åœ¨æ­¤ç³»ç»Ÿä¸­å”¯ä¸€æ ‡è¯†
     */
    private String id;
    /***
     * å‘˜å·¥ç¼–码(企业编码)
     */
    private String lm_code;
    /**
     * é›†å›¢å‘˜å·¥ç¼–号
     */
    private String group_code;
    /***
     * å‘˜å·¥å§“名
     */
    private String name;
    /**
     * ä¸»æ•°æ®ç¼–码
     */
    private String mdm_code;
    /***
     *0:正常,1数据被删除,默认为0;
     */
    private int dr;
    /***
     * è¡Œæ”¿åŒºåŸŸåŒ–
     */
    private String admin_division;
    /***
     * è¡Œæ”¿åŒºåŸŸåŒ–号码
     */
    private String admin_division_code;
    /**
     * å‡ºç”Ÿæ—¥æœŸ(yyyy-MM-dd)
     */
    private String birthday;
    /**
     * å‡ºç”Ÿåœ°
     */
    private String birthplace;
    /***
     * ç±è´¯
     */
    private String cittizenship;
    /**
     * å›½å®¶/地区
     */
    private String country;
    /***
     * éƒ¨é—¨
     */
    private String dept_type;
    /***
     * éƒ¨é—¨åç§°
     */
    private String deptName;
    /***
     * å­¦åކ
     */
    private String education;
    /***
     * ä»»èŒå•位编码
     */
    private String employer_code;
    /***
     * ç”¨å·¥å½¢å¼
     */
    private String employment_form;
    /**
     * èº«ä»½è¯ç¼–号
     */
    private String id_number;
    /***
     * è¯ä»¶ç±»åž‹
     */
    private String id_type;
    /***
     * æ˜¯å¦ä¸»èŒ
     */
    private String is_keyposion;
    /**
     * å©šå§»çж况
     */
    private String marital_status;
    /**
     * æ‰‹æœºå·ç 
     */
    private String mobile_phone;
    /***
     * åæ—
     */
    private String nationality;
    /**
     * åŠžå…¬ç”µè¯
     */
    private String office_telephone;
    /***
     *外网邮箱
     */
    private String outer_email;
    /***
     *上级门编码
     */
    private String parent_dept_code;
    /***
     *上级门名称
     */
    private String parent_dept_name;
    /***
     *政治面貌
     */
    private String politiccountenance;
    /***
     * å²—位
     */
    private String position;
    /***
     * èŒç§°
     */
    private String work_title;
    /***
     * äººå‘˜ç±»åˆ«
     */
    private String worker_category;
    /***
     * èŒåŠ¡
     */
    private String worker_duty;
    /***
     * å·¥ä½œé‚®ç®±
     */
    private String worker_email;
    /***
     * èŒçº§
     */
    private String worker_level;
    /***
     * äººå‘˜å¯†çº§
     */
    private String worker_security_level;
    /***
     * æµç¨‹çŠ¶æ€
     */
    private int mdm_workflow;
    /***
     * ä¿®æ”¹è€…
     */
    private String modifier;
    /***
     * ä¿®æ”¹æ—¶é—´
     */
    private String modifytime;
    /***
     * åˆ›å»ºè€…
     */
    private String creator;
    /***
     * åˆ›å»ºæ—¶é—´
     */
    private String createtime;
    /**
     * æ•°æ®çŠ¶æ€
     */
    private int mdm_datastatus;
    private String link_fieldvalue;
    private String flow_middatastatus;
    private String employer;
    private int mdm_duplicate;
    private EnumerableData gerder_entity;
    private EnumerableData employment_type_entity;
    private String gerder;
    private  String employment_type;
    private String employment_type_nane;
    private String mdm_cleanstatus;
    private String mdm_parentcode;
    private String mdm_yersion;
    private String dr_mdm_code;
    private String pk_mdm;
    private String gender_name;
    private String ts;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getLm_code() {
        return lm_code;
    }
    public void setLm_code(String lm_code) {
        this.lm_code = lm_code;
    }
    public String getGroup_code() {
        return group_code;
    }
    public void setGroup_code(String group_code) {
        this.group_code = group_code;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getMdm_code() {
        return mdm_code;
    }
    public void setMdm_code(String mdm_code) {
        this.mdm_code = mdm_code;
    }
    public int getDr() {
        return dr;
    }
    public void setDr(int dr) {
        this.dr = dr;
    }
    public String getAdmin_division() {
        return admin_division;
    }
    public void setAdmin_division(String admin_division) {
        this.admin_division = admin_division;
    }
    public String getAdmin_division_code() {
        return admin_division_code;
    }
    public void setAdmin_division_code(String admin_division_code) {
        this.admin_division_code = admin_division_code;
    }
    public String getBirthday() {
        return birthday;
    }
    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }
    public String getBirthplace() {
        return birthplace;
    }
    public void setBirthplace(String birthplace) {
        this.birthplace = birthplace;
    }
    public String getCittizenship() {
        return cittizenship;
    }
    public void setCittizenship(String cittizenship) {
        this.cittizenship = cittizenship;
    }
    public String getCountry() {
        return country;
    }
    public void setCountry(String country) {
        this.country = country;
    }
    public String getDept_type() {
        return dept_type;
    }
    public void setDept_type(String dept_type) {
        this.dept_type = dept_type;
    }
    public String getDeptName() {
        return deptName;
    }
    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }
    public String getEducation() {
        return education;
    }
    public void setEducation(String education) {
        this.education = education;
    }
    public String getEmployer_code() {
        return employer_code;
    }
    public void setEmployer_code(String employer_code) {
        this.employer_code = employer_code;
    }
    public String getEmployment_form() {
        return employment_form;
    }
    public void setEmployment_form(String employment_form) {
        this.employment_form = employment_form;
    }
    public String getId_number() {
        return id_number;
    }
    public void setId_number(String id_number) {
        this.id_number = id_number;
    }
    public String getId_type() {
        return id_type;
    }
    public void setId_type(String id_type) {
        this.id_type = id_type;
    }
    public String getIs_keyposion() {
        return is_keyposion;
    }
    public void setIs_keyposion(String is_keyposion) {
        this.is_keyposion = is_keyposion;
    }
    public String getMarital_status() {
        return marital_status;
    }
    public void setMarital_status(String marital_status) {
        this.marital_status = marital_status;
    }
    public String getMobile_phone() {
        return mobile_phone;
    }
    public void setMobile_phone(String mobile_phone) {
        this.mobile_phone = mobile_phone;
    }
    public String getNationality() {
        return nationality;
    }
    public void setNationality(String nationality) {
        this.nationality = nationality;
    }
    public String getOffice_telephone() {
        return office_telephone;
    }
    public void setOffice_telephone(String office_telephone) {
        this.office_telephone = office_telephone;
    }
    public String getOuter_email() {
        return outer_email;
    }
    public void setOuter_email(String outer_email) {
        this.outer_email = outer_email;
    }
    public String getParent_dept_code() {
        return parent_dept_code;
    }
    public void setParent_dept_code(String parent_dept_code) {
        this.parent_dept_code = parent_dept_code;
    }
    public String getParent_dept_name() {
        return parent_dept_name;
    }
    public void setParent_dept_name(String parent_dept_name) {
        this.parent_dept_name = parent_dept_name;
    }
    public String getPoliticcountenance() {
        return politiccountenance;
    }
    public void setPoliticcountenance(String politiccountenance) {
        this.politiccountenance = politiccountenance;
    }
    public String getPosition() {
        return position;
    }
    public void setPosition(String position) {
        this.position = position;
    }
    public String getWork_title() {
        return work_title;
    }
    public void setWork_title(String work_title) {
        this.work_title = work_title;
    }
    public String getWorker_category() {
        return worker_category;
    }
    public void setWorker_category(String worker_category) {
        this.worker_category = worker_category;
    }
    public String getWorker_duty() {
        return worker_duty;
    }
    public void setWorker_duty(String worker_duty) {
        this.worker_duty = worker_duty;
    }
    public String getWorker_email() {
        return worker_email;
    }
    public void setWorker_email(String worker_email) {
        this.worker_email = worker_email;
    }
    public String getWorker_level() {
        return worker_level;
    }
    public void setWorker_level(String worker_level) {
        this.worker_level = worker_level;
    }
    public String getWorker_security_level() {
        return worker_security_level;
    }
    public void setWorker_security_level(String worker_security_level) {
        this.worker_security_level = worker_security_level;
    }
    public int getMdm_workflow() {
        return mdm_workflow;
    }
    public void setMdm_workflow(int mdm_workflow) {
        this.mdm_workflow = mdm_workflow;
    }
    public String getModifier() {
        return modifier;
    }
    public void setModifier(String modifier) {
        this.modifier = modifier;
    }
    public String getModifytime() {
        return modifytime;
    }
    public void setModifytime(String modifytime) {
        this.modifytime = modifytime;
    }
    public String getCreator() {
        return creator;
    }
    public void setCreator(String creator) {
        this.creator = creator;
    }
    public String getCreatetime() {
        return createtime;
    }
    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }
    public int getMdm_datastatus() {
        return mdm_datastatus;
    }
    public void setMdm_datastatus(int mdm_datastatus) {
        this.mdm_datastatus = mdm_datastatus;
    }
    public String getLink_fieldvalue() {
        return link_fieldvalue;
    }
    public void setLink_fieldvalue(String link_fieldvalue) {
        this.link_fieldvalue = link_fieldvalue;
    }
    public String getFlow_middatastatus() {
        return flow_middatastatus;
    }
    public void setFlow_middatastatus(String flow_middatastatus) {
        this.flow_middatastatus = flow_middatastatus;
    }
    public String getEmployer() {
        return employer;
    }
    public void setEmployer(String employer) {
        this.employer = employer;
    }
    public int getMdm_duplicate() {
        return mdm_duplicate;
    }
    public void setMdm_duplicate(int mdm_duplicate) {
        this.mdm_duplicate = mdm_duplicate;
    }
    public EnumerableData getGerder_entity() {
        return gerder_entity;
    }
    public void setGerder_entity(EnumerableData gerder_entity) {
        this.gerder_entity = gerder_entity;
    }
    public EnumerableData getEmployment_type_entity() {
        return employment_type_entity;
    }
    public void setEmployment_type_entity(EnumerableData employment_type_entity) {
        this.employment_type_entity = employment_type_entity;
    }
    public String getGerder() {
        return gerder;
    }
    public void setGerder(String gerder) {
        this.gerder = gerder;
    }
    public String getEmployment_type() {
        return employment_type;
    }
    public void setEmployment_type(String employment_type) {
        this.employment_type = employment_type;
    }
    public String getEmployment_type_nane() {
        return employment_type_nane;
    }
    public void setEmployment_type_nane(String employment_type_nane) {
        this.employment_type_nane = employment_type_nane;
    }
    public String getMdm_cleanstatus() {
        return mdm_cleanstatus;
    }
    public void setMdm_cleanstatus(String mdm_cleanstatus) {
        this.mdm_cleanstatus = mdm_cleanstatus;
    }
    public String getMdm_parentcode() {
        return mdm_parentcode;
    }
    public void setMdm_parentcode(String mdm_parentcode) {
        this.mdm_parentcode = mdm_parentcode;
    }
    public String getMdm_yersion() {
        return mdm_yersion;
    }
    public void setMdm_yersion(String mdm_yersion) {
        this.mdm_yersion = mdm_yersion;
    }
    public String getDr_mdm_code() {
        return dr_mdm_code;
    }
    public void setDr_mdm_code(String dr_mdm_code) {
        this.dr_mdm_code = dr_mdm_code;
    }
    public String getPk_mdm() {
        return pk_mdm;
    }
    public void setPk_mdm(String pk_mdm) {
        this.pk_mdm = pk_mdm;
    }
    public String getGender_name() {
        return gender_name;
    }
    public void setGender_name(String gender_name) {
        this.gender_name = gender_name;
    }
    public String getTs() {
        return ts;
    }
    public void setTs(String ts) {
        this.ts = ts;
    }
    @Override
    public String toString() {
        return "MasterData{" +
            "id='" + id + '\'' +
            ", lm_code='" + lm_code + '\'' +
            ", group_code='" + group_code + '\'' +
            ", name='" + name + '\'' +
            ", mdm_code='" + mdm_code + '\'' +
            ", dr=" + dr +
            ", admin_division='" + admin_division + '\'' +
            ", admin_division_code='" + admin_division_code + '\'' +
            ", birthday='" + birthday + '\'' +
            ", birthplace='" + birthplace + '\'' +
            ", cittizenship='" + cittizenship + '\'' +
            ", country='" + country + '\'' +
            ", dept_type='" + dept_type + '\'' +
            ", deptName='" + deptName + '\'' +
            ", education='" + education + '\'' +
            ", employer_code='" + employer_code + '\'' +
            ", employment_form='" + employment_form + '\'' +
            ", id_number='" + id_number + '\'' +
            ", id_type='" + id_type + '\'' +
            ", is_keyposion='" + is_keyposion + '\'' +
            ", marital_status='" + marital_status + '\'' +
            ", mobile_phone='" + mobile_phone + '\'' +
            ", nationality='" + nationality + '\'' +
            ", office_telephone='" + office_telephone + '\'' +
            ", outer_email='" + outer_email + '\'' +
            ", parent_dept_code='" + parent_dept_code + '\'' +
            ", parent_dept_name='" + parent_dept_name + '\'' +
            ", politiccountenance='" + politiccountenance + '\'' +
            ", position='" + position + '\'' +
            ", work_title='" + work_title + '\'' +
            ", worker_category='" + worker_category + '\'' +
            ", worker_duty='" + worker_duty + '\'' +
            ", worker_email='" + worker_email + '\'' +
            ", worker_level='" + worker_level + '\'' +
            ", worker_security_level='" + worker_security_level + '\'' +
            ", mdm_workflow=" + mdm_workflow +
            ", modifier='" + modifier + '\'' +
            ", modifytime='" + modifytime + '\'' +
            ", creator='" + creator + '\'' +
            ", createtime='" + createtime + '\'' +
            ", mdm_datastatus=" + mdm_datastatus +
            ", link_fieldvalue='" + link_fieldvalue + '\'' +
            ", flow_middatastatus='" + flow_middatastatus + '\'' +
            ", employer='" + employer + '\'' +
            ", mdm_duplicate=" + mdm_duplicate +
            ", gerder_entity='" + gerder_entity + '\'' +
            ", employment_type_entity='" + employment_type_entity + '\'' +
            ", gerder='" + gerder + '\'' +
            ", employment_type='" + employment_type + '\'' +
            ", employment_type_nane='" + employment_type_nane + '\'' +
            ", mdm_cleanstatus='" + mdm_cleanstatus + '\'' +
            ", mdm_parentcode='" + mdm_parentcode + '\'' +
            ", mdm_yersion='" + mdm_yersion + '\'' +
            ", dr_mdm_code='" + dr_mdm_code + '\'' +
            ", pk_mdm='" + pk_mdm + '\'' +
            ", gender_name='" + gender_name + '\'' +
            ", ts='" + ts + '\'' +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/ResultMdMapping.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,89 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
/***
 * åˆ†å‘的所有数据的血缘信息
 */
public class ResultMdMapping {
    /***
     * åˆ†å‘的单条主数据的主数据编码
     */
    private String mdmCode;
    /***
     * åˆ†å‘数据所厘的主数据模型编码
     */
    private String entityCode;
    /***
     *  åˆ†å‘的单条主数据在消费系统的业务ID
     */
    private String busiDataId;
    /**
     * åˆ†å‘的单条主数据是否消费成功或失败
     */
    private boolean success;
    /**
     * åˆ†å‘的单条主数据的消费成功或失败的详情信息
     */
    private String message;
    private ResultMdMapping subMdMappings;
    public String getMdmCode() {
        return mdmCode;
    }
    public void setMdmCode(String mdmCode) {
        this.mdmCode = mdmCode;
    }
    public String getEntityCode() {
        return entityCode;
    }
    public void setEntityCode(String entityCode) {
        this.entityCode = entityCode;
    }
    public String getBusiDataId() {
        return busiDataId;
    }
    public void setBusiDataId(String busiDataId) {
        this.busiDataId = busiDataId;
    }
    public boolean isSuccess() {
        return success;
    }
    public void setSuccess(boolean success) {
        this.success = success;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    public ResultMdMapping getSubMdMappings() {
        return subMdMappings;
    }
    public void setSubMdMappings(ResultMdMapping subMdMappings) {
        this.subMdMappings = subMdMappings;
    }
    @Override
    public String toString() {
        return "ResultMdMapping{" +
            "mdmCode='" + mdmCode + '\'' +
            ", entityCode='" + entityCode + '\'' +
            ", busiDataId='" + busiDataId + '\'' +
            ", success=" + success +
            ", message='" + message + '\'' +
            ", subMdMappings=" + subMdMappings +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/ResultOrgData.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
package com.vci.ubcs.code.vo.webserviceModel.person;
public class ResultOrgData {
    /***
     * æ ‡è¯†å¤„理成功或失败
     */
    private boolean success;
    /***
     * æˆåŠŸæˆ–å¤±è´¥çš„ä¿¡æ¯
     */
    private String message;
    /**
     * åˆ†å‘的所有数据的信息
     */
    private ResultMdMapping mdMappings;
    public boolean isSuccess() {
        return success;
    }
    public void setSuccess(boolean success) {
        this.success = success;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    public ResultMdMapping getMdMappings() {
        return mdMappings;
    }
    public void setMdMappings(ResultMdMapping mdMappings) {
        this.mdMappings = mdMappings;
    }
    @Override
    public String toString() {
        return "ResultData{" +
            "success=" + success +
            ", message='" + message + '\'' +
            ", mdMappings=" + mdMappings +
            '}';
    }
}
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/org..json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,79 @@
{
  msg:null,
  masterData:[
  {
    "departnent_code": "108040",
    "is_virtual": 0,
    "id_route": "2843121148743936]2843121413050624]",
    "departnent_type": "1",
    "nodifytime": "2023-06-1510:34:37",
    "mdm_workflow_status":l,
    "modifier":"王硕",
    "telephone_nunber":null,
    "mdm_datastatus":3,
    "parent_departnent_nane":“财务管理部",
    "ndn_cleanstatus": "VAITING",
    "link_fieldvalue": null,
    "dr:0,"
    dr_ndm_code
    ":"
    0,
    "enable_status :3,"
    ndn_parentcode
    ";null,"
    departent
    head
    ":null,"
    floy_middatastatus
    ":null,"
    originalcode
    ":null,"
    node
    type
    ":"
    éƒ¨,
    "company_code": "20220423,department_level"
    :
    "2",
    "nane_route": null,
    "sort_order": "81”,"
    pk_mdn
    ":"
    1720683591179436130
    ",display_status": "不显示,"
    parent_department
    _code
    ":"
    108000
    ",creator:"
    çŽ‹ç‘žæ³¢
    â€,
    "createtine": 2023-05-08
    10: 45
    :
    33
    ï¼Œ
    "departnent nane": é›†å›¢è´¢åС处6666
    â€
    .
    "ndm duplicate": 0,
    ndn
    code
    ?
    :
    "99",
    /dcpartment_status
    ":"
    ä½œåºŸ
    â€
    ï¼Œ
    ndm_version
    ":4,company name :中国航发黎明"
    original
    nane: null,
    "departnent head code": null,
    "ts :"
    2023-06-1510: 34
    :
    37.451
    "]], distributeToken=, code=0, systemCode=nhdept,ndType=departnent_basic, action=distribute_manual}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplyOrgPersonController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,68 @@
package com.vci.ubcs.code.controller;
import com.vci.ubcs.code.service.UniversalInterfaceI;
import com.vci.ubcs.code.vo.webserviceModel.person.OrgData;
import com.vci.ubcs.code.vo.webserviceModel.person.PersonData;
import com.vci.ubcs.code.vo.webserviceModel.person.ResultOrgData;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
 * ç”³è¯·äººå‘˜éƒ¨é—¨æŽ§åˆ¶å™¨
 *
 * @author xiejun
 * @date 2023-09-06
 */
@RestController
@RequestMapping("/codeApplyOrgPersonController")
public class CodeApplyOrgPersonController {
    /**
     * æ—¥å¿—
     */
    private Logger logger = LoggerFactory.getLogger(getClass());
    /**
     * æŽ¥å£é›†æˆæœåŠ¡
     */
    @Autowired
    private UniversalInterfaceI universalInterfaceI;
    /****
     * äººå‘˜æ•°æ®åŒæ­¥
     * @param personData
     * @return
     * @throws Throwable
     */
    @PostMapping("/syncDataForPerson")
    public ResultOrgData syncDataForPerson(@RequestParam PersonData personData)  {
        String result="";
        try {
            return universalInterfaceI.syncDataForPerson(personData);
        }catch (Throwable e){
            e.printStackTrace();
            logger.error("applyCodeForPerson->"+e.getMessage());
            return new ResultOrgData();
        }
    }
    /****
     * éƒ¨é—¨æ•°æ®åŒæ­¥
     * @param orgData éƒ¨é—¨æ•°æ®
     * @return
     * @throws Throwable
     */
    @PostMapping("/syncDataForOrg")
    public ResultOrgData syncDataForOrg(@RequestParam OrgData orgData)  {
        String result="";
        try {
            return universalInterfaceI.syncDataForOrg(orgData);
        }catch (Throwable e){
            e.printStackTrace();
            logger.error("applyCodeForOrg->"+e.getMessage());
            return new ResultOrgData();
        }
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java
@@ -46,7 +46,6 @@
        }
        return result;
    }
    /****
     * æ›´æ–°/删除/状态接口
     * @param dataString å±žæ€§ä¿¡æ¯
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java
@@ -1,4 +1,9 @@
package com.vci.ubcs.code.service;
import com.vci.ubcs.code.vo.webserviceModel.person.OrgData;
import com.vci.ubcs.code.vo.webserviceModel.person.PersonData;
import com.vci.ubcs.code.vo.webserviceModel.person.ResultOrgData;
import org.springframework.web.bind.annotation.RequestParam;
import javax.jws.WebService;
/**
@@ -19,6 +24,21 @@
     */
    public String applyCode(String data,String dataType)throws Throwable;
    /****
     * äººå‘˜æ•°æ®åŒæ­¥
     * @param personData
     * @return
     * @throws Throwable
     */
    public ResultOrgData syncDataForPerson(PersonData personData);
    /****
     * éƒ¨é—¨æ•°æ®åŒæ­¥
     * @param orgData
     * @return
     * @throws Throwable
     */
    public ResultOrgData syncDataForOrg(OrgData orgData);
    /***
     * ç»Ÿä¸€æ›´æ–°æŽ¥å£
     * @param data
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -535,6 +535,7 @@
                dockingLogeDO.setClassifyOid(dockingTask.getClassifyOid());
                dockingLogeDO.setClassifyId(dockingTask.getClassifyId());
                dockingLogeDO.setClassifyName(dockingTask.getClassifyName());
                dockingLogeDO.setCreateTime(new Date());
                dockingLogeDO.setId(dockingTask.getId());
                dockingLogeDO.setUniqueCode(dockingTask.getUniqueCode());
                dockingLogeDO.setParamString(paramString);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -17,6 +17,7 @@
import com.vci.ubcs.code.util.ClientBusinessObject;
import com.vci.ubcs.code.util.gennerAttrMapUtil;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.code.vo.webserviceModel.person.*;
import com.vci.ubcs.code.vo.webserviceModel.apply.*;
import com.vci.ubcs.code.vo.webserviceModel.attrmap.*;
import com.vci.ubcs.code.vo.webserviceModel.attrmap.DataObjectVO;
@@ -34,6 +35,7 @@
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultSystemVO;
import com.vci.ubcs.code.webService.annotation.VciWebservice;
import com.vci.ubcs.code.webService.config.AttributeMapConfig;
import com.vci.ubcs.code.webService.config.PersonAndDeptConfig;
import com.vci.ubcs.code.wrapper.CodeClassifyWrapper;
import com.vci.ubcs.omd.feign.IBtmTypeClient;
import com.vci.ubcs.omd.vo.BtmTypeVO;
@@ -59,8 +61,6 @@
import javax.annotation.Resource;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
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;
@@ -77,6 +77,11 @@
    public boolean CODE_CHECKCONFIG;
    @Autowired(required = false)
    private AttributeMapConfig attributeMapConfig;
    /***
     * äººå‘˜ç›¸å…³é…ç½®æœåŠ¡
     */
    @Autowired(required = false)
    private PersonAndDeptConfig personAndDeptConfig;
    /**
     * ç¼“存服务
     */
@@ -337,6 +342,113 @@
    }
    /****
     * äººå‘˜æ•°æ®åŒæ­¥
     * @param personData
     * @return
     * @throws Throwable
     */
    @Override
    public ResultOrgData syncDataForPerson(PersonData personData) {
        boolean isUsedFlag= personAndDeptConfig.isUsedFlag();
        ResultOrgData resultOrgData=new ResultOrgData();
        boolean success=true;
        String message="";
        if(isUsedFlag){
            List<PersonMasterData> masterDataList = personData.getMasterData();
            try {
                String personLibrary = personAndDeptConfig.getPersonLibrary();
                if (StringUtils.isBlank(personLibrary)) {
                    success=false;
                    log.info("集成配置缺少人员库节点信息,personLibrary->" + personLibrary);
                    throw  new Throwable("集成配置缺少人员库节点信息,personLibrary->" + personLibrary);
                }
                String personClassCode = personAndDeptConfig.getPersonClassCode();
                ClassfyVO classfyVO = new ClassfyVO();
                classfyVO.setLibrary(personLibrary);
                classfyVO.setClassCode(personClassCode);
                CodeClassifyVO  codeClassifyVO=this.getClassfy(classfyVO,personLibrary);
                log.info("end:分类查询完毕");
                //获取分类模板信息
                if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){
                    success=false;
                    throw  new  Throwable ("根据配置分类的分类编号,未获取到分类信息");
                }
                CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid());
                if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){
                    success=false;
                    throw  new  Throwable ("根据传输的分类,未获取MDM系统中对应模板");
                }
                List<PersonMasterData> personMasterDataList= personData.getMasterData();
                List<Map> dataList=new ArrayList<>();
                ApplyDatasVO applyDatasVO=new ApplyDatasVO();
                List<ApplyDataVO> applyDataVOList=new ArrayList<>();
                personMasterDataList.stream().forEach(personMasterData -> {
                    ApplyDataVO object=new ApplyDataVO();
                    object.setCode(personMasterData.getLm_code());//编码
                    object.setCreator(personMasterData.getCreator());//创建者
                    object.setEditor(personMasterData.getModifier());//修改者
                    object.setId(personMasterData.getId());//主键
                    object.setStatus(CodeDefaultLC.RELEASED.getValue());//状态则需要判断
                    Map<String,String> dataMap= VciBaseUtil.objectToMapString(personMasterData);
                    List<ProppertyVO> proppertyVOList=new ArrayList<>();
                    dataMap.forEach((key,vaule)->{
                        ProppertyVO proppertyVO=new ProppertyVO();
                        proppertyVO.setKey(key);
                        proppertyVO.setValue(vaule);
                        proppertyVOList.add(proppertyVO);
                    });
                    object.setProp(proppertyVOList);
                    applyDataVOList.add(object);
                });
                applyDatasVO.setObject(applyDataVOList);
                DataObjectVO dataObjectVO = new DataObjectVO();
                List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) && VciBaseUtil.getBoolean(s.getFormDisplayFlag())
                ).collect(Collectors.toList());
                this.getConfigDatas("ERP", personLibrary, applyDatasVO, attrVOS, dataObjectVO);
                log.info("end:数据组织完毕");
                //规则的主键需要去获取
                CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid());
                if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){
                    success=false;
                    log.info("classifyFullInfo:"+"根据传输的分类,未获取分类相关信息");
                    throw  new  Throwable ("根据传输的分类,未获取分类相关信息");
                }
                CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo);
                if(ruleVO==null||StringUtils.isBlank(ruleVO.getOid())){
                    success=false;
                    throw  new  Throwable ("根据传输的分类,未获取MDM系统中对应规则");
                }
                log.info("end:规则获取完毕");
            }catch (Throwable e){
                success=false;
                message="人员数据接受失败:"+e.getMessage();
            }finally {
                //组织返回结果
                masterDataList.stream().forEach(masterData -> {
                    ResultMdMapping resultMdMapping=new ResultMdMapping();
                    resultMdMapping.setBusiDataId(masterData.getId());
                });
            }
        }
        return resultOrgData;
    }
    /****
     * éƒ¨é—¨æ•°æ®åŒæ­¥
     * @param orgData
     * @return
     * @throws Throwable
     */
    @Override
    public ResultOrgData syncDataForOrg(OrgData orgData) {
        return null;
    }
    /***
     * ç»Ÿä¸€æ›´æ–°æŽ¥å£ï¼ˆæ›´æ”¹çŠ¶æ€ï¼Œæ›´æ”¹å±žæ€§ä¿¡æ¯ï¼‰æŽ¥å£
     * @param data
@@ -404,7 +516,6 @@
                        throw  new  Throwable ("根据传输的分类,未获取到分类信息");
                    }
                    log.info("end:分类查询完毕");
                    String operation="";
                    if(CODE_CHECKCONFIG) {
                        //校验是否配置
@@ -527,7 +638,7 @@
        log.info("查询分类的数据类型:->"+dataType);
        ResultClassifyVO resultClassifyVO =new ResultClassifyVO();
        List<ClassifyVO> classifyVOList=new ArrayList<>();
        ResultData resultData=new ResultData();
        com.vci.ubcs.code.vo.webserviceModel.classify.ResultData resultData=new com.vci.ubcs.code.vo.webserviceModel.classify.ResultData();
        try {
            if (StringUtils.isBlank(data)) {
                errorid = "101";
@@ -1590,6 +1701,7 @@
        dockingLoge.setParamString(parmaData);//参数信息
        dockingLoge.setReturnString(result);//返回信息
        dockingLoge.setType(operation);//日志操作类型
        dockingLoge.setCreateTime(new Date());
        if(isSucess) {
            dockingLoge.setInterfaceStatus("true");//接口集成状态
        }else{
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/webService/config/PersonAndDeptConfig.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
package com.vci.ubcs.code.webService.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@ConfigurationProperties(prefix="code.applypersonanddept")
@Component
public class PersonAndDeptConfig {
    /***
     * äººå‘˜ä¸šåŠ¡ç±»åž‹
     */
    private String personLibrary;
    /***
     * äººå‘˜åˆ†ç±»ç¼–码
     */
    private String personClassCode;
    /***
     * éƒ¨é—¨ä¸šåŠ¡ç±»åž‹
     */
    private String deptLibrary;
    /***
     * éƒ¨é—¨åˆ†ç±»ç¼–码
     */
    private String deptClassCode;
    /***
     * æ˜¯å¦å¼€å¯
     */
    private boolean isUsedFlag;
    public String getPersonLibrary() {
        return personLibrary;
    }
    public void setPersonLibrary(String personLibrary) {
        this.personLibrary = personLibrary;
    }
    public String getPersonClassCode() {
        return personClassCode;
    }
    public void setPersonClassCode(String personClassCode) {
        this.personClassCode = personClassCode;
    }
    public String getDeptLibrary() {
        return deptLibrary;
    }
    public void setDeptLibrary(String deptLibrary) {
        this.deptLibrary = deptLibrary;
    }
    public String getDeptClassCode() {
        return deptClassCode;
    }
    public void setDeptClassCode(String deptClassCode) {
        this.deptClassCode = deptClassCode;
    }
    public boolean isUsedFlag() {
        return isUsedFlag;
    }
    public void setUsedFlag(boolean usedFlag) {
        isUsedFlag = usedFlag;
    }
    @Override
    public String toString() {
        return "PersonAndDeptConfig{" +
            "personLibrary='" + personLibrary + '\'' +
            ", personClassCode='" + personClassCode + '\'' +
            ", deptLibrary='" + deptLibrary + '\'' +
            ", deptClassCode='" + deptClassCode + '\'' +
            ", isUsedFlag=" + isUsedFlag +
            '}';
    }
}