From ac4341ea6b66ae02427d39d35f41d42d78b2eb2e Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 二月 2025 10:08:32 +0800
Subject: [PATCH] #

---
 zy-asrs-admin/src/views/system/dict/index.vue |  174 ++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 97 insertions(+), 77 deletions(-)

diff --git a/zy-asrs-admin/src/views/system/dict/index.vue b/zy-asrs-admin/src/views/system/dict/index.vue
index 26a3068..4c40401 100644
--- a/zy-asrs-admin/src/views/system/dict/index.vue
+++ b/zy-asrs-admin/src/views/system/dict/index.vue
@@ -6,6 +6,7 @@
 import { logout } from '@/config.js';
 import EditView from './edit.vue'
 import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
 const context = getCurrentInstance()?.appContext.config.globalProperties;
 
 const router = useRouter();
@@ -16,82 +17,101 @@
 const searchInput = ref("")
 const editChild = ref(null)
 
+const state = reactive({
+  selectedRowKeys: [],
+  loading: false,
+});
+
 let tableData = ref([]);
 getPage();
 
+const {
+  getColumnSearchProps,
+} = useTableSearch();
+
 const columns = [
-        {
-            title: formatMessage('db.sys_dict.uuid', '缂栧彿'),
-            dataIndex: 'uuid',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.name', '瀛楀吀鍚嶇О'),
-            dataIndex: 'name',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.type', '绫诲瀷'),
-            dataIndex: 'type$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.flag', '鏍囪瘑'),
-            dataIndex: 'flag',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.value', '瀛楀吀鍊�'),
-            dataIndex: 'value',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.sort', '鎺掑簭'),
-            dataIndex: 'sort',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.status', '鐘舵��'),
-            dataIndex: 'status$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.create_time', '娣诲姞鏃堕棿'),
-            dataIndex: 'createTime$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.create_by', '娣诲姞浜哄憳'),
-            dataIndex: 'createBy$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.update_time', '淇敼鏃堕棿'),
-            dataIndex: 'updateTime$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.update_by', '淇敼浜哄憳'),
-            dataIndex: 'updateBy$',
-            width: 140,
-            ellipsis: true,
-        },
-        {
-            title: formatMessage('db.sys_dict.memo', '澶囨敞'),
-            dataIndex: 'memo',
-            width: 140,
-            ellipsis: true,
-        },
+  {
+    title: formatMessage('db.sys_dict.uuid', '缂栧彿'),
+    dataIndex: 'uuid',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('uuid'),
+  },
+  {
+    title: formatMessage('db.sys_dict.name', '瀛楀吀鍚嶇О'),
+    dataIndex: 'name',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('name'),
+  },
+  {
+    title: formatMessage('db.sys_dict.type', '绫诲瀷'),
+    dataIndex: 'type$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('type$'),
+  },
+  {
+    title: formatMessage('db.sys_dict.flag', '鏍囪瘑'),
+    dataIndex: 'flag',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('flag'),
+  },
+  {
+    title: formatMessage('db.sys_dict.value', '瀛楀吀鍊�'),
+    dataIndex: 'value',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('value'),
+  },
+  {
+    title: formatMessage('db.sys_dict.sort', '鎺掑簭'),
+    dataIndex: 'sort',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('sort'),
+  },
+  {
+    title: formatMessage('db.sys_dict.status', '鐘舵��'),
+    dataIndex: 'status$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('status$'),
+  },
+  // {
+  //   title: formatMessage('db.sys_dict.create_time', '娣诲姞鏃堕棿'),
+  //   dataIndex: 'createTime$',
+  //   width: 140,
+  //   ellipsis: true,
+  // },
+  // {
+  //   title: formatMessage('db.sys_dict.create_by', '娣诲姞浜哄憳'),
+  //   dataIndex: 'createBy$',
+  //   width: 140,
+  //   ellipsis: true,
+  // },
+  {
+    title: formatMessage('db.sys_dict.update_time', '淇敼鏃堕棿'),
+    dataIndex: 'updateTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateTime$'),
+  },
+  {
+    title: formatMessage('db.sys_dict.update_by', '淇敼浜哄憳'),
+    dataIndex: 'updateBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateBy$'),
+  },
+  {
+    title: formatMessage('db.sys_dict.memo', '澶囨敞'),
+    dataIndex: 'memo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('memo'),
+  },
 
   {
     title: formatMessage('common.operation', '鎿嶄綔'),
@@ -102,10 +122,6 @@
   },
 ];
 
-const state = reactive({
-  selectedRowKeys: [],
-  loading: false,
-});
 const hasSelected = computed(() => state.selectedRowKeys.length > 0);
 const start = () => {
   state.loading = true;
@@ -121,6 +137,8 @@
 };
 
 function getPage() {
+  state.loading = true;
+
   post('/api/dict/page', {
     current: currentPage,
     pageSize: pageSize,
@@ -130,6 +148,8 @@
     if (result.code == 200) {
       let data = result.data;
       tableData.value = data;
+
+      state.loading = false;
     } else if (result.code === 401) {
       message.error(result.msg);
       logout()
@@ -215,7 +235,7 @@
     <a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
       :data-source="tableData.records" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
       :pagination="{ total: tableData.total, onChange: onPageChange }"
-      :scroll="{ y: 768, scrollToFirstRowOnChange: true }" :columns="columns">
+      :scroll="{ y: 768, scrollToFirstRowOnChange: true }" :columns="columns" :loading="state.loading">
       <template #bodyCell="{ column, text, record }">
         <template v-if="column.dataIndex === 'oper'">
           <div style="display: flex;justify-content: space-evenly;">

--
Gitblit v1.9.1