From 7bcfc0507043dc878c801a259aa7d058f4982551 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期四, 09 一月 2025 00:42:21 +0800
Subject: [PATCH] 工单管理优化

---
 src/views/demo/table/FormTable.vue |   89 ++++++++++----------------------------------
 1 files changed, 20 insertions(+), 69 deletions(-)

diff --git a/src/views/demo/table/FormTable.vue b/src/views/demo/table/FormTable.vue
index beaf151..57d1e5d 100644
--- a/src/views/demo/table/FormTable.vue
+++ b/src/views/demo/table/FormTable.vue
@@ -1,83 +1,34 @@
 <template>
   <BasicTable @register="registerTable">
     <template #form-custom> custom-slot </template>
-    <template #headerTop>
-      <a-alert type="info" show-icon>
-        <template #message>
-          <template v-if="checkedKeys.length > 0">
-            <span>宸查�変腑{{ checkedKeys.length }}鏉¤褰�(鍙法椤�)</span>
-            <a-button type="link" @click="checkedKeys = []" size="small">娓呯┖</a-button>
-          </template>
-          <template v-else>
-            <span>鏈�変腑浠讳綍椤圭洰</span>
-          </template>
-        </template>
-      </a-alert>
-    </template>
     <template #toolbar>
       <a-button type="primary" @click="getFormValues">鑾峰彇琛ㄥ崟鏁版嵁</a-button>
     </template>
   </BasicTable>
 </template>
-<script lang="ts">
-  import { defineComponent, ref } from 'vue';
-  import { BasicTable, useTable } from '/@/components/Table';
+<script lang="ts" setup>
+  import { BasicTable, useTable } from '@/components/Table';
   import { getBasicColumns, getFormConfig } from './tableData';
-  import { Alert } from 'ant-design-vue';
 
-  import { demoListApi } from '/@/api/demo/table';
+  import { demoListApi } from '@/api/demo/table';
 
-  export default defineComponent({
-    components: { BasicTable, AAlert: Alert },
-    setup() {
-      const checkedKeys = ref<Array<string | number>>([]);
-      const [registerTable, { getForm }] = useTable({
-        title: '寮�鍚悳绱㈠尯鍩�',
-        api: demoListApi,
-        columns: getBasicColumns(),
-        useSearchForm: true,
-        formConfig: getFormConfig(),
-        showTableSetting: true,
-        tableSetting: { fullScreen: true },
-        showIndexColumn: false,
-        rowKey: 'id',
-        rowSelection: {
-          type: 'checkbox',
-          selectedRowKeys: checkedKeys,
-          onSelect: onSelect,
-          onSelectAll: onSelectAll,
-        },
-      });
-
-      function getFormValues() {
-        console.log(getForm().getFieldsValue());
-      }
-
-      function onSelect(record, selected) {
-        if (selected) {
-          checkedKeys.value = [...checkedKeys.value, record.id];
-        } else {
-          checkedKeys.value = checkedKeys.value.filter((id) => id !== record.id);
-        }
-      }
-      function onSelectAll(selected, selectedRows, changeRows) {
-        const changeIds = changeRows.map((item) => item.id);
-        if (selected) {
-          checkedKeys.value = [...checkedKeys.value, ...changeIds];
-        } else {
-          checkedKeys.value = checkedKeys.value.filter((id) => {
-            return !changeIds.includes(id);
-          });
-        }
-      }
-
-      return {
-        registerTable,
-        getFormValues,
-        checkedKeys,
-        onSelect,
-        onSelectAll,
-      };
+  const [registerTable, { getForm }] = useTable({
+    title: '寮�鍚悳绱㈠尯鍩�',
+    api: demoListApi,
+    columns: getBasicColumns(),
+    useSearchForm: true,
+    formConfig: getFormConfig(),
+    showTableSetting: true,
+    tableSetting: { fullScreen: true },
+    showIndexColumn: false,
+    rowKey: 'id',
+    rowSelection: {
+      type: 'checkbox',
     },
+    showSelectionBar: true, // 鏄剧ず澶氶�夌姸鎬佹爮
   });
+
+  function getFormValues() {
+    console.log(getForm().getFieldsValue());
+  }
 </script>

--
Gitblit v1.9.3