From e65997d58e56cad774e47e026c0ae7951ff9c4d4 Mon Sep 17 00:00:00 2001 From: shizhongming Date: Tue, 9 Apr 2024 09:52:07 +0800 Subject: [PATCH] =?UTF-8?q?perf(=E7=B3=BB=E7=BB=9F=E6=A8=A1=E5=9D=97-?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E7=AE=A1=E7=90=86):=20=E7=A7=9F=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SmartTable/src/utils/TableCommon.tsx | 32 ++++++++++++++++--- .../tenantManager/SysTenantListView.config.ts | 6 +++- .../tenantManager/SysTenantListView.vue | 5 +++ .../views/tenant/tenantManager/lang/zh_CN.ts | 1 + 4 files changed, 38 insertions(+), 6 deletions(-) diff --git a/src/components/SmartTable/src/utils/TableCommon.tsx b/src/components/SmartTable/src/utils/TableCommon.tsx index 20aa55cbf..3149b3562 100644 --- a/src/components/SmartTable/src/utils/TableCommon.tsx +++ b/src/components/SmartTable/src/utils/TableCommon.tsx @@ -111,22 +111,22 @@ const tableUseYn = (t: Function) => { }; }; -const tableUseYnClass = (): SmartColumn => { +const tableUseYnClass = (field = 'useYn'): SmartColumn => { const { t } = useI18n(); return { title: '{common.table.useYn}', - field: 'useYn', + field, width: 100, formatter: ({ row }) => { - const useYn = row.useYn as boolean | null; + const useYn = row[field] as boolean | null; if (useYn === null) { return ''; } return useYn ? t('common.form.use') : t('common.form.noUse'); }, dynamicClass: ({ row }) => { - const useYn = row.useYn as boolean | null; + const useYn = row[field] as boolean | null; if (useYn === null) { return ''; } @@ -135,4 +135,26 @@ const tableUseYnClass = (): SmartColumn => { }; }; -export { tableUseYn, tableDeleteYn, tableUseYnClass }; +const tableBooleanClass = (field: string): SmartColumn => { + const { t } = useI18n(); + return { + width: 100, + field, + formatter({ row }) { + const value = row[field] as boolean | null; + if (value === null) { + return ''; + } + return value ? t('common.form.yes') : t('common.form.no'); + }, + dynamicClass: ({ row }) => { + const value = row[field] as boolean | null; + if (value === null) { + return ''; + } + return value ? 'text-color--success-bold' : 'text-color--danger-bold'; + }, + }; +}; + +export { tableUseYn, tableDeleteYn, tableUseYnClass, tableBooleanClass }; diff --git a/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.config.ts b/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.config.ts index 0692789b0..68ea1705c 100644 --- a/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.config.ts +++ b/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.config.ts @@ -1,6 +1,6 @@ import type { SmartColumn, SmartSearchFormSchema } from '@/components/SmartTable'; import type { FormSchema } from '@/components/Form'; -import { tableUseYnClass } from '@/components/SmartTable'; +import { tableUseYnClass, tableBooleanClass } from '@/components/SmartTable'; import { Ref, unref } from 'vue'; import { listNoBindPackageByTenantIdApi } from './SysTenantListView.api'; @@ -55,6 +55,10 @@ export const getTableColumns = (): SmartColumn[] => { default: 'table-type', }, }, + { + ...tableBooleanClass('platformYn'), + title: '{system.views.tenant.manager.title.platformYn}', + }, { field: 'contacts', title: '{system.views.tenant.manager.title.contacts}', diff --git a/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.vue b/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.vue index 46a13f6de..02a8ca7fa 100644 --- a/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.vue +++ b/src/modules/smart-system/views/tenant/tenantManager/SysTenantListView.vue @@ -90,6 +90,10 @@ border: true, sortConfig: { remote: true, + defaultSort: { + field: 'seq', + order: 'asc', + }, }, customConfig: { storage: true }, showOverflow: 'tooltip', @@ -146,6 +150,7 @@ column: { columnOrder: true, }, + sizeSetting: true, buttons: [ { code: 'ModalAdd', diff --git a/src/modules/smart-system/views/tenant/tenantManager/lang/zh_CN.ts b/src/modules/smart-system/views/tenant/tenantManager/lang/zh_CN.ts index c8db8379b..8a32039b9 100644 --- a/src/modules/smart-system/views/tenant/tenantManager/lang/zh_CN.ts +++ b/src/modules/smart-system/views/tenant/tenantManager/lang/zh_CN.ts @@ -25,6 +25,7 @@ export default { setPackage: '设置套餐', tabUser: '绑定用户', tabSubscribe: '订阅套餐', + platformYn: '平台管理', user: { username: '用户名', fullName: '姓名',