无人机管理后台前端(已迁走)
罗广辉
2025-10-09 57c1aad776baa26cd534afcddcdc7cee25910880
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)
      })