田源
2023-06-07 5c487e8208311bfd93a904bfdae2cfab0e9b2cd7
Merge remote-tracking branch 'origin/master'

# Conflicts:
# Source/UBCS-WEB/vue.config.js
已修改14个文件
已添加2个文件
510 ■■■■ 文件已修改
Source/UBCS-WEB/src/api/integration/application.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/integration/integration.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebRefer.vue 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/transfer/index.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/integration/applicationForm.vue 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/integration/integrationIndex.vue 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/integration/integrationTransfer.vue 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/vue.config.js 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormQueryStatusVO.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/integration/application.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
import request from '@/router/axios';
// ç”³é¢†å•数据
export const getList = (params) => {
    return request({
      url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/page',
      method: 'get',
      params: params
    })
  }
Source/UBCS-WEB/src/api/integration/integration.js
@@ -35,7 +35,7 @@
// å±žæ€§æ˜ å°„
export const gridAttrMapping = (params) => {
  return request({
    url: '/api//ubcs-applyjtcodeservice/DockingPreApplyCode/gridAttrMapping',
    url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/gridAttrMapping',
    method: 'get',
    params: params
  })
@@ -63,6 +63,6 @@
  return request({
    url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/syncClassifyModel',
    method: 'post',
    data: params
    params: params
  })
}
Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue
@@ -27,6 +27,9 @@
        <vciWebRefer
          v-if="item.type == 'refer'"
          :referConfig="item.referConfig || {}"
          :value="form[item.referConfig.field] || item.value"
          :text="form[item.referConfig.showField]"
          @setReferValue="setReferValue"
        ></vciWebRefer>
      </template>
    </avue-form>
@@ -559,9 +562,7 @@
            showField:formItem.showField || formItem.field,
            field: formItem.field,
            placeholder: formItem.inputTip,
            options:formItem.referConfig,
            value:'',
            text:''
            options:formItem.referConfig
          }:{},
          change: () => {
            this.changeFun(formItem.displayExtension, formItem.prop);
@@ -645,6 +646,11 @@
        return val;
      }
    },
    changeFun(displayExtension, prop) {
      // executeCode({displayExtension, data: this.form}).then(res => {
      //   this.form[prop] = res.data.data
      // })
    },
    // èŽ·å–swich和已拿到的下拉数据
    getDataList(type, dicData) {
      if (type === "truefalse") {
@@ -708,6 +714,13 @@
        }
      );
    },
    setReferValue(data){
      if(data.field){
        this.form[data.field]=data.value || '';
        this.form[data.showField]=data.text || '';
        this.$emit("getFormData", this.form);
      }
    }
  },
  watch: {
    // è¡¨å•数据修改反馈到父组件
Source/UBCS-WEB/src/components/refer/vciWebRefer.vue
@@ -1,7 +1,7 @@
<template>
  <vciWebReferTree v-if="refertype=='tree'" :value="value" :referConfig="referConfig"></vciWebReferTree>
  <vciWebReferTable v-else-if="refertype=='table'" :value="value" :referConfig="referConfig"></vciWebReferTable>
  <vciWebReferDefalut v-else :value="value" :referConfig="referConfig"></vciWebReferDefalut>
  <vciWebReferTree v-if="refertype=='tree'" @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferTree>
  <vciWebReferTable v-else-if="refertype=='table'" @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferTable>
  <vciWebReferDefalut v-else  @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferDefalut>
</template>
<script>
@@ -11,30 +11,40 @@
import {validatenull} from "@/util/validate";
export default {
  name: "vciWebRefer",
  props:["referConfig"],
  components: { vciWebReferTree,vciWebReferTable,vciWebReferDefalut},
  props: ["referConfig","value","text"],
  components: {vciWebReferTree, vciWebReferTable, vciWebReferDefalut},
  data() {
    return {
      refertype: this.referConfig.options.type,
      isMuti: ("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false,
      value: this.referConfig.value
      emitData:{}
    };
  },
  created() {
    var title =this.referConfig.title || '';
    title = title.replace(":","");
    if(title){
      title = validatenull(this.referConfig.title)?('为【' + title + '】选取值'):this.referConfig.title;
    }else{
      title = validatenull(this.referConfig.title)?('为【' + this.referConfig.showField + '】选取值'):this.referConfig.title;
    var title = this.referConfig.title || '';
    title = title.replace(":", "");
    if (title) {
      title = validatenull(this.referConfig.title) ? ('为【' + title + '】选取值') : this.referConfig.title;
    } else {
      title = validatenull(this.referConfig.title) ? ('为【' + this.referConfig.showField + '】选取值') : this.referConfig.title;
    }
    this.referConfig.title= title;
    this.referConfig.isMuti=this.isMuti
    if(this.refertype=='tree'){
      console.log('referConfig:')
      console.log(this.referConfig)
    this.referConfig.title = title;
    this.referConfig.isMuti = this.isMuti;
  },
  methods: {
    setValue(value) {
      this.emitData = value;
    }
  },
  watch:{
    // ä¿®æ”¹åé¦ˆåˆ°çˆ¶ç»„ä»¶
    emitData: {
      deep: true,
      immediate: true,
      handler(newV) {
        this.$emit("setReferValue", newV);
      },
    }
  },
  mounted() {
Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
@@ -1,5 +1,5 @@
<template>
  <avue-input-tree :props="props" :lazy="lazy" :tree-load="treeLoad" :leaf-only="!referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="placeholder" :dic="treeData"></avue-input-tree>
  <avue-input-tree ref="referTree" :props="props" :lazy="lazy" :tree-load="treeLoad" :node-click="nodeClick" :leaf-only="!referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="placeholder" :dic="treeData"></avue-input-tree>
</template>
<script>
@@ -7,7 +7,7 @@
export default {
  name: "vciWebReferTree",
  props:["referConfig","value"],
  props:["referConfig","value","text"],
  data() {
    return {
      options: this.referConfig.options,
@@ -20,8 +20,9 @@
        //value:"value",
        //label:"title"
      },
      treeUrl: this.referConfig.options.url || '',//'/api/ubcs-code/codeClassify/treeCodeClassify',
      treeUrl: this.referConfig.options.url || '/api/ubcs-code/codeClassify/treeCodeClassify',
      treeData: [],
      currentNode:{},
      params: {},
      loadType: {'all': 'all', 'node': 'node'},
      copyParam: ['btmType', 'lnType', 'toBtmType', 'textField', 'valueField', 'parentFieldName', 'parentValue', 'sort', 'order', 'isDirection', 'whereSql', 'isMuti', 'queryScheme', 'isQueryAllColumn', 'queryColumn', 'split', 'loadType', 'onlyLeaf', 'onlyLeafText', 'parentUsedField']
@@ -29,6 +30,8 @@
  },
  created() {
    this.getParams();
    console.log('referConfig:')
    console.log(this.referConfig)
  },
  mounted() {
    if(!this.lazy){
@@ -42,7 +45,6 @@
  methods: {
    getParams:function (){
      var queryParams = {};
      debugger;
      if(this.options.extraParams){
        queryParams = this.options.extraParams;
      }
@@ -140,8 +142,16 @@
          }
        }))
      });
    },
    nodeClick(data){
      //不要用watch监听value值,会找不到text
      this.value=data[this.props.value];
      this.text=data[this.props.label];
      this.currentNode=data;
      this.$emit("setValue", {field:this.referConfig.field,showField:this.referConfig.showField,value:this.value,text:this.text,rawData:this.currentNode});
    }
  },
  watch:{
  }
}
</script>
Source/UBCS-WEB/src/components/transfer/index.vue
@@ -128,11 +128,9 @@
        targetData() {
            if (this.targetOrder === 'original') {
                console.log('11111')
                return this.data.filter(item =>  this.value.indexOf(item) > -1
                );
            } else {
                console.log('22222')
                return this.value.reduce((arr, cur) => {
                    const val = this.dataObj[cur];
                    if (val) {
Source/UBCS-WEB/src/views/integration/applicationForm.vue
@@ -0,0 +1,146 @@
<template>
    <basic-container>
        <avue-crud :table-loading="loading" :data="data" :option="option" :search.sync="searchParam" :page.sync="page"
            ref="crud" @refresh-change="getDataList" @search-change="handleSearch" @search-reset="handleReset"
            @size-change="handleSizePage" @current-change="handleCurrentPage" @on-load="getDataList">
            <template slot="menuLeft">
                <el-button icon="el-icon-document" size="small" type="primary" @click="handleStatus">集团申请状态
                </el-button>
            </template>
        </avue-crud>
    </basic-container>
</template>
<script>
import { getList } from '@/api/integration/application.js'
import { dateFormat } from '@/util/date.js'
export default {
    data() {
        return {
            loading: false,
            data: [],
            page: {
                pageSize: 10,
                currentPage: 1,
                total: 0
            },
            searchParam: {},
            option: {
                height: "auto",
                index: true,
                border: true,
                addBtn: false,
                columnBtn: false,
                searchMenuSpan: 8,
                highlightCurrentRow: true,
                menu:false,
                column: [
                    {
                        label: '申请单号',
                        prop: 'id',
                        width: 300,
                        fixed: true,
                        search: true,
                    }, {
                        label: '集团码',
                        width: 200,
                        prop: 'groupCode',
                        search: true,
                    }, {
                        label: '操作类型',
                        width: 200,
                        prop: 'operationType',
                        type: 'select',
                        search: true,
                        dicData: [{
                            label: '申请',
                            value: 1
                        }, {
                            label: '更改',
                            value: 2
                        }]
                    }, {
                        label: '申请单数据信息',
                        width: 300,
                        prop: 'description'
                    },
                    {
                        label: '创建时间',
                        width: 200,
                        prop: 'createTime',
                        type: 'datetime',
                        search: true,
                    },
                    {
                        label: '更改时间',
                        width: 200,
                        prop: 'lastModifyTime',
                        type: 'datetime',
                        search: true,
                        formatter: () => {
                        }
                    }, {
                        label: '返回标识',
                        width: 100,
                        prop: 'code'
                    },
                    {
                        label: '返回信息',
                        width: 300,
                        prop: 'content'
                    },
                    {
                        label: '消息信息',
                        width: 300,
                        prop: 'msg'
                    }
                ]
            }
        }
    },
    methods: {
        handleStatus() {
        },
        async getDataList() {
            this.loading = true
            console.log(this.searchParam)
            const { pageSize, currentPage, total } = this.page
            let param = { size: pageSize, current: currentPage }
            const response = await getList({ ...param, ...this.searchParam })
            if (response.status === 200) {
                this.loading = false
                console.log(response)
                const data = response.data.data
                this.data = data.records
                this.page.total = data.total
            } else this.loading = false
        },
        handleSizePage(event) {
            this.page.pageSize = event
        },
        handleCurrentPage(event) {
            this.page.currentPage = event
        },
        handleReset() {
            this.searchParam = {}
        },
        handleSearch(form, done) {
            const { id, groupCode, operationType } = form
            let dataTime = { id, groupCode, operationType }
            if (form.hasOwnProperty('createTime')) {
                dataTime = { createTime: dateFormat(form.createTime), ...dataTime }
            }
            if (form.hasOwnProperty('lastModifyTime')) {
                dataTime = { lastModifyTime: dateFormat(form.lastModifyTime), ...dataTime }
            }
            console.log(dataTime)
            this.searchParam = dataTime
            this.page.currentPage = 1
            this.getDataList()
            done()
        }
    }
}
</script>
Source/UBCS-WEB/src/views/integration/integrationIndex.vue
@@ -16,7 +16,7 @@
                <el-card>
                    <el-form :model="form">
                        <el-form-item label="集团分类" label-width="70px" size="small">
                            <el-select clearable ref="selectTree" v-model="form.groupValue" placeholder="请选择"
                            <el-select clearable ref="selectTree" v-model="groupVal" placeholder="请选择"
                                popper-class="popperTreeSelect">
                                <el-option :value="groupVal" :label="groupVal">
                                    <el-tree ref="groupTree" :data="groupTreeData" empty-text="暂无数据" :props="defaultProps"
@@ -33,11 +33,16 @@
                            @row-dblclick="handleMapingRowClick" @selection-change="selectionChange" @select="setCurrentRow"
                            @select-all="handleSelectAll">
                            <template slot="menuLeft">
                                <el-button icon="el-icon-plus" size="small" type="primary" :disabled="disabledPush" @click="dialogPush = true">新 å¢ž
                                <el-button icon="el-icon-plus" size="small" type="primary" :disabled="disabledPush"
                                    @click="dialogPush = true">新 å¢ž
                                </el-button>
                                <el-button icon="el-icon-check" size="small" type="primary" @click="handleSave">保 å­˜
                                </el-button>
                                <el-button icon="el-icon-connection" size="small" type="primary" @click="handleSync">同步模型
                                <el-button icon="el-icon-connection" size="small" type="primary"
                                    @click="handleSync('all')">同步主模型
                                </el-button>
                                <el-button icon="el-icon-connection" size="small" type="primary"
                                    @click="handleSync('one')">同步详细模型
                                </el-button>
                            </template>
                        </avue-crud>
@@ -50,23 +55,8 @@
                </el-card>
            </el-main>
        </el-container>
        <!-- <el-dialog title="编码属性" :visible.sync="dialogPush" append-to-body="true" destroy-on-close width="30%"
            :before-close="handleClose">
            <el-form :model="form">
                <el-form-item label="查询条件" label-width="70px" size="small">
                    <el-input v-model="form.name" autocomplete="off" @change="handleQuery"></el-input>
                </el-form-item>
            </el-form>
            <p class="text_tip">*选择分类进行属性过滤, æˆ–者输入属性的全拼或者简拼进行查询! å¦‚: å§“名 (可输入xm或xinming )</p>
            <transfer v-model="transferValue" :data="transferData" :filter-method="filterMethod"
                filter-placeholder="请输入拼音全拼或者拼音缩写" :props="transferProps"></transfer>
            <span slot="footer" class="dialog-footer">
                <el-button @click="dialogPush = false">取 æ¶ˆ</el-button>
                <el-button type="primary" @click="handelTransferSave">保 å­˜</el-button>
            </span>
        </el-dialog> -->
        <integration-transfer :visible.sync="dialogPush" :data="transferData" :props="transferProps"
            @save="handelTransferSave"></integration-transfer>
        <integration-transfer :visible.sync="dialogPush" :data="transferData" :disabledData="filtermapping"
            :props="transferProps" @save="handelTransferSave"></integration-transfer>
    </div>
</template>
<script>
@@ -196,6 +186,17 @@
        window.handleBlur = that.handleBlur
    },
    computed: {
        filtermapping() {
            const data = this.mappingData.filter(item => {
                return !(Object.prototype.hasOwnProperty.call(item, 'targetAttrName') && (item.targetAttrName === null || item.targetAttrName === undefined || item.targetAttrName === ""))
            })
            const transfer = data.map(obj => {
                return obj.targetAttrName
            })
            return transfer
        }
    },
    methods: {
        // æŽ¥å£å·¦ä¾§æ ‘
        async getReferCodeClassifyTree() {
@@ -220,6 +221,7 @@
            if (response.status === 200) {
                this.loading = false
                this.mappingData = response.data.data
                console.log(this.filtermapping)
            }
        },
        // æŽ¥å£èŽ·å–å±žæ€§æ˜ å°„å–å€¼èŒƒå›´
@@ -276,11 +278,25 @@
                    message: "保存成功!"
                });
            }
        },
        // åŒæ­¥æ•°æ®
        async handleSync() {
            const response = await syncClassifyModel({ dockingPreAttrMappingVOList: this.tableData })
        async handleSync(type = 'all') {
            let param = { operationType: type }
            if (type === 'one') {
                param.classifyId = this.form.groupValue
            }
            if (this.form.groupValue === '' && type === 'one') {
                this.$message({
                    type: "error",
                    message: "请选择一条集团分类"
                });
            } else {
                console.log(param)
                const response = await syncClassifyModel(param)
                if (response.status === 200) {
                    console.log(response)
                }
            }
        },
        handelTransferSave(event) {
            let that = this
@@ -295,7 +311,7 @@
                const findRow = that.mappingData.findIndex(item => item.metaListId === that.mappingForm.metaListId)
                that.mappingData[findRow].targetAttrName = transferValue[0].name
                that.mappingData[findRow].targetAttrId = transferValue[0].oid
                this.dialogPush =false
                this.dialogPush = false
            }
        },
@@ -312,7 +328,7 @@
        },
        // é›†å›¢åˆ†ç±»æ ‘点击
        handleNodeClick(data) {
            this.form.groupValue = data.name
            this.form.groupValue = data.oid
            this.groupVal = data.name
            this.$refs.selectTree.blur()
            this.getGridAttrMapping(data.oid)
@@ -328,14 +344,13 @@
            if (event === 'mapping') this.$refs.crudMapping.rowCell(this.mappingForm, this.mappingForm.$index)
        },
        // é›†å›¢æ˜ å°„属性行选择单元格编辑(双击)
        handleMapingRowClick(row, column, cell, event) {
            console.log(row)
        handleMapingRowClick(row, column) {
            clearTimeout(this.times)
            this.mappingForm = row
            if (column.label === '默认值' || column.label === '属性名称') this.$refs.crudMapping.rowCell(row, row.$index)
        },
        // é›†å›¢æ˜ å°„属性行选择(单击)
        handleMapingClick(row, column, cell, event) {
        handleMapingClick(row) {
            clearTimeout(this.times)
            this.mappingForm = row
            this.times = setTimeout(() => {
@@ -343,15 +358,14 @@
            }, 300)
        },
        // å±žæ€§å–值范围单元格编辑(双击)
        handleRowClick(row, column, cell, event) {
        handleRowClick(row) {
            this.rangeForm = row
            this.$refs.crudRange.rowCell(row, row.$index)
        },
        // å±žæ€§å–值范围单元格编辑后
        handleUpdate(row, index, done, loading) {
        handleUpdate(row, index, done) {
            console.log(row)
            console.log(index)
            let data = []
            const findRow = this.mappingData.findIndex(item => item.metaListId === row.metaListId)
            this.rangeData[index] = row
            console.log(this.rangeData)
@@ -365,7 +379,7 @@
            done();
        },
        // å±žæ€§å–值范围单元格编辑后
        handleMapingUpdate(row, index, done, loading) {
        handleMapingUpdate(row, index, done) {
            console.log(row)
            console.log('修改后', row)
            this.$message({
Source/UBCS-WEB/src/views/integration/integrationTransfer.vue
@@ -22,13 +22,14 @@
    components: {
        transfer
    },
    name: 'Integration',
    name: 'IntegrationTransfer',
    props: {
        // æ˜¯å¦æ‰“å¼€
        visible: {
            typeof: Boolean,
            default: false
        },
        // å¼¹çª—标题
        title: {
            typeof: String,
            default: '编码属性'
@@ -48,6 +49,11 @@
                    disabled: 'disabled'
                };
            }
        },
        // å¦‚果有特殊操作,一条数据只能用一次的操作,就需要把禁用的数据字段用lebel对应的值传递过来
        disabledData: {
            typeof: Array,
            default: () => []
        },
        // æŸ¥è¯¢æ–‡æœ¬æ¡†çš„placeholder
        filterPlaceholder: {
@@ -75,14 +81,21 @@
            pinyin.setOptions({ checkPolyphone: false, charCase: 1 });
            let name = this.props.label
            let key = this.props.key
            let objs = this.data.map(item => {
            let data = this.data.map(item => {
                let objitem = { disabled: false, ...item }
                if (this.disabledData.length !== 0) {
                    this.disabledData.forEach(element => {
                        if (objitem[name] === element)  objitem.disabled = true
                    });
                }
                return objitem
            })
            return data.map(item => {
                let pinYin = pinyin.getFullChars(item[this.props.label])
                let renPing = pinyin.getCamelChars(item[this.props.label])
                const obj = { pinyins: pinYin, renPing: renPing, disabled: false, [name]: item[this.props.label], [key]: item[this.props.key] }
                const obj = { pinyins: pinYin, renPing: renPing, [name]: item[this.props.label], [key]: item[this.props.key], disabled: item.disabled }
                return obj
            })
            console.log(objs)
            return objs
        }
    },
    methods: {
@@ -102,8 +115,8 @@
        },
        // ç¡®å®šæŒ‰é’®ï¼Œè¿”回当前数据和修改后的数据
        handelTransferSave() {
            let that =this
            let datas= that.newdata
            let that = this
            let datas = that.newdata
            const findtra = datas.findIndex(item => item.oid === that.transferValue[0].oid)
            datas[findtra].disabled = true
            const obj = {
Source/UBCS-WEB/vue.config.js
@@ -27,16 +27,11 @@
      '/api': {
        //本地服务接口地址
        // target: 'http://localhost:37000',
        //  target: 'http://localhost:37000',
        // target: 'http://192.168.1.51:37000',
        //target: 'http://192.168.3.7:37000',
        // target: 'http://dev.vci-tech.com:37000',
        // target: 'http://192.168.1.51:37000/',
        //   target: 'http://localhost:37000',
        // target: 'http://192.168.1.63:37000',
        //target: 'http://192.168.3.7:37000',
        // target: 'http://dev.vci-tech.com:37000',
        target: 'http://dev.vci-tech.com:37000',
        //target: 'http://192.168.1.51:37000/',
        // target: 'http://192.168.1.51:37000/',
        //远程演示服务地址,可用于直接启动项目
        // target: 'https://saber.bladex.vip/api',
        ws: true,
Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/feign/MdmApplyGroupCodeProvider.java
@@ -60,6 +60,6 @@
     * @return æ‰§è¡Œç»“æžœ
     */
    @PostMapping("/externalMainData/queryApplyState")
    DockingApplyFormStatusVO queryApplyState(@NotNull @RequestBody DockingModelQueryVO dockingModelQueryVO);
    DockingApplyFormQueryStatusVO queryApplyState(@NotNull @RequestBody DockingModelQueryVO dockingModelQueryVO);
}
Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/DockingApplyFormQueryStatusVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,51 @@
package com.vci.ubcs.code.webservice.vo;
import java.util.List;
public class DockingApplyFormQueryStatusVO {
    /***
     * æŽ¥å£ç¼–码
     */
    private int code;
    /***
     * è¿”回消息
     */
    private String msg;
    /****
     * è¿”回申请单状态
     */
    private List<DockingApplyFormStatusVO> data;
    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 List<DockingApplyFormStatusVO> getData() {
        return data;
    }
    public void setData(List<DockingApplyFormStatusVO> data) {
        this.data = data;
    }
    @Override
    public String toString() {
        return "DockingApplyFormQueryStatusVO{" +
            "code=" + code +
            ", msg='" + msg + '\'' +
            ", data=" + data +
            '}';
    }
}
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
@@ -206,4 +206,19 @@
    }
/***
 * æŸ¥è¯¢ç”³è¯·å•状态
 * oids:业务数据oid
 * @return è¿”回执行结果信息
 */
    @GetMapping( "/queryApplyState")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "查看申请单状态", notes = "查看申请单状态")
    public R  queryApplyState(String oids){
        try {
            return groupMdmInterService.queryApplyState(oids);
        }catch (VciBaseException e){
            return R.fail("查看申请单状态失败:"+e.getMessage());
        }
    }
}
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IGroupMdmInterService.java
@@ -50,4 +50,12 @@
     * @return
     */
    R syncClassifyModel(String classifyId, String operationType)throws VciBaseException;
    /***
     * æŸ¥è¯¢çŠ¶æ€
     * @param oids
     * @return
     * @throws VciBaseException
     */
    R queryApplyState(String oids)throws VciBaseException;
}
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
@@ -438,7 +438,7 @@
                    throw new Throwable(message);
                }
            }else{
                message="未获从集团获取到任何模型信息";
                message="未从集团获取到任何模型信息";
                log.info(message);
                throw new Throwable(message);
            }
@@ -459,24 +459,57 @@
     * @param dataOids
     * @return æ‰§è¡Œç»“æžœ
     */
    public R queryApplyState(String dataOids) {
    @Override
    public R queryApplyState(String dataOids) throws VciBaseException {
        String message="执行成功!";
        log.info("查询申请单状态接口statr");
        try {
            VciBaseUtil.alertNotNull(dataOids,"所查申请单数据主键");
            VciBaseUtil.alertNotNull(dockingApplySysName,"系统标识配置:docking.apply.unitCode");
            List<String> applyIdList=new ArrayList<>();
            List<DockingPreApplyForm> dockingPreApplyFormList=    this.dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().in(DockingPreApplyForm::getDataOid, VciBaseUtil.str2List(dataOids)));
            Map<String,DockingPreApplyForm> dockingPreApplyFormMap=new HashMap<>();
            dockingPreApplyFormList.stream().forEach(dockingPreApplyForm -> {
                dockingPreApplyForm.getId();
                applyIdList.add(dockingPreApplyForm.getId());
                dockingPreApplyFormMap.put(dockingPreApplyForm.getId(),dockingPreApplyForm);
            });
            DockingModelQueryVO dockingModelQueryVO=new DockingModelQueryVO();
            dockingModelQueryVO.setApplyNums(VciBaseUtil.array2String(applyIdList.toArray(new String[]{})));
            dockingModelQueryVO.setSysName(dockingApplySysName);
            DockingApplyFormQueryStatusVO dockingApplyFormQueryStatusVO=mdmApplyGroupCodeProvider.queryApplyState(dockingModelQueryVO);
            int code=dockingApplyFormQueryStatusVO.getCode();
            String mesg=dockingApplyFormQueryStatusVO.getMsg();
            if(code==1){
                List<DockingApplyFormStatusVO> dockingApplyFormStatusVOList=dockingApplyFormQueryStatusVO.getData();
                if(CollectionUtils.isEmpty(dockingApplyFormStatusVOList)){
                    for (DockingApplyFormStatusVO applyFormDataState : dockingApplyFormStatusVOList) {
                        String applyId=applyFormDataState.getApplyNum();
                        String state= applyFormDataState.getFormState();
                        String examineOpinion=applyFormDataState.getExamineOpinion();
                        String jmsg=getCodeState(state)+",意见:"+examineOpinion;
                        if(dockingPreApplyFormMap.containsKey(applyId)){
                            DockingPreApplyForm applyFormObject=dockingPreApplyFormMap.get(applyId);
                            applyFormObject.setMsg(jmsg);
                        }
                    }
                    boolean res=this.dockingPreApplyFormService.saveOrUpdateBatch(dockingPreApplyFormList);
                    if(res){
                        R.success("申请集团码状态查询成功:"+mesg);
                    }
                }else{
                    throw new Throwable("没有获取到相关数据信息");
                }
            }else{
                throw new    Throwable(mesg);
            }
        }catch (Throwable e){
            e.printStackTrace();;
            log.error("获取数据模型失败"+e);
            R.fail(message);
            log.error("获取申请单状态失败"+e);
            throw  new VciBaseException(message);
        }
        log.info("查询申请单状态接口end");
        return R.success(message);
@@ -968,4 +1001,28 @@
        }
        return value;
    }
    private String getCodeState(String formState){
        String msg="";
        if("1".equals(formState)){
            msg="集团审核中";
        }else if("2".equals(formState)){
            msg="驳回";
        }else if("3".equals(formState)){
            msg="集团审核中";
        }else if("4".equals(formState)){
            msg="审核结束,赋码失败";
        }else if("5".equals(formState)){
            msg="审核结束,赋码成功";
        }else if("6".equals(formState)){
            msg="待301赋码";
        }else if("7".equals(formState)){
            msg="已赋码";
        }else if("8".equals(formState)){
            msg="已赋码(沿用)";
        }else if("9".equals(formState)){
            msg="审核中";
        }
        return msg;
    }
}
Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreAttrMappingMapper.xml
@@ -35,7 +35,7 @@
            <result column="SOURCECLSFNAME" property="sourceClassifyName"/>
            <result column="TARGETATTRID" property="targetAttrId"/>
            <result column="TARGETCLSFID" property="targetClassifyId"/>
            <result column="VIEWMODEID" property="viewModeId"/>
           <!-- <result column="VIEWMODEID" property="viewModeId"/>-->
            <result column="VIEWMODENAME" property="viewModelName"/>
            <result column="TARGETATTRKEY" property="targetAttrKey"/>
            <result column="TARGETATTRNAME" property="targetAttrName"/>