From 57c1aad776baa26cd534afcddcdc7cee25910880 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Thu, 09 Oct 2025 14:32:02 +0800
Subject: [PATCH] Merge branch 'feature/v6.0/6.0.4' into feature/v7.0/7.0.1

---
 src/views/system/dept.vue |   50 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 37 insertions(+), 13 deletions(-)

diff --git a/src/views/system/dept.vue b/src/views/system/dept.vue
index 809dc7a..c9bf5c3 100644
--- a/src/views/system/dept.vue
+++ b/src/views/system/dept.vue
@@ -40,10 +40,12 @@
 import { getLazyTree } from '@/api/base/region'
 import { mapGetters } from 'vuex'
 import website from '@/config/website'
+import { getList } from '@/api/device/device';
 
 export default {
   data () {
     return {
+      treeResolveMap: new Map(),
       form: {},
       selectionList: [],
       query: {},
@@ -383,6 +385,14 @@
             type: 'success',
             message: '操作成功!',
           })
+          this.parentId = ''
+          const resolve = this.treeResolveMap.get(row.parentId)
+          if (resolve) {
+            // 重新加载子节点数据
+            getChildLazyTree({ parentId: row.parentId }).then(res => {
+              resolve(res.data.data)
+            })
+          }
           this.onLoad(this.page)
           done(row)
         },
@@ -398,7 +408,7 @@
         loading()
         return
       }
-      console.log('--- Start rowUpdate ---')
+      // console.log('--- Start rowUpdate ---')
 
       // 提交时只使用县级代码
       const submitData = {
@@ -406,27 +416,33 @@
         areaCode: row.areaCode.split(',').pop(), // 取最后一个代码(县级)
       }
 
-      console.log('Row data before submit:', row)
+      console.log('编辑', row)
 
       update(submitData)
         .then(
           res => {
-            console.log('Update response:', res.data)
+            const resolve = this.treeResolveMap.get(row.parentId)
+            if (resolve) {
+              // 重新加载子节点数据
+              getChildLazyTree({ parentId: row.parentId }).then(res => {
+                resolve(res.data.data)
+              })
+            }
+            this.onLoad(this.page)
             this.$message({
               type: 'success',
               message: '操作成功!',
             })
-            this.onLoad(this.page)
             done(row)
           },
           error => {
-            console.log('Update error:', error)
+            // console.log('Update error:', error)
             this.loading = false
             loading()
           }
         )
         .catch(error => {
-          console.log('Update promise rejected:', error)
+          // console.log('Update promise rejected:', error)
           this.loading = false
         })
     },
@@ -440,11 +456,18 @@
           return remove(row.id)
         })
         .then(() => {
+          const resolve = this.treeResolveMap.get(row.parentId)
+          if (resolve) {
+            // 重新加载子节点数据
+            getChildLazyTree({ parentId: row.parentId }).then(res => {
+              resolve(res.data.data)
+            })
+          }
+          this.onLoad(this.page)
           this.$message({
             type: 'success',
             message: '操作成功!',
           })
-          this.onLoad(this.page)
           done(row)
         })
     },
@@ -546,11 +569,11 @@
     },
     onLoad (page, params = {}) {
       this.loading = true
-      console.log('onLoad triggered with page:', page, 'params:', params)
-      console.log('Current parentId:', this.parentId, 'query:', this.query)
+      // console.log('onLoad triggered with page:', page, 'params:', params)
+      // console.log('Current parentId:', this.parentId, 'query:', this.query)
       getLazyList(this.parentId, Object.assign(params, this.query))
         .then(res => {
-          console.log('onLoad response:', res.data)
+          // console.log('onLoad response:', res.data)
           // 处理 areaCode,确保是单一字符串
           const data = (res.data.data || []).map(item => {
             const fullAreaCode = this.getFullAreaCode(item.areaCode)
@@ -565,16 +588,17 @@
           this.data = data
           this.loading = false
           this.selectionClear()
-          console.log('Table data after onLoad:', this.data)
+          // console.log('Table data after onLoad:', this.data)
         })
         .catch(error => {
-          console.log('onLoad error:', error)
+          // console.log('onLoad error:', error)
           this.loading = false
           this.data = this.data // 保留当前数据
-          console.log('Table data after onLoad error:', this.data)
+          // console.log('Table data after onLoad error:', this.data)
         })
     },
     treeLoad (tree, treeNode, resolve) {
+      this.treeResolveMap.set(tree.id, resolve)
       getChildLazyTree({ parentId: tree.id }).then(res => {
         resolve(res.data.data)
       })

--
Gitblit v1.9.3