From 7e952a339cca0dd65e01f2d0b11fd27c570f6607 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 28 九月 2023 23:26:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS-WEB/src/views/integration/systemInfo.vue | 108 +++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 94 insertions(+), 14 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/integration/systemInfo.vue b/Source/UBCS-WEB/src/views/integration/systemInfo.vue
index bd3103f..ac49796 100644
--- a/Source/UBCS-WEB/src/views/integration/systemInfo.vue
+++ b/Source/UBCS-WEB/src/views/integration/systemInfo.vue
@@ -24,7 +24,8 @@
</template>
</avue-crud>
- <el-dialog :visible.sync="dialogVisible" append-to-body class="avue-dialog avue-dialog--top" title="鍒嗙被鎺堟潈" top="-10">
+ <el-dialog :visible.sync="dialogVisible" append-to-body class="avue-dialog avue-dialog--top" title="鍒嗙被鎺堟潈"
+ top="-50px">
<el-row>
<el-col :span="10">
@@ -37,18 +38,28 @@
</el-col>
</el-row>
<div slot="footer" class="dialog-footer" style="height: 50px;line-height: 50px">
- <el-button type="primary" icon="el-icon-plus" size="small">鎺� 鏉�</el-button>
- <el-button icon="el-icon-close" size="small" type="danger">閲� 缃�</el-button>
- </div>
+ <el-button icon="el-icon-plus" size="small" type="primary" @click="empower">鎺� 鏉�</el-button>
+ <el-button icon="el-icon-close" size="small" type="danger">閲� 缃�</el-button>
+ </div>
</el-dialog>
</basic-container>
</template>
<script>
-import {getSysInfoList, sysInfoAdd, sysInfoEdit, sysInfoDel, sysInfoTree} from '@/api/integration/sysInfo.js'
+import {
+ getSysInfoList,
+ sysInfoAdd,
+ sysInfoEdit,
+ sysInfoDel,
+ sysInfoTree,
+ batchAddSave
+} from '@/api/integration/sysInfo.js'
export default {
data() {
return {
+ checkAll: {},
+ ParentList: [],
+ ParentRemoveList: [],
//閬垮厤缂撳瓨
reload: Math.random(),
TreeLoading: false,
@@ -125,18 +136,89 @@
},
}
},
-
+ created() {
+ },
methods: {
+ empower() {
+ batchAddSave(this.checkAll.oid, this.checkAll.id, this.ParentList).then(res => {
+ console.log(res)
+ })
+ },
//鍒嗙被鎺堟潈澶氶�夊洖璋�
- checkChange(row,checked) {
- // console.log(row)
- // if(checked){
- //
- // }
+ checkChange(row, checked) {
+ if (checked) {
+ if (!row.parentId) {
+ const parentRecord = {
+ oid: row.oid,
+ classifyId: row.attributes.classifyId,
+ classifyOid: row.attributes.classifyOid,
+ classParentOid: row.parentId,
+ };
+ this.ParentList.push(parentRecord);
+ // 濡傛灉row鐨刢hildren涓嶄负绌猴紝缁х画寰幆children涓殑姣忎釜瀵硅薄
+ if (row.children && row.children.length > 0) {
+ for (let child of row.children) {
+ const childRecord = {
+ oid: child.oid,
+ classifyId: child.attributes.classifyId,
+ classifyOid: child.attributes.classifyOid,
+ classParentOid: child.parentId,
+ };
+ this.ParentList.push(childRecord);
+ // 濡傛灉瀛愬璞$殑children涓嶄负绌猴紝缁х画寰幆鑾峰彇鏁版嵁
+ if (child.children && child.children.length > 0) {
+ for (let subChild of child.children) {
+ const subRecord = {
+ oid: subChild.oid,
+ classifyId: subChild.attributes.classifyId,
+ classifyOid: subChild.attributes.classifyOid,
+ classParentOid: subChild.parentId,
+ };
+ this.ParentList.push(subRecord);
+ }
+ }
+ }
+ }
+ }
+ } else {
+ // 鍙栨秷鍕鹃�夌殑鑺傜偣鏄埗鑺傜偣
+ if (!row.parentId) {
+ // 鎵惧埌鐖惰妭鐐瑰湪ParentList涓殑绱㈠紩
+ const parentIndex = this.ParentList.findIndex(item => item.oid === row.oid);
+ if (parentIndex !== -1) {
+ const parentOid = this.ParentList[parentIndex].classifyOid;
+
+ // 鏌ユ壘鎵�鏈夐渶瑕佸垹闄ょ殑瀛愯妭鐐圭殑绱㈠紩
+ const childIndexes = this.ParentList.reduce((indexes, item, index) => {
+ if (item.classParentOid === parentOid && item.classifyOid !== parentOid) {
+ indexes.push(index);
+ }
+ return indexes;
+ }, []);
+
+ // 浠庡悗寰�鍓嶅垹闄ゅ瓙鑺傜偣鐨勬暟鎹紝淇濊瘉绱㈠紩鐨勬纭��
+ for (let i = childIndexes.length - 1; i >= 0; i--) {
+ this.ParentList.splice(childIndexes[i], 1);
+ }
+
+ // 鍒犻櫎鐖惰妭鐐圭殑鏁版嵁
+ this.ParentList.splice(parentIndex, 1);
+ }
+ } else {
+ // 鍙栨秷鍕鹃�夌殑鑺傜偣鏄瓙鑺傜偣
+ const childIndex = this.ParentList.findIndex(item => item.oid === row.oid);
+ if (childIndex !== -1) {
+ // 鍒犻櫎瀛愯妭鐐圭殑鏁版嵁
+ this.ParentList.splice(childIndex, 1);
+ }
+ }
+ }
+ console.log(this.ParentList);
},
//鍒嗙被鎺堟潈
classifyHandler(row) {
this.loading = true;
+ this.checkAll = row
sysInfoTree({systemOid: row.oid, systemId: row.id}).then(res => {
this.TreeData = res.data;
this.ModifyProperties(this.TreeData, 'text', 'label');
@@ -266,9 +348,7 @@
},
// enter鎼滅储
handleEnter() {
- if (this.search[this.selectValue] === '') return
- else this.getDataList()
-
+ this.getDataList()
},
// 杈撳叆妗嗘竻绌�
handleClear() {
--
Gitblit v1.9.3