瀏覽代碼

修复bug

yangyuxuan 7 月之前
父節點
當前提交
44de9375fc

+ 27 - 5
src/api/PreventionResponsible/index.ts

@@ -1,13 +1,11 @@
 import { AxiosPromise } from 'axios';
 import { UserInfo } from '@/api/system/user/types';
 import request from '@/utils/request';
-import { data } from 'autoprefixer';
 
 export function getZoning(id): AxiosPromise<UserInfo> {
   return request({
     url: '/api/system/area/tree2/' + id,
-    method: 'get',
-    params: data
+    method: 'get'
   });
 }
 
@@ -15,8 +13,7 @@ export function getZoning(id): AxiosPromise<UserInfo> {
 export function getPersonRespon(): AxiosPromise<any> {
   return request({
     url: '/api/ThreeProofingResponsible/type_data/treeData',
-    method: 'get',
-    params: data
+    method: 'get'
   });
 }
 // 首页列表查询
@@ -66,6 +63,31 @@ export function deleteData(id) {
 export function getRegionalTree(id) {
   return request({
     url: `/api/system/area/tree2/${id}`,
+    method: 'get'
+  });
+}
+
+//获取区划树3
+export function getRegionalTree3() {
+  return request({
+    url: `/api/system/area/allTree`,
+    method: 'get'
+  });
+}
+
+//数据批量导入
+export function dataImport(data) {
+  return request({
+    url: '/api/ThreeProofingResponsible/person/createImport',
+    method: 'post',
+    data: data
+  });
+}
+
+//导入情况
+export function getSituation(data) {
+  return request({
+    url: `/api/ThreeProofingResponsible/import_status/list`,
     method: 'get',
     params: data
   });

+ 13 - 6
src/components/DataImport/DataImportDetail.vue

@@ -1,13 +1,13 @@
 <template>
   <el-dialog v-model="dialogVisible" :title="showDetails ? '详情' : '查看导入情况'" width="780px" append-to-body>
     <el-table v-show="!showDetails" ref="tableRef" :data="dataList">
-      <el-table-column label="文件名称" align="center" prop="event_id" />
-      <el-table-column label="时间" align="center" prop="event_title" />
+      <el-table-column label="文件名称" align="center" prop="file_name" />
+      <el-table-column label="时间" align="center" prop="update_time" />
       <el-table-column label="操作账号" align="center" prop="event_title" />
-      <el-table-column label="状态" align="center" prop="event_title">
+      <el-table-column label="状态" align="center" prop="status">
         <template #default="scope">
-          <el-text v-if="scope.row.event_type === '1'" type="success">已完成</el-text>
-          <el-text v-if="scope.row.event_type === '2'" type="primary">进行中</el-text>
+          <el-text v-if="scope.row.status === '1'" type="success">已完成</el-text>
+          <el-text v-if="scope.row.status === '2'" type="primary">进行中</el-text>
         </template>
       </el-table-column>
       <el-table-column label="备注" align="center" prop="event_title">
@@ -33,6 +33,8 @@
 </template>
 
 <script lang="ts" setup name="DataImportDetail">
+import { getSituation } from '@/api/PreventionResponsible';
+
 const props = defineProps({
   modelValue: Boolean
 });
@@ -54,15 +56,20 @@ const queryParams = reactive({
 const dataList = ref([]);
 
 const getList = () => {
-  dataList.value = [{}];
+  getSituation(queryParams).then((res) => {
+    dataList.value = res.data;
+    total.value = res.total;
+  })
 };
 
+
 let showDetails = ref(false);
 const handleShowDetails = (id) => {
   showDetails.value = true;
 };
 onMounted(() => {
   getList();
+
 });
 </script>
 

+ 7 - 2
src/components/DataImport/index.vue

@@ -45,6 +45,7 @@ import { download2, globalHeaders } from '@/utils/request';
 import { propTypes } from '@/utils/propTypes';
 import { v1 as uuidv1 } from 'uuid';
 import axios from 'axios';
+import { dataImport } from '@/api/PreventionResponsible';
 
 const props = defineProps({
   modelValue: Boolean,
@@ -196,6 +197,10 @@ const uploadByPieces = async (url, { fileName, file }) => {
     // 文件分片上传完成后,调用合并接口
     const res = await mergeChunks(identifier, file.name);
     res.originalName = file.name;
+    const res2 = await dataImport({
+      filename: res.filename,
+      file_name_desc: res.originalName,
+    })
     return res;
   } catch (e) {
     return e;
@@ -248,8 +253,8 @@ const uploadedSuccessfully = () => {
 
 // 下载模板
 const handleDownload = () => {
-  if (props.url) return false;
-  download2(props.url, props.fileName);
+  if (!props.url) return false;
+  download2(baseUrl + downLoadApi + props.url, props.fileName);
 };
 </script>
 

+ 1 - 9
src/types/components.d.ts

@@ -24,12 +24,9 @@ declare module 'vue' {
     DistributionMap: typeof import('./../components/Map/YztMap/DistributionMap.vue')['default']
     DrawMap: typeof import('./../components/Map/YztMap/DrawMap.vue')['default']
     Editor: typeof import('./../components/Editor/index.vue')['default']
-    ElAnchor: typeof import('element-plus/es')['ElAnchor']
-    ElAnchorLink: typeof import('element-plus/es')['ElAnchorLink']
     ElAutocomplete: typeof import('element-plus/es')['ElAutocomplete']
     ElBadge: typeof import('element-plus/es')['ElBadge']
     ElButton: typeof import('element-plus/es')['ElButton']
-    ElCard: typeof import('element-plus/es')['ElCard']
     ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
     ElCheckboxButton: typeof import('element-plus/es')['ElCheckboxButton']
     ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
@@ -37,8 +34,6 @@ declare module 'vue' {
     ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
     ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
     ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
-    ElDescriptions: typeof import('element-plus/es')['ElDescriptions']
-    ElDescriptionsItem: typeof import('element-plus/es')['ElDescriptionsItem']
     ElDialog: typeof import('element-plus/es')['ElDialog']
     ElDivider: typeof import('element-plus/es')['ElDivider']
     ElDrawer: typeof import('element-plus/es')['ElDrawer']
@@ -51,7 +46,6 @@ declare module 'vue' {
     ElIcon: typeof import('element-plus/es')['ElIcon']
     ElImage: typeof import('element-plus/es')['ElImage']
     ElInput: typeof import('element-plus/es')['ElInput']
-    ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
     ElMenu: typeof import('element-plus/es')['ElMenu']
     ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
     ElOption: typeof import('element-plus/es')['ElOption']
@@ -61,8 +55,8 @@ declare module 'vue' {
     ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
     ElRow: typeof import('element-plus/es')['ElRow']
     ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
-    ElSegmented: typeof import('element-plus/es')['ElSegmented']
     ElSelect: typeof import('element-plus/es')['ElSelect']
+    ElSlider: typeof import('element-plus/es')['ElSlider']
     ElStep: typeof import('element-plus/es')['ElStep']
     ElSteps: typeof import('element-plus/es')['ElSteps']
     ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
@@ -89,8 +83,6 @@ declare module 'vue' {
     HikvisionPlayer: typeof import('./../components/HKVideo/hikvision-player.vue')['default']
     HKVideo: typeof import('./../components/HKVideo/index.vue')['default']
     IconSelect: typeof import('./../components/IconSelect/index.vue')['default']
-    IEpCaretBottom: typeof import('~icons/ep/caret-bottom')['default']
-    IEpCaretTop: typeof import('~icons/ep/caret-top')['default']
     IFrame: typeof import('./../components/iFrame/index.vue')['default']
     ImagePreview: typeof import('./../components/ImagePreview/index.vue')['default']
     ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default']

+ 1 - 1
src/views/comprehensiveGuarantee/materialReserves/materialsDeclaration.vue

@@ -127,7 +127,7 @@ const handleCancel = (needUpdate) => {
 
 // 定义审批状态映射
 const approvalStatusMap = {
-  '1': '未审',
+  '1': '未审',
   '2': '通过',
   '3': '不通过'
 };

+ 1 - 2
src/views/comprehensiveGuarantee/materialReserves/materialsDeclarationView.vue

@@ -15,9 +15,8 @@
           </el-col>
           <el-col :span="12">
             <div class="text-box">
-              <div class="text1">审批状态2:</div>
+              <div class="text1">审批状态:</div>
               <div class="text2">
-                {{detailData.declaration_details}}f
                 <dict-tag :options="material_approval_status" :value="detailData.declaration_details" />
               </div>
             </div>

+ 72 - 16
src/views/dataFilling/fillingManage.vue

@@ -4,21 +4,34 @@
       <div>
         <transition name="fade">
           <div v-show="showSearch">
-            <el-form ref="queryFormRef" :model="form">
+            <el-form ref="queryFormRef" :model="queryParams">
               <el-row :gutter="20">
                 <!-- 表格名称 -->
                 <el-col :span="6">
                   <el-form-item label="表格名称:" prop="table_name" label-width="auto">
-                    <el-input v-model="form.table_name" placeholder="请输入表格名称"></el-input>
+                    <el-input v-model="queryParams.table_name" placeholder="请输入表格名称"></el-input>
                   </el-form-item>
                 </el-col>
                 <!-- 表格状态 -->
                 <el-col :span="6">
-                  <el-form-item label="表格状态:" prop="task_status">
-                    <el-radio-group v-model="form.task_status">
-                      <el-radio value="0" size="large">在用</el-radio>
-                      <el-radio value="1" size="large">禁止</el-radio>
-                    </el-radio-group>
+                  <el-form-item label="任务状态:" prop="status">
+<!--                    <el-radio-group v-model="form.task_status">-->
+<!--                      <el-radio value="0" size="large">在用</el-radio>-->
+<!--                      <el-radio value="1" size="large">禁止</el-radio>-->
+<!--                    </el-radio-group>-->
+                    <el-select
+                      v-model="queryParams.status"
+                      clearable
+                      placeholder="请选择"
+                      style="width: 240px"
+                    >
+                      <el-option
+                        v-for="item in options"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      />
+                    </el-select>
                   </el-form-item>
                 </el-col>
                 <!-- 发布时间 -->
@@ -36,11 +49,24 @@
                 </el-col>
                 <!-- 下发状态 -->
                 <el-col :span="6">
-                  <el-form-item label="下发状态:" prop="release_status">
-                    <el-radio-group v-model="form.release_status">
-                      <el-radio value="0" size="large">待发布</el-radio>
-                      <el-radio value="1" size="large">已发布</el-radio>
-                    </el-radio-group>
+                  <el-form-item label="发布状态:" prop="issued_status">
+<!--                    <el-radio-group v-model="queryParams.issued_status">-->
+<!--                      <el-radio value="0" size="large">待发布</el-radio>-->
+<!--                      <el-radio value="1" size="large">已发布</el-radio>-->
+<!--                    </el-radio-group>-->
+                    <el-select
+                      v-model="queryParams.issued_status"
+                      clearable
+                      placeholder="请选择"
+                      style="width: 240px"
+                    >
+                      <el-option
+                        v-for="item in options1"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      />
+                    </el-select>
                   </el-form-item>
                 </el-col>
                 <!-- 操作按钮 -->
@@ -58,7 +84,7 @@
         <el-table ref="multipleTable" v-loading="loading" :data="tableData" @selection-change="handleSelectionChange">
           <el-table-column label="序号" align="center" prop="id" />
           <el-table-column label="表格名称" align="center" prop="table_name" />
-          <el-table-column label="发布日期" align="center" prop="created_at" />
+          <el-table-column label="发布日期" align="center" prop="start_time" />
           <el-table-column label="发布状态" align="center" prop="issued_status">
             <template #default="scope">
               {{ scope.row.issued_status === 2 ? '已发布' : '待发布' }}
@@ -99,6 +125,8 @@ import TableDetails from './tableDetails.vue';
 import { ElButton, ElCol } from 'element-plus';
 import { fillingSelect, fillingRelease } from '@/api/dataFilling/fillingManage';
 import * as XLSX from 'xlsx';
+import { deepClone } from '@/utils';
+import { parseTime } from '@/utils/ruoyi';
 
 const loading = ref(true);
 const showSearch = ref(true);
@@ -108,13 +136,32 @@ const total = ref(0);
 const tableData = ref([]);
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
 
+const options = [
+  {
+    value: '0',
+    label: '禁止',
+  },
+  {
+    value: '1',
+    label: '在用',
+  }]
+const options1 = [
+  {
+    value: '1',
+    label: '待发布',
+  },
+  {
+    value: '2',
+    label: '已发布',
+  }]
 const initFormData = reactive({
   table_id: '',
   table_name: '',
   filling_time: '',
   release_time: '',
   release_status: '',
-  task_status: ''
+  task_status: '',
+  status: ''
 });
 
 const data = reactive({
@@ -124,7 +171,9 @@ const data = reactive({
     pageSize: 10,
     table_name: '',
     release_status: '',
-    task_status: ''
+    task_status: '',
+    status: '',
+    issued_status:''
   }
 });
 
@@ -159,8 +208,15 @@ const handleView = (row) => {
 
 const fetchFillList = () => {
   loading.value = true;
-  fillingSelect(queryParams.value)
+  const params = deepClone(queryParams.value);
+  params.status = !queryParams.value.status ? [] : [queryParams.value.status];
+  params.issued_status = !queryParams.value.issued_status ? [] : [queryParams.value.issued_status];
+  fillingSelect(params)
     .then((res) => {
+      for(let i = 0; i < res.data.length; i++) {
+        res.data[i].end_time = parseTime(res.data[i].end_time);
+        res.data[i].start_time = parseTime(res.data[i].start_time);
+      }
       tableData.value = res.data;
       total.value = res.total;
     })

+ 38 - 7
src/views/dataFilling/myFilling.vue

@@ -12,11 +12,26 @@
                   </el-form-item>
                 </el-col>
                 <el-col :span="6">
+<!--                  <el-form-item label="任务状态:" prop="submission_status">-->
+<!--                    <el-radio-group v-model="queryParams.submission_status">-->
+<!--                      <el-radio value="0" size="large">待填报</el-radio>-->
+<!--                      <el-radio value="1" size="large">已上报</el-radio>-->
+<!--                    </el-radio-group>-->
+<!--                  </el-form-item>-->
                   <el-form-item label="任务状态:" prop="submission_status">
-                    <el-radio-group v-model="queryParams.submission_status">
-                      <el-radio value="0" size="large">待填报</el-radio>
-                      <el-radio value="1" size="large">已上报</el-radio>
-                    </el-radio-group>
+                    <el-select
+                      v-model="queryParams.submission_status"
+                      clearable
+                      placeholder="请选择"
+                      style="width: 240px"
+                    >
+                      <el-option
+                        v-for="item in options"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                      />
+                    </el-select>
                   </el-form-item>
                 </el-col>
                 <el-col :span="6">
@@ -66,6 +81,8 @@ import { fillList } from '@/api/dataFilling/datafilling';
 import WriteForm from './writeForm.vue';
 import FormDetail from './formDetail.vue';
 import { ComponentInternalInstance, getCurrentInstance } from 'vue';
+import { parseTime } from '@/utils/ruoyi';
+import { deepClone } from '@/utils';
 
 const loading = ref(true);
 const showSearch = ref(true);
@@ -75,7 +92,15 @@ const single = ref(true);
 const total = ref(0);
 const tableData = ref([]);
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-
+const options = [
+  {
+    value: '0',
+    label: '待填报',
+  },
+  {
+    value: '1',
+    label: '已上报',
+  }]
 const initFormData = reactive({
   report_id: '',
   table_name: '',
@@ -90,7 +115,7 @@ const data = reactive({
     page: 1,
     pageSize: 10,
     table_name: '',
-    submission_status: []
+    submission_status: ''
   }
 });
 
@@ -127,8 +152,14 @@ const handleView = (row) => {
 
 const fetchFillList = () => {
   loading.value = true;
-  fillList(queryParams.value)
+  const params = deepClone(queryParams.value);
+  params.submission_status = !queryParams.value.submission_status ? [] : [queryParams.value.submission_status]
+  fillList(params)
     .then((res) => {
+      for(let i = 0; i < res.data.length; i++) {
+        res.data[i].end_time = parseTime(res.data[i].end_time);
+        res.data[i].start_time = parseTime(res.data[i].start_time);
+      }
       tableData.value = res.data;
       total.value = res.total;
     })

+ 14 - 10
src/views/setting/PreventionResponsible/Edit.vue

@@ -6,7 +6,7 @@
         <div>修改三防责任人信息</div>
       </div>
       <div class="common-dialog-box">
-        <el-form ref="formRef" :model="form" :rules="data.rules" style="width: 1000px">
+        <el-form ref="formRef" label-width="100px" :model="form" :rules="data.rules" style="width: 1000px" >
           <el-form-item label="姓名:" prop="name">
             <el-input v-model="form.name" />
           </el-form-item>
@@ -120,7 +120,7 @@
 </template>
 
 <script setup lang="ts">
-import { ElMessage } from 'element-plus';
+import { ElForm, ElMessage } from 'element-plus';
 import { updateData, getPersonRespon, getZoning, responsibleDetail } from '@/api/PreventionResponsible';
 import { deepClone } from '@/utils';
 import { watch } from 'vue';
@@ -160,7 +160,7 @@ const data = reactive({
   }
 });
 const { form } = toRefs(data);
-const emits = defineEmits(['close']);
+const emits = defineEmits(['close','confirm']);
 const formRef = ref<InstanceType<typeof ElForm> | null>(null);
 const options1 = ref('');
 const options2 = ref('');
@@ -350,19 +350,23 @@ const setDefaultAreaSelection = (areaList, areaCode) => {
   data2.value = areaList[2] ? areaList[2].id : '';
   data3.value = areaList[3] ? areaList[3].id : '';
   form.value.area_code = areaCode;
-  getZoning(data1.value).then((res) => {
-    options2.value = res.data;
-  });
-  getZoning(data2.value).then((res) => {
-    options3.value = res.data;
-  });
+  if (!!data1.value) {
+    getZoning(data1.value).then((res) => {
+      options2.value = res.data;
+    });
+  }
+  if (!!data2.value) {
+    getZoning(data2.value).then((res) => {
+      options3.value = res.data;
+    });
+  }
 };
 const submitNewPerson = async () => {
   await formRef.value.validate((valid) => {
     if (valid) {
       updateData(form.value).then((res) => {
         proxy.$modal.msgSuccess('更新成功');
-        goBack();
+        emits('confirm');
       });
     }
   });

+ 1 - 1
src/views/setting/PreventionResponsible/add.vue

@@ -9,7 +9,7 @@
         <div>新建三防责任人信息</div>
       </div>
       <div class="common-dialog-box">
-        <el-form ref="formRef" :model="form" :rules="rules" label-width="70px">
+        <el-form ref="formRef" :model="form" :rules="data.rules" label-width="100px">
           <el-form-item label="姓名:" prop="name">
             <el-input v-model="form.name" placeholder="请输入姓名" />
           </el-form-item>

+ 27 - 16
src/views/setting/PreventionResponsible/index.vue

@@ -9,14 +9,13 @@
               ref="deptTreeRef"
               class="mt-2"
               node-key="id"
+              :data="treeData"
               :props="defaultProps"
               :expand-on-click-node="false"
               :filter-node-method="filterNode"
               highlight-current
               @node-click="handleNodeClick"
               :default-expanded-keys="treeExpandelKeys"
-              :load="loadNode"
-              lazy
             />
           </el-col>
           <el-col :lg="20" :xs="24">
@@ -96,11 +95,11 @@
           </el-col>
         </el-row>
       </div>
-      <DataImport v-model="uploadShow" url="" file-name="责任人信息批量导入模板" steps-text="责任人信息" />
-      <DataImportDetail v-model="showUploadDetails" />
+      <DataImport v-model="uploadShow" url="9b6a6246-d6de-11ef-bfa9-fa163e4bf12e.xlsx" file-name="责任人信息批量导入模板.xlsx" steps-text="责任人信息" />
+      <DataImportDetail v-model="showUploadDetails" v-if="showUploadDetails" />
       <detail v-if="detailState.show" :id="detailState.id" @close="handledetailClose"></detail>
       <add v-if="addState.show" @close="handleAddClose" @refresh="getList"></add>
-      <Edit v-if="EditState.show" :id="EditState.id" @close="handleEditClose" @refresh="getList"></Edit>
+      <Edit v-if="EditState.show" :id="EditState.id" @close="handleEditClose" @confirm="handleSure" @refresh="getList"></Edit>
     </div>
   </div>
 </template>
@@ -108,7 +107,7 @@
 <script setup lang="ts">
 import api from '@/api/system/user';
 import { UserForm, UserQuery, UserVO } from '@/api/system/user/types';
-import { deleteData, getRegionalTree, getTableList } from '@/api/PreventionResponsible/index';
+import { deleteData, getRegionalTree, getRegionalTree3, getTableList } from '@/api/PreventionResponsible/index';
 import { DeptVO } from '@/api/system/dept/types';
 import { RoleVO } from '@/api/system/role/types';
 import { PostQuery, PostVO } from '@/api/system/post/types';
@@ -137,6 +136,8 @@ const deptOptions = ref<DeptVO[]>([]);
 const initPassword = ref<string>('');
 const postOptions = ref<PostVO[]>([]);
 const roleOptions = ref<RoleVO[]>([]);
+// const treeData = ref({});
+const treeData: Tree[] = ref([]);
 // 列显隐信息
 const columns = ref<FieldOption[]>([
   { key: 0, label: `用户编号`, visible: false, children: [] },
@@ -167,7 +168,7 @@ const initFormData: UserForm = {
   type_parent_list: []
 };
 
-const initData: PageData<UserForm, UserQuery> = {
+const initData = {
   form: { ...initFormData },
   queryParams: {
     page: 1,
@@ -243,15 +244,16 @@ let defaultProps = reactive({
   children: "children",
   isLeaf: 'isShowSelect',
 });
-const loadNode = (node: Node, resolve: (data: Tree[]) => void) => {
-  const id = node.level === 0 ? "1" : node.data.id;
-  fetchData(resolve, id);
-};
+// const loadNode = (node: Node, resolve: (data: Tree[]) => void) => {
+//   const id = node.level === 0 ? "1" : node.data.id;
+//   fetchData(resolve, id);
+// };
 const fetchData = async (resolve, id) => {
   let res = await getRegionalTree(id);
   return resolve(res.data);
 };
 
+
 /** 查询用户列表 */
 const getList = async () => {
   loading.value = true;
@@ -273,14 +275,14 @@ const handleNodeClick = (data: DeptVO) => {
 
 /** 搜索按钮操作 */
 const handleQuery = () => {
-  queryParams.value.pageNum = 1;
+  queryParams.value.page = 1;
   getList();
 };
 
 /** 重置按钮操作 */
 const resetQuery = () => {
   queryFormRef.value?.resetFields();
-  queryParams.value.pageNum = 1;
+  queryParams.value.page = 1;
   deptTreeRef.value?.setCurrentKey(undefined);
   handleQuery();
 };
@@ -317,14 +319,20 @@ let EditState = reactive({
 // 新建责任人按钮操作
 const handleAddClose = () => {
   addState.show = false;
-  queryParams.value.pageNum = 1;
+  queryParams.value.page = 1;
   getList();
 };
 const handleEditClose = () => {
   EditState.show = false;
-  queryParams.value.pageNum = 1;
-  getList();
+
+  // queryParams.value.page = 1;
+  // getList();
 };
+const handleSure = () => {
+  EditState.show = false;
+  queryParams.value.page = 1;
+  getList();
+}
 const handleAdd = (row: UserVO) => {
   addState.show = true;
   addState.id = row.id;
@@ -413,6 +421,9 @@ onMounted(() => {
   proxy?.getConfigKey('sys.user.initPassword').then((response) => {
     initPassword.value = response.data;
   });
+  getRegionalTree3().then((res) => {
+    treeData.value = res.data;
+  })
 });
 // 监听查询参数变化并重新获取数据
 watch(queryParams, () => {