From 2353af8edf94434cd571100bb16ed9fe9f12819d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期二, 16 四月 2024 20:15:18 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/views/integration/integrationIndex.vue | 142 +++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 118 insertions(+), 24 deletions(-) diff --git a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue index d399a31..9e77493 100644 --- a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue +++ b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue @@ -51,9 +51,9 @@ @selection-change="selectionChange" @select-all="handleSelectAll"> <template slot="menuLeft"> - <el-button :disabled="disabledPush" icon="el-icon-plus" size="small" type="primary" - @click="dialogPush = true">鏂� 澧� - </el-button> + <!-- <el-button :disabled="disabledPush" icon="el-icon-plus" size="small" type="primary"--> + <!-- @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" @@ -62,6 +62,9 @@ <el-button icon="el-icon-connection" size="small" type="primary" @click="handleSync('one')">鍚屾璇︾粏妯″瀷 </el-button> + <el-button icon="el-icon-coordinate" size="small" type="primary" + @click="handlerAuto">鑷姩濉厖 + </el-button> </template> </avue-crud> </el-card> @@ -69,6 +72,11 @@ <avue-crud ref="crudRange" :data="rangeData" :option="optinoRange" :style="{ marginTop: '-20px'}" @row-update="handleUpdate" @row-dblclick="handleRowClick"> + <template slot="menuLeft"> + <el-button icon="el-icon-coordinate" size="small" type="primary" + @click="handlerAuto">鑷姩濉厖 + </el-button> + </template> </avue-crud> </el-card> </el-card> @@ -90,6 +98,7 @@ listCodeAttributeByClassId, syncClassifyModel } from '@/api/integration/integration.js' +import {getPage} from "@/api/omd/OmdAttribute"; export default { components: { @@ -113,6 +122,7 @@ highlightCurrentRow: true, } return { + targetNameList: [], // 鍏冩暟鎹繑鍥炲悕绉� defaultCheckedKeys: [], isNodeDisabled: true, // 琛ㄥ崟鍊� @@ -138,8 +148,8 @@ optinoRange: { title: '灞炴�ф槧灏勫彇鍊艰寖鍥�', maxHeight: '280px', - header: false, rowKey: 'oid', + refreshBtn: false, column: [ {label: '灞炴�ч泦鍥㈡灇涓惧��', prop: 'numTextValue', minWidth: 80}, {label: '闆嗗洟灞炴�ф灇涓炬樉绀哄悕绉�', prop: 'numText', minWidth: 80}, @@ -166,6 +176,20 @@ header: true, rowKey: 'oid', selection: false, + refreshBtn: false, + delBtn: false, + addBtn: false, + index: true, + columnBtn: false, + searchShow: true, + emptyBtn: false, + searchBtn: false, + searchShowBtn: false, + cellBtn: true, + border: true, + searchMenuSpan: 8, + highlightCurrentRow: true, + $cellEdit: true, column: [ {label: '闆嗗洟鍒嗙被', prop: 'sourceClassifyName', minWidth: 80}, {label: '鎵�灞炶鍥�', prop: 'viewName', minWidth: 80}, @@ -174,17 +198,24 @@ { label: '灞炴�у悕绉�', prop: 'targetAttrName', - minWidth: 80, - }, - { - label: '榛樿鍊�', - prop: 'defaultValue', - minWidth: 140, + type: 'select', cell: true, - blur: (value) => window.handleBlur(value, 'mapping') + filterable: true, + minWidth: 80, + props: { + label: 'targetAttrName', + value: 'targetAttrName' + }, + dicData: [], }, + // { + // label: '榛樿鍊�', + // prop: 'defaultValue', + // minWidth: 140, + // cell: true, + // blur: (value) => window.handleBlur(value, 'mapping') + // }, ], - ...options }, // 涓绘暟鎹垎绫绘爲 treeData: [], @@ -230,7 +261,6 @@ mounted() { let that = this window.handleBlur = that.handleBlur - }, computed: { filtermapping() { @@ -241,9 +271,23 @@ return obj.targetAttrName }) return transfer + }, + targetColumn() { + return this.optionMapping.column.find(column => column.prop === 'targetAttrName'); } }, methods: { + getTargetName(data) { + this.targetColumn.dicData = data.filter(item => item.name && item.name.trim() !== "") // 杩囨护鎺塶ame涓虹┖鐨勫睘鎬� + .map(item => { + return { + targetAttrId: item.oid, + targetAttrKey: item.id, + targetAttrName: item.name, + disabled: false + } + }); + }, // 鎺ュ彛宸︿晶鏍� async getReferCodeClassifyTree() { this.treeData = [] @@ -267,7 +311,13 @@ if (response.status === 200) { this.loading = false this.mappingData = response.data.data - // console.log(this.filtermapping) + + for (const item of this.mappingData) { + if (item.targetAttrName && item.targetAttrId && item.targetAttrKey) { + const targetObject = this.targetColumn.dicData.find(obj => obj.targetAttrName === item.targetAttrName); + targetObject.disabled = true; + } + } } }, // 鎺ュ彛鑾峰彇灞炴�ф槧灏勫彇鍊艰寖鍥� @@ -287,6 +337,7 @@ if (response.status === 200) { const data = response.data.data this.transferData = data; + this.getTargetName(data) // console.log(data) } }, @@ -373,6 +424,16 @@ }, // 淇濆瓨鎸夐挳 async handleSave() { + const getTargetCorresponding = (row) => { + return this.targetColumn.dicData.find(column => column.targetAttrName === row.targetAttrName); + } + for (const item of this.mappingData) { + item.$cellEdit = false; + if (item.targetAttrName) { + const {targetAttrId, targetAttrKey, targetAttrName} = await getTargetCorresponding(item); + Object.assign(item, {targetAttrId, targetAttrKey, targetAttrName}); + } + } const response = await batchAddSave({dockingPreAttrMappingVOList: this.mappingData}) if (response.status === 200) { this.$message({ @@ -393,9 +454,13 @@ message: "璇烽�夋嫨涓�鏉¢泦鍥㈠垎绫�" }); } else { - const response = await syncClassifyModel(param) - if (response.status === 200) { - console.log(response) + try { + const response = await syncClassifyModel(param); + if (response.status === 200) { + this.$message.success(response.data.msg) + } + } catch (error) { + console.error(error); } } }, @@ -476,13 +541,37 @@ done(); }, // 灞炴�у彇鍊艰寖鍥村崟鍏冩牸缂栬緫鍚� - handleMapingUpdate(row, index, done) { - this.$message({ - showClose: true, - message: "淇敼鎴愬姛", - type: "success", - }); - done(); + async handleMapingUpdate(row, index, done) { + const getTargetCorresponding = async (row) => { + return this.targetColumn.dicData.find(column => column.targetAttrName === row.targetAttrName); + }; + + try { + if (!row.targetAttrName) { + this.$message.warning('璇烽�夋嫨瑕佷繚瀛樼殑灞炴�у悕绉帮紒'); + done(); + return; + } + + // 鑾峰彇鐩爣灞炴�т俊鎭� + const {targetAttrId, targetAttrKey, targetAttrName} = await getTargetCorresponding(row); + + // 鏇存柊琛屾暟鎹� + Object.assign(row, {targetAttrId, targetAttrKey, targetAttrName}); + + const response = await batchAddSave({dockingPreAttrMappingVOList: this.mappingData}); + + if (response.status === 200) { + this.$message({ + type: "success", + message: "淇敼鎴愬姛!" + }); + } + } catch (error) { + console.error('澶勭悊鏄犲皠鏇存柊鏃跺嚭閿欙細', error); + } finally { + done(); + } }, // 闆嗗洟鏄犲皠灞炴�ч�夋嫨锛堝崟閫夛級 selectionChange(selection) { @@ -531,5 +620,10 @@ .el-transfer-panel { width: 270px; } + + .el-scrollbar__view { + height: 100px; + } } + </style> -- Gitblit v1.9.3