From c2c0c9370a72d253c624ff11d630d27c9cd0040d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 09 十月 2023 15:34:25 +0800 Subject: [PATCH] 主数据排序改为按id排序 --- Source/UBCS-WEB/src/views/integration/systemInfo.vue | 102 +++++++++++++++++++++++++++++++------------------- 1 files changed, 63 insertions(+), 39 deletions(-) diff --git a/Source/UBCS-WEB/src/views/integration/systemInfo.vue b/Source/UBCS-WEB/src/views/integration/systemInfo.vue index 2cad431..aea7794 100644 --- a/Source/UBCS-WEB/src/views/integration/systemInfo.vue +++ b/Source/UBCS-WEB/src/views/integration/systemInfo.vue @@ -33,8 +33,6 @@ v-model="TreeForm" :data="TreeData" :option="TreeOption" - node-key="id" - :default-checked-keys="[5]" @check-change="checkChange"> </avue-tree> </el-col> @@ -144,15 +142,17 @@ methods: { empower() { batchAddSave(this.checkAll.oid, this.checkAll.id, this.ParentList).then(res => { - console.log(res) - if(res.data.data.code === 200){ - this.$message.success(res.data.data.msg) + // console.log(res.data) + if(res.data.code === 200){ + this.$message.success(res.data.msg) this.dialogVisible=false; } }) }, //鍒嗙被鎺堟潈澶氶�夊洖璋� checkChange(row, checked) { + // this.ParentList=[] + // console.log('row',row) if (checked) { if (!row.parentId) { const parentRecord = { @@ -220,50 +220,75 @@ } } } - console.log(this.ParentList); + console.log('this.ParentList',this.ParentList); }, //鍒嗙被鎺堟潈 classifyHandler(row) { this.loading = true; this.checkAll = row sysInfoTree({systemOid: row.oid, systemId: row.id}).then(res => { - this.TreeData = res.data; - var List=[] - this.TreeData.forEach((item,index)=>{ - const parentRecord = { - label: item.text, - children: [], // 鍒濆鍖朿hildren涓虹┖鏁扮粍 + let List = []; + let value = 0; + let NumberList= []; + function traverse(obj, parent) { + //閲嶆柊鏋勫缓涓�娆¢�変腑褰撳墠row鐨勬暟鎹� + const record = { + label: obj.text, + oid: obj.oid, + attributes:{ + classifyId: obj.attributes.classifyId, + classifyOid: obj.attributes.classifyOid, + selected:obj.attributes.selected + }, + classParentOid: obj.parentId, + value: value, + children: [] }; - List.push(parentRecord); - // 濡傛灉item鐨刢hildren涓嶄负绌� 缁х画寰幆children涓殑姣忎釜瀵硅薄 - if (item.children && item.children.length > 0) { - for (let child of item.children) { - const childRecord = { - label: child.text, // 浣跨敤child鐨則ext灞炴�т綔涓簂abel - children: [], // 鍒濆鍖朿hildren涓虹┖鏁扮粍 - }; - parentRecord.children.push(childRecord); // 灏哻hildRecord娣诲姞鍒皃arentRecord鐨刢hildren鏁扮粍涓� - // 濡傛灉瀛愬璞$殑children涓嶄负绌� 缁х画寰幆鑾峰彇鏁版嵁 - if (child.children && child.children.length > 0) { - for (let subChild of child.children) { - const subRecord = { - label: subChild.text, // 浣跨敤subChild鐨則ext灞炴�т綔涓簂abel - children: [], // 鍒濆鍖朿hildren涓虹┖鏁扮粍 - }; - childRecord.children.push(subRecord); // 灏唖ubRecord娣诲姞鍒癱hildRecord鐨刢hildren鏁扮粍涓� - } - } + //褰撳墠宸查�夋嫨鏁版嵁鍥炲~ + if (record.attributes.selected == 'true') { + NumberList.push(record.value); + } + if (parent) { + const stingChild = parent.children.find(child => child.label === record.label); + if (stingChild) { + record.value = stingChild.value; // 浣跨敤宸插瓨鍦ㄧ殑瀛愯妭鐐圭殑value鍊� + } else { + parent.children.push(record); + value++; + } + } else { + const stingRecord = List.find(item => item.label === record.label); + if (stingRecord) { + record.value = stingRecord.value; // 浣跨敤宸插瓨鍦ㄧ殑椤跺眰鑺傜偣鐨剉alue鍊� + } else { + List.push(record); + value++; } } - }) - console.log('list',List) - this.ModifyProperties(this.TreeData, 'text', 'label'); - // 鏍规嵁 this.TreeData 鐨勯暱搴﹁绠楀欢杩熸椂闂� + if (obj.children && obj.children.length > 0) { + for (let child of obj.children) { + traverse(child, record); + } + } + } + for (let item of res.data) { + traverse(item, null); + } + // console.log('list', List); + this.TreeData = List; + // this.ModifyProperties(this.TreeData, 'text', 'label'); + // 鏍规嵁this.TreeData鐨勯暱搴﹁绠楀欢杩熸椂闂� const delayTime = this.TreeData.length * 1; setTimeout(() => { this.loading = false; - this.reload = Math.random() + this.reload = Math.random(); this.dialogVisible = true; + + this.$nextTick(() => { + if (this.$refs.tree) { + this.$refs.tree.setCheckedKeys(NumberList); + } + }); }, delayTime); }); }, @@ -281,7 +306,6 @@ }, async getDataList() { this.loading = true; - console.log(this.search); const {pageSize, currentPage} = this.page; const conditions = {}; if (Object.keys(this.search).length > 0) { @@ -293,7 +317,7 @@ } const response = await getSysInfoList(pageSize, currentPage, conditions); if (response.status === 200) { - console.log(response); + // console.log(response); this.loading = false; const data = response.data.data; this.data = data.records; @@ -362,7 +386,7 @@ }).then(async () => { const response = await sysInfoDel(param) if (response.status === 200) { - console.log(response) + // console.log(response) this.$message({ type: 'success', message: '鍒犻櫎鎴愬姛!' -- Gitblit v1.9.3