From bcbb78268d480a91582ea5032bb77305240ccbe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=84=A2=E7=AB=8B=E5=B3=B0?= Date: Fri, 13 Jun 2025 15:16:06 +0800 Subject: [PATCH 1/2] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E9=A1=B6?= =?UTF-8?q?=E9=83=A8=E6=A0=8F=E5=A4=B4=E5=83=8F=E5=B1=95=E5=BC=80=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E4=BF=A1=E6=81=AF=E7=BB=91=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/layouts/basic.vue | 4 ++-- apps/web-antd/src/store/auth.ts | 1 + packages/@core/base/typings/src/basic.d.ts | 4 ++++ packages/stores/src/modules/user.ts | 4 ++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/apps/web-antd/src/layouts/basic.vue b/apps/web-antd/src/layouts/basic.vue index 49641fd1..0dfaa697 100644 --- a/apps/web-antd/src/layouts/basic.vue +++ b/apps/web-antd/src/layouts/basic.vue @@ -138,8 +138,8 @@ watch( :avatar :menus :text="userStore.userInfo?.realName" - description="ann.vben@gmail.com" - tag-text="Pro" + :description="userStore.userInfo?.email" + :tag-text="userStore.userInfo?.username" @logout="handleLogout" /> diff --git a/apps/web-antd/src/store/auth.ts b/apps/web-antd/src/store/auth.ts index 9c819e3c..d208a417 100644 --- a/apps/web-antd/src/store/auth.ts +++ b/apps/web-antd/src/store/auth.ts @@ -118,6 +118,7 @@ export const useAuthStore = defineStore('auth', () => { roles, userId: user.userId, username: user.userName, + email: user.email ?? '', }; userStore.setUserInfo(userInfo); /** diff --git a/packages/@core/base/typings/src/basic.d.ts b/packages/@core/base/typings/src/basic.d.ts index bbe1eb02..75e958dc 100644 --- a/packages/@core/base/typings/src/basic.d.ts +++ b/packages/@core/base/typings/src/basic.d.ts @@ -12,6 +12,10 @@ interface BasicUserInfo { * 头像 */ avatar: string; + /** + * 邮箱 + */ + email: string; /** * 用户权限 */ diff --git a/packages/stores/src/modules/user.ts b/packages/stores/src/modules/user.ts index afc974a2..1a96f1bc 100644 --- a/packages/stores/src/modules/user.ts +++ b/packages/stores/src/modules/user.ts @@ -6,6 +6,10 @@ interface BasicUserInfo { * 头像 */ avatar: string; + /** + * 邮箱 + */ + email: string; /** * 用户权限 */ From 80bf5f22125a4da2b70c715ba7f6969b34f9c303 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=84=A2=E7=AB=8B=E5=B3=B0?= Date: Fri, 13 Jun 2025 18:58:02 +0800 Subject: [PATCH 2/2] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96vxeTable=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0width,minWidth,=E9=BB=98=E8=AE=A4=E6=98=BE=E7=A4=BAboe?= =?UTF-8?q?der,=E7=8A=B6=E6=80=81=E5=B1=85=E4=B8=AD=EF=BC=8C=E4=B8=8B?= =?UTF-8?q?=E6=8B=89=E6=94=AF=E6=8C=81=E9=BB=98=E8=AE=A4label=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=EF=BC=8C=E8=8F=9C=E5=8D=95=E9=85=8D=E7=BD=AE=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E6=9B=B4=E6=8D=A2=E7=BB=9F=E4=B8=80tddesign=E5=9B=BE?= =?UTF-8?q?=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/adapter/vxe-table.ts | 9 +++-- apps/web-antd/src/views/demo/demo/data.ts | 7 +++- .../src/views/monitor/logininfor/data.tsx | 22 +++++++++- .../src/views/monitor/logininfor/index.vue | 1 + .../src/views/monitor/online/index.vue | 1 + .../src/views/monitor/operlog/data.tsx | 15 ++++++- .../src/views/monitor/operlog/index.vue | 1 + .../web-antd/src/views/system/client/data.tsx | 14 ++++++- .../src/views/system/client/index.vue | 1 + apps/web-antd/src/views/system/config/data.ts | 17 ++++++-- .../src/views/system/config/index.vue | 1 + apps/web-antd/src/views/system/dept/data.ts | 11 +++++ apps/web-antd/src/views/system/dept/index.vue | 1 + .../src/views/system/dict/data/data.ts | 29 +++++++++----- .../src/views/system/dict/data/index.vue | 1 + .../src/views/system/dict/type/data.ts | 26 +++++++----- .../src/views/system/dict/type/index.vue | 1 + apps/web-antd/src/views/system/menu/data.tsx | 15 ++++++- apps/web-antd/src/views/system/menu/index.vue | 1 + apps/web-antd/src/views/system/notice/data.ts | 21 ++++++++-- .../src/views/system/notice/index.vue | 1 + .../src/views/system/oss-config/data.tsx | 8 +++- .../src/views/system/oss-config/index.vue | 1 + apps/web-antd/src/views/system/oss/data.tsx | 7 +++- apps/web-antd/src/views/system/oss/index.vue | 1 + apps/web-antd/src/views/system/post/data.ts | 19 ++++++++- apps/web-antd/src/views/system/post/index.vue | 1 + .../src/views/system/role-assign/data.tsx | 7 +++- .../src/views/system/role-assign/index.vue | 1 + apps/web-antd/src/views/system/role/data.tsx | 23 +++++++++-- apps/web-antd/src/views/system/role/index.vue | 1 + .../web-antd/src/views/system/tenant/data.tsx | 8 +++- .../src/views/system/tenant/index.vue | 1 + .../src/views/system/tenantPackage/data.ts | 7 +++- .../src/views/system/tenantPackage/index.vue | 1 + apps/web-antd/src/views/system/user/data.tsx | 40 +++++++++++++------ apps/web-antd/src/views/system/user/index.vue | 1 + apps/web-antd/src/views/tool/gen/data.tsx | 13 +++++- .../src/views/tool/gen/edit-steps/basic.tsx | 4 ++ apps/web-antd/src/views/tool/gen/index.vue | 1 + .../src/views/tool/gen/table-import-modal.vue | 21 ++++++++-- .../src/views/workflow/category/data.ts | 3 ++ .../src/views/workflow/category/index.vue | 1 + .../workflow/components/user-select-modal.vue | 1 + .../src/views/workflow/leave/data.tsx | 8 +++- .../src/views/workflow/leave/index.vue | 1 + .../views/workflow/processDefinition/data.tsx | 7 +++- .../workflow/processDefinition/index.vue | 1 + .../views/workflow/processInstance/data.tsx | 7 +++- .../views/workflow/processInstance/index.vue | 1 + packages/icons/package.json | 4 +- packages/icons/src/iconify-offline/index.ts | 15 +++---- .../src/views/system/menu/modules/form.vue | 2 + 53 files changed, 335 insertions(+), 78 deletions(-) diff --git a/apps/web-antd/src/adapter/vxe-table.ts b/apps/web-antd/src/adapter/vxe-table.ts index 592161af..c8e8e230 100644 --- a/apps/web-antd/src/adapter/vxe-table.ts +++ b/apps/web-antd/src/adapter/vxe-table.ts @@ -12,8 +12,9 @@ setupVbenVxeTable({ configVxeTable: (vxeUI) => { vxeUI.setConfig({ grid: { - align: 'center', - border: false, + align: 'left', + border: true, + headerAlign: 'center', minHeight: 180, formConfig: { // 全局禁用vxe-table的表单配置,使用formOptions @@ -33,9 +34,9 @@ setupVbenVxeTable({ showOverflow: true, pagerConfig: { // 默认条数 - pageSize: 10, + pageSize: 15, // 分页可选条数 - pageSizes: [10, 20, 30, 40, 50], + pageSizes: [15, 30, 50, 100, 200], }, rowConfig: { // 鼠标移入行显示 hover 样式 diff --git a/apps/web-antd/src/views/demo/demo/data.ts b/apps/web-antd/src/views/demo/demo/data.ts index 241d855f..311fda63 100755 --- a/apps/web-antd/src/views/demo/demo/data.ts +++ b/apps/web-antd/src/views/demo/demo/data.ts @@ -25,7 +25,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '主键', field: 'id', diff --git a/apps/web-antd/src/views/monitor/logininfor/data.tsx b/apps/web-antd/src/views/monitor/logininfor/data.tsx index 88825e4e..fb9488de 100644 --- a/apps/web-antd/src/views/monitor/logininfor/data.tsx +++ b/apps/web-antd/src/views/monitor/logininfor/data.tsx @@ -22,6 +22,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_COMMON_STATUS), }, fieldName: 'status', @@ -35,10 +36,17 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '用户账号', field: 'userName', + minWidth: 120, + width: 120, }, { title: '登录平台', @@ -47,11 +55,15 @@ export const columns: VxeGridProps['columns'] = [ { title: 'IP地址', field: 'ipaddr', + align: 'center', + minWidth: 120, + width: 120, }, { title: 'IP地点', field: 'loginLocation', - width: 200, + minWidth: 120, + width: 120, }, { title: '浏览器', @@ -84,6 +96,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '登录结果', field: 'status', + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.status, DictEnum.SYS_COMMON_STATUS); @@ -97,6 +112,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '日期', field: 'loginTime', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/monitor/logininfor/index.vue b/apps/web-antd/src/views/monitor/logininfor/index.vue index aa8a15ab..6cbe89cc 100644 --- a/apps/web-antd/src/views/monitor/logininfor/index.vue +++ b/apps/web-antd/src/views/monitor/logininfor/index.vue @@ -30,6 +30,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/monitor/online/index.vue b/apps/web-antd/src/views/monitor/online/index.vue index b557c8f9..9c6dbcbd 100644 --- a/apps/web-antd/src/views/monitor/online/index.vue +++ b/apps/web-antd/src/views/monitor/online/index.vue @@ -21,6 +21,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/monitor/operlog/data.tsx b/apps/web-antd/src/views/monitor/operlog/data.tsx index d42b3709..ea4e032c 100644 --- a/apps/web-antd/src/views/monitor/operlog/data.tsx +++ b/apps/web-antd/src/views/monitor/operlog/data.tsx @@ -20,6 +20,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_OPER_TYPE), }, fieldName: 'businessType', @@ -33,6 +34,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_COMMON_STATUS), }, fieldName: 'status', @@ -49,11 +51,19 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { field: 'title', title: '系统模块' }, { title: '操作类型', field: 'businessType', + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.businessType, DictEnum.SYS_OPER_TYPE); @@ -66,6 +76,9 @@ export const columns: VxeGridProps['columns'] = [ { field: 'status', title: '操作状态', + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.status, DictEnum.SYS_COMMON_STATUS); diff --git a/apps/web-antd/src/views/monitor/operlog/index.vue b/apps/web-antd/src/views/monitor/operlog/index.vue index c43f02a4..825c8879 100644 --- a/apps/web-antd/src/views/monitor/operlog/index.vue +++ b/apps/web-antd/src/views/monitor/operlog/index.vue @@ -32,6 +32,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/client/data.tsx b/apps/web-antd/src/views/system/client/data.tsx index 1cf85720..58dba279 100644 --- a/apps/web-antd/src/views/system/client/data.tsx +++ b/apps/web-antd/src/views/system/client/data.tsx @@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, fieldName: 'status', @@ -29,7 +30,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '客户端ID', field: 'clientId', @@ -86,6 +92,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '状态', field: 'status', + align: 'center', + minWidth: 100, + width: 100, slots: { default: 'status', }, @@ -137,9 +146,9 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, mode: 'multiple', - optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_GRANT_TYPE), }, fieldName: 'grantTypeList', @@ -149,6 +158,7 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, getPopupContainer, options: getDictOptions(DictEnum.SYS_DEVICE_TYPE), diff --git a/apps/web-antd/src/views/system/client/index.vue b/apps/web-antd/src/views/system/client/index.vue index b86b0bfd..4e75e228 100644 --- a/apps/web-antd/src/views/system/client/index.vue +++ b/apps/web-antd/src/views/system/client/index.vue @@ -28,6 +28,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/config/data.ts b/apps/web-antd/src/views/system/config/data.ts index 0b462e4f..1d15e2a0 100644 --- a/apps/web-antd/src/views/system/config/data.ts +++ b/apps/web-antd/src/views/system/config/data.ts @@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_YES_NO), }, @@ -35,7 +36,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '参数名称', field: 'configName', @@ -51,7 +57,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '系统内置', field: 'configType', - width: 120, + align: 'center', + minWidth: 90, + width: 90, slots: { default: ({ row }) => { return renderDict(row.configType, DictEnum.SYS_YES_NO); @@ -63,8 +71,11 @@ export const columns: VxeGridProps['columns'] = [ field: 'remark', }, { - title: '创建时间', field: 'createTime', + title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/system/config/index.vue b/apps/web-antd/src/views/system/config/index.vue index ceb11764..a66cf461 100644 --- a/apps/web-antd/src/views/system/config/index.vue +++ b/apps/web-antd/src/views/system/config/index.vue @@ -26,6 +26,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/dept/data.ts b/apps/web-antd/src/views/system/dept/data.ts index 26132ba8..cfac311f 100644 --- a/apps/web-antd/src/views/system/dept/data.ts +++ b/apps/web-antd/src/views/system/dept/data.ts @@ -17,6 +17,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, @@ -38,10 +39,16 @@ export const columns: VxeGridProps['columns'] = [ { field: 'orderNum', title: '排序', + align: 'center', + minWidth: 100, + width: 100, }, { field: 'status', title: '状态', + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.status, DictEnum.SYS_NORMAL_DISABLE); @@ -51,6 +58,9 @@ export const columns: VxeGridProps['columns'] = [ { field: 'createTime', title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', @@ -104,6 +114,7 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', // 选中了就只能修改 不能重置为无负责人 allowClear: false, getPopupContainer, diff --git a/apps/web-antd/src/views/system/dept/index.vue b/apps/web-antd/src/views/system/dept/index.vue index acc16005..7dca48fb 100644 --- a/apps/web-antd/src/views/system/dept/index.vue +++ b/apps/web-antd/src/views/system/dept/index.vue @@ -22,6 +22,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/dict/data/data.ts b/apps/web-antd/src/views/system/dict/data/data.ts index 087e96b2..747f2aa3 100644 --- a/apps/web-antd/src/views/system/dict/data/data.ts +++ b/apps/web-antd/src/views/system/dict/data/data.ts @@ -13,7 +13,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '字典标签', field: 'cssClass', @@ -31,15 +36,21 @@ export const columns: VxeGridProps['columns'] = [ { title: '字典排序', field: 'dictSort', + align: 'center', + minWidth: 100, + width: 100, }, - { - title: '备注', - field: 'remark', - }, - { - title: '创建时间', - field: 'createTime', - }, + // { + // title: '备注', + // field: 'remark', + // }, + // { + // field: 'createTime', + // title: '创建时间', + // align: 'center', + // minWidth: 160, + // width: 160, + // }, { field: 'action', fixed: 'right', diff --git a/apps/web-antd/src/views/system/dict/data/index.vue b/apps/web-antd/src/views/system/dict/data/index.vue index 6bfbccdf..02ae3a98 100644 --- a/apps/web-antd/src/views/system/dict/data/index.vue +++ b/apps/web-antd/src/views/system/dict/data/index.vue @@ -31,6 +31,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/dict/type/data.ts b/apps/web-antd/src/views/system/dict/type/data.ts index cfd584a7..b9c7273d 100644 --- a/apps/web-antd/src/views/system/dict/type/data.ts +++ b/apps/web-antd/src/views/system/dict/type/data.ts @@ -17,7 +17,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '字典名称', field: 'dictName', @@ -26,14 +31,17 @@ export const columns: VxeGridProps['columns'] = [ title: '字典类型', field: 'dictType', }, - { - title: '备注', - field: 'remark', - }, - { - title: '创建时间', - field: 'createTime', - }, + // { + // title: '备注', + // field: 'remark', + // }, + // { + // field: 'createTime', + // title: '创建时间', + // align: 'center', + // minWidth: 160, + // width: 160, + // }, { field: 'action', fixed: 'right', diff --git a/apps/web-antd/src/views/system/dict/type/index.vue b/apps/web-antd/src/views/system/dict/type/index.vue index 927cf262..97173dbb 100644 --- a/apps/web-antd/src/views/system/dict/type/index.vue +++ b/apps/web-antd/src/views/system/dict/type/index.vue @@ -29,6 +29,7 @@ const formOptions: VbenFormProps = { labelWidth: 70, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/menu/data.tsx b/apps/web-antd/src/views/system/menu/data.tsx index d209ac2e..6decde78 100644 --- a/apps/web-antd/src/views/system/menu/data.tsx +++ b/apps/web-antd/src/views/system/menu/data.tsx @@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, @@ -30,6 +31,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_SHOW_HIDE), }, @@ -86,8 +88,10 @@ export const columns: VxeGridProps['columns'] = [ }, { title: '排序', + align: 'center', + minWidth: 100, + width: 100, field: 'orderNum', - width: 120, }, { title: '组件类型', @@ -119,6 +123,8 @@ export const columns: VxeGridProps['columns'] = [ { title: '状态', field: 'status', + align: 'center', + minWidth: 100, width: 100, slots: { default: ({ row }) => { @@ -129,6 +135,8 @@ export const columns: VxeGridProps['columns'] = [ { title: '显示', field: 'visible', + align: 'center', + minWidth: 100, width: 100, slots: { default: ({ row }) => { @@ -137,8 +145,11 @@ export const columns: VxeGridProps['columns'] = [ }, }, { - title: '创建时间', field: 'createTime', + title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/system/menu/index.vue b/apps/web-antd/src/views/system/menu/index.vue index 194290ee..eb6859b9 100644 --- a/apps/web-antd/src/views/system/menu/index.vue +++ b/apps/web-antd/src/views/system/menu/index.vue @@ -29,6 +29,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/notice/data.ts b/apps/web-antd/src/views/system/notice/data.ts index 8e052c19..5c25c942 100644 --- a/apps/web-antd/src/views/system/notice/data.ts +++ b/apps/web-antd/src/views/system/notice/data.ts @@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_NOTICE_TYPE), }, @@ -30,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '公告标题', field: 'noticeTitle', @@ -38,7 +44,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '公告类型', field: 'noticeType', - width: 120, + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.noticeType, DictEnum.SYS_NOTICE_TYPE); @@ -48,7 +56,9 @@ export const columns: VxeGridProps['columns'] = [ { title: '状态', field: 'status', - width: 120, + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.status, DictEnum.SYS_NOTICE_STATUS); @@ -61,8 +71,11 @@ export const columns: VxeGridProps['columns'] = [ width: 150, }, { - title: '创建时间', field: 'createTime', + title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/system/notice/index.vue b/apps/web-antd/src/views/system/notice/index.vue index dd44356c..5614b776 100644 --- a/apps/web-antd/src/views/system/notice/index.vue +++ b/apps/web-antd/src/views/system/notice/index.vue @@ -20,6 +20,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/oss-config/data.tsx b/apps/web-antd/src/views/system/oss-config/data.tsx index 68701fc1..d9172410 100644 --- a/apps/web-antd/src/views/system/oss-config/data.tsx +++ b/apps/web-antd/src/views/system/oss-config/data.tsx @@ -28,6 +28,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: [ { label: '是', value: '0' }, { label: '否', value: '1' }, @@ -39,7 +40,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '配置名称', field: 'configKey', diff --git a/apps/web-antd/src/views/system/oss-config/index.vue b/apps/web-antd/src/views/system/oss-config/index.vue index 48f6a5bc..416d326d 100644 --- a/apps/web-antd/src/views/system/oss-config/index.vue +++ b/apps/web-antd/src/views/system/oss-config/index.vue @@ -27,6 +27,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', diff --git a/apps/web-antd/src/views/system/oss/data.tsx b/apps/web-antd/src/views/system/oss/data.tsx index 8184c4f1..1cc8eae1 100644 --- a/apps/web-antd/src/views/system/oss/data.tsx +++ b/apps/web-antd/src/views/system/oss/data.tsx @@ -30,7 +30,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '文件名', field: 'fileName', diff --git a/apps/web-antd/src/views/system/oss/index.vue b/apps/web-antd/src/views/system/oss/index.vue index 89bf5bf9..d7560233 100644 --- a/apps/web-antd/src/views/system/oss/index.vue +++ b/apps/web-antd/src/views/system/oss/index.vue @@ -44,6 +44,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/post/data.ts b/apps/web-antd/src/views/system/post/data.ts index e8595553..bc794b05 100644 --- a/apps/web-antd/src/views/system/post/data.ts +++ b/apps/web-antd/src/views/system/post/data.ts @@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, @@ -30,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '岗位编码', field: 'postCode', @@ -45,11 +51,17 @@ export const columns: VxeGridProps['columns'] = [ }, { title: '排序', + align: 'center', + minWidth: 100, + width: 100, field: 'postSort', }, { title: '状态', field: 'status', + align: 'center', + minWidth: 100, + width: 100, slots: { default: ({ row }) => { return renderDict(row.status, DictEnum.SYS_NORMAL_DISABLE); @@ -57,8 +69,11 @@ export const columns: VxeGridProps['columns'] = [ }, }, { - title: '创建时间', field: 'createTime', + title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/system/post/index.vue b/apps/web-antd/src/views/system/post/index.vue index 9adf49b4..7ac786af 100644 --- a/apps/web-antd/src/views/system/post/index.vue +++ b/apps/web-antd/src/views/system/post/index.vue @@ -26,6 +26,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/role-assign/data.tsx b/apps/web-antd/src/views/system/role-assign/data.tsx index a26bd164..df8c6bd8 100644 --- a/apps/web-antd/src/views/system/role-assign/data.tsx +++ b/apps/web-antd/src/views/system/role-assign/data.tsx @@ -15,7 +15,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '用户账号', field: 'userName', diff --git a/apps/web-antd/src/views/system/role-assign/index.vue b/apps/web-antd/src/views/system/role-assign/index.vue index 57965ee1..6f715362 100644 --- a/apps/web-antd/src/views/system/role-assign/index.vue +++ b/apps/web-antd/src/views/system/role-assign/index.vue @@ -29,6 +29,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/role/data.tsx b/apps/web-antd/src/views/system/role/data.tsx index 4fe79453..758c857e 100644 --- a/apps/web-antd/src/views/system/role/data.tsx +++ b/apps/web-antd/src/views/system/role/data.tsx @@ -34,6 +34,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, fieldName: 'status', @@ -47,7 +48,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '角色名称', field: 'roleName', @@ -78,16 +84,25 @@ export const columns: VxeGridProps['columns'] = [ }, { title: '排序', + align: 'center', + minWidth: 100, + width: 100, field: 'roleSort', }, { - title: '状态', field: 'status', + title: '状态', slots: { default: 'status' }, + align: 'center', + minWidth: 100, + width: 100, }, { - title: '创建时间', field: 'createTime', + title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', @@ -131,6 +146,7 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), getPopupContainer, @@ -204,6 +220,7 @@ export const authModalSchemas: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, getPopupContainer, options: authScopeOptions, diff --git a/apps/web-antd/src/views/system/role/index.vue b/apps/web-antd/src/views/system/role/index.vue index 1df682c2..8cc3b647 100644 --- a/apps/web-antd/src/views/system/role/index.vue +++ b/apps/web-antd/src/views/system/role/index.vue @@ -39,6 +39,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/tenant/data.tsx b/apps/web-antd/src/views/system/tenant/data.tsx index 69af062b..ea686c14 100644 --- a/apps/web-antd/src/views/system/tenant/data.tsx +++ b/apps/web-antd/src/views/system/tenant/data.tsx @@ -31,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '租户编号', field: 'tenantId', @@ -177,6 +182,7 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, }, fieldName: 'packageId', diff --git a/apps/web-antd/src/views/system/tenant/index.vue b/apps/web-antd/src/views/system/tenant/index.vue index d0d3bbd7..49294554 100644 --- a/apps/web-antd/src/views/system/tenant/index.vue +++ b/apps/web-antd/src/views/system/tenant/index.vue @@ -33,6 +33,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/tenantPackage/data.ts b/apps/web-antd/src/views/system/tenantPackage/data.ts index a80de6a5..795ef92e 100644 --- a/apps/web-antd/src/views/system/tenantPackage/data.ts +++ b/apps/web-antd/src/views/system/tenantPackage/data.ts @@ -10,7 +10,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '套餐名称', field: 'packageName', diff --git a/apps/web-antd/src/views/system/tenantPackage/index.vue b/apps/web-antd/src/views/system/tenantPackage/index.vue index 84ddbdc8..7011ddb6 100644 --- a/apps/web-antd/src/views/system/tenantPackage/index.vue +++ b/apps/web-antd/src/views/system/tenantPackage/index.vue @@ -30,6 +30,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/system/user/data.tsx b/apps/web-antd/src/views/system/user/data.tsx index a84e0792..4b00a527 100644 --- a/apps/web-antd/src/views/system/user/data.tsx +++ b/apps/web-antd/src/views/system/user/data.tsx @@ -26,6 +26,7 @@ export const querySchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE), }, @@ -40,27 +41,34 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, { - field: 'userName', - title: '名称', - minWidth: 80, - }, - { - field: 'nickName', - title: '昵称', - minWidth: 130, + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, }, { field: 'avatar', title: '头像', slots: { default: 'avatar' }, + align: 'center', minWidth: 80, + width: 80, + }, + { + field: 'userName', + title: '用户账号', + minWidth: 140, + }, + { + field: 'nickName', + title: '用户昵称', + minWidth: 140, }, { field: 'deptName', - title: '部门', - minWidth: 120, + title: '所属部门', + minWidth: 140, }, { field: 'phonenumber', @@ -68,18 +76,24 @@ export const columns: VxeGridProps['columns'] = [ formatter({ cellValue }) { return cellValue || '暂无'; }, + align: 'center', + width: 120, minWidth: 120, }, { field: 'status', title: '状态', slots: { default: 'status' }, + align: 'center', minWidth: 100, + width: 100, }, { field: 'createTime', title: '创建时间', - minWidth: 150, + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', @@ -177,9 +191,9 @@ export const drawerSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, mode: 'multiple', - optionFilterProp: 'label', optionLabelProp: 'label', placeholder: '请先选择部门', }, diff --git a/apps/web-antd/src/views/system/user/index.vue b/apps/web-antd/src/views/system/user/index.vue index 9eddd9c4..8749fb4a 100644 --- a/apps/web-antd/src/views/system/user/index.vue +++ b/apps/web-antd/src/views/system/user/index.vue @@ -59,6 +59,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', diff --git a/apps/web-antd/src/views/tool/gen/data.tsx b/apps/web-antd/src/views/tool/gen/data.tsx index e8de2864..4cb8ef48 100644 --- a/apps/web-antd/src/views/tool/gen/data.tsx +++ b/apps/web-antd/src/views/tool/gen/data.tsx @@ -29,7 +29,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { field: 'tableName', title: '表名称', @@ -45,10 +50,16 @@ export const columns: VxeGridProps['columns'] = [ { field: 'createTime', title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'updateTime', title: '更新时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/tool/gen/edit-steps/basic.tsx b/apps/web-antd/src/views/tool/gen/edit-steps/basic.tsx index 9b1a86c2..58ccbe85 100644 --- a/apps/web-antd/src/views/tool/gen/edit-steps/basic.tsx +++ b/apps/web-antd/src/views/tool/gen/edit-steps/basic.tsx @@ -50,6 +50,7 @@ export const formSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, getPopupContainer, options: [ @@ -65,6 +66,7 @@ export const formSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', getPopupContainer, }, dependencies: { @@ -79,6 +81,7 @@ export const formSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, }, dependencies: { @@ -93,6 +96,7 @@ export const formSchema: FormSchemaGetter = () => [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: false, }, dependencies: { diff --git a/apps/web-antd/src/views/tool/gen/index.vue b/apps/web-antd/src/views/tool/gen/index.vue index a6dec36d..385ba4f6 100644 --- a/apps/web-antd/src/views/tool/gen/index.vue +++ b/apps/web-antd/src/views/tool/gen/index.vue @@ -34,6 +34,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', diff --git a/apps/web-antd/src/views/tool/gen/table-import-modal.vue b/apps/web-antd/src/views/tool/gen/table-import-modal.vue index 969ba6df..05b07fe6 100644 --- a/apps/web-antd/src/views/tool/gen/table-import-modal.vue +++ b/apps/web-antd/src/views/tool/gen/table-import-modal.vue @@ -37,7 +37,7 @@ const formOptions: VbenFormProps = { labelWidth: 60, }, showCollapseButton: false, - wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3', + wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-4', }; const gridOptions: VxeGridProps = { @@ -48,8 +48,10 @@ const gridOptions: VxeGridProps = { }, columns: [ { + align: 'center', type: 'checkbox', - width: 60, + width: 45, + resizable: false, }, { title: '表名称', @@ -64,16 +66,27 @@ const gridOptions: VxeGridProps = { { title: '创建时间', field: 'createTime', + align: 'center', + minWidth: 160, + width: 160, }, { title: '更新时间', field: 'updateTime', + align: 'center', + minWidth: 160, + width: 160, }, ], keepSource: true, size: 'small', minHeight: 400, - pagerConfig: {}, + pagerConfig: { + // 默认条数 + pageSize: 10, + // 分页可选条数 + pageSizes: [10, 20, 30, 40, 50], + }, proxyConfig: { ajax: { query: async ({ page }, formValues = {}) => { @@ -137,7 +150,7 @@ async function handleSubmit() { diff --git a/apps/web-antd/src/views/workflow/category/data.ts b/apps/web-antd/src/views/workflow/category/data.ts index 9dfe1940..7bf73560 100644 --- a/apps/web-antd/src/views/workflow/category/data.ts +++ b/apps/web-antd/src/views/workflow/category/data.ts @@ -27,6 +27,9 @@ export const columns: VxeGridProps['columns'] = [ { field: 'createTime', title: '创建时间', + align: 'center', + minWidth: 160, + width: 160, }, { field: 'action', diff --git a/apps/web-antd/src/views/workflow/category/index.vue b/apps/web-antd/src/views/workflow/category/index.vue index 5131775d..04e539c3 100644 --- a/apps/web-antd/src/views/workflow/category/index.vue +++ b/apps/web-antd/src/views/workflow/category/index.vue @@ -19,6 +19,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/workflow/components/user-select-modal.vue b/apps/web-antd/src/views/workflow/components/user-select-modal.vue index 4789f6c4..c1bb80e0 100644 --- a/apps/web-antd/src/views/workflow/components/user-select-modal.vue +++ b/apps/web-antd/src/views/workflow/components/user-select-modal.vue @@ -76,6 +76,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-2', diff --git a/apps/web-antd/src/views/workflow/leave/data.tsx b/apps/web-antd/src/views/workflow/leave/data.tsx index 7eb3441b..0e3e1315 100644 --- a/apps/web-antd/src/views/workflow/leave/data.tsx +++ b/apps/web-antd/src/views/workflow/leave/data.tsx @@ -48,7 +48,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { title: '请假类型', field: 'leaveType', @@ -129,6 +134,7 @@ export const modalSchema: (isEdit: boolean) => VbenFormSchema[] = ( fieldName: 'leaveType', component: 'Select', componentProps: { + optionFilterProp: 'label', options: leaveTypeOptions, getPopupContainer, }, diff --git a/apps/web-antd/src/views/workflow/leave/index.vue b/apps/web-antd/src/views/workflow/leave/index.vue index 8e46ab00..7738c0db 100644 --- a/apps/web-antd/src/views/workflow/leave/index.vue +++ b/apps/web-antd/src/views/workflow/leave/index.vue @@ -25,6 +25,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, schema: querySchema(), diff --git a/apps/web-antd/src/views/workflow/processDefinition/data.tsx b/apps/web-antd/src/views/workflow/processDefinition/data.tsx index dafc2e1a..b89918bb 100644 --- a/apps/web-antd/src/views/workflow/processDefinition/data.tsx +++ b/apps/web-antd/src/views/workflow/processDefinition/data.tsx @@ -19,7 +19,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { field: 'flowName', title: '流程名称', diff --git a/apps/web-antd/src/views/workflow/processDefinition/index.vue b/apps/web-antd/src/views/workflow/processDefinition/index.vue index d924f148..08022f37 100644 --- a/apps/web-antd/src/views/workflow/processDefinition/index.vue +++ b/apps/web-antd/src/views/workflow/processDefinition/index.vue @@ -49,6 +49,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', diff --git a/apps/web-antd/src/views/workflow/processInstance/data.tsx b/apps/web-antd/src/views/workflow/processInstance/data.tsx index 6e7e711d..3238f4fb 100644 --- a/apps/web-antd/src/views/workflow/processInstance/data.tsx +++ b/apps/web-antd/src/views/workflow/processInstance/data.tsx @@ -27,7 +27,12 @@ export const querySchema: FormSchemaGetter = () => [ ]; export const columns: VxeGridProps['columns'] = [ - { type: 'checkbox', width: 60 }, + { + align: 'center', + type: 'checkbox', + width: 45, + resizable: false, + }, { field: 'flowName', title: '流程名称', diff --git a/apps/web-antd/src/views/workflow/processInstance/index.vue b/apps/web-antd/src/views/workflow/processInstance/index.vue index 653dca5e..14dbc087 100644 --- a/apps/web-antd/src/views/workflow/processInstance/index.vue +++ b/apps/web-antd/src/views/workflow/processInstance/index.vue @@ -36,6 +36,7 @@ const formOptions: VbenFormProps = { labelWidth: 80, componentProps: { allowClear: true, + showSearch: true, }, }, wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', diff --git a/packages/icons/package.json b/packages/icons/package.json index 7d8feeee..086f8086 100644 --- a/packages/icons/package.json +++ b/packages/icons/package.json @@ -55,6 +55,8 @@ "@iconify/icons-tabler": "^1.2.95", "@iconify/icons-uiw": "^1.2.6", "@iconify/icons-vscode-icons": "^1.2.29", - "@iconify/icons-wpf": "^1.2.3" + "@iconify/icons-wpf": "^1.2.3", + "@iconify/icons-tdesign": "^1.2.0", + "@iconify/json": "^2.2.310" } } diff --git a/packages/icons/src/iconify-offline/index.ts b/packages/icons/src/iconify-offline/index.ts index 6e2e19e4..eb462865 100644 --- a/packages/icons/src/iconify-offline/index.ts +++ b/packages/icons/src/iconify-offline/index.ts @@ -11,7 +11,6 @@ import windowsIcon from '@iconify/icons-devicon/windows8'; import alipayIcon from '@iconify/icons-fa-brands/alipay'; import androidIcon from '@iconify/icons-flat-color-icons/android-os'; import comandLine from '@iconify/icons-flat-color-icons/command-line'; -import folderIcon from '@iconify/icons-flat-color-icons/folder'; import defaultOsIcon from '@iconify/icons-ic/outline-computer'; import memoryIcon from '@iconify/icons-la/memory'; import chromeIcon from '@iconify/icons-logos/chrome'; @@ -23,8 +22,6 @@ import redisIcon from '@iconify/icons-logos/redis'; import safariIcon from '@iconify/icons-logos/safari'; import vueIcon from '@iconify/icons-logos/vue'; import iphoneIcon from '@iconify/icons-majesticons/iphone-x-apps-line'; -import menuIcon from '@iconify/icons-material-symbols/menu'; -import okButtonIcon from '@iconify/icons-mdi/button-pointer'; import micromessengerIcon from '@iconify/icons-mdi/wechat'; import defaultBrowserIcon from '@iconify/icons-ph/browser-duotone'; import baiduIcon from '@iconify/icons-ri/baidu-fill'; @@ -36,6 +33,9 @@ import qqIcon from '@iconify/icons-simple-icons/tencentqq'; import javaIcon from '@iconify/icons-skill-icons/java-light'; import tsIcon from '@iconify/icons-skill-icons/typescript'; import xmlIcon from '@iconify/icons-tabler/file-type-xml'; +import okButtonIcon from '@iconify/icons-tdesign/button'; +import folderIcon from '@iconify/icons-tdesign/folder'; +import menuIcon from '@iconify/icons-tdesign/menu'; import githubOAuthIcon from '@iconify/icons-uiw/github'; import excelIcon from '@iconify/icons-vscode-icons/file-type-excel'; import osxIcon from '@iconify/icons-wpf/macos'; @@ -154,17 +154,14 @@ export const DefaultBrowserIcon = createIconifyOfflineIcon( // 菜单类型 目录/按钮/菜单 export const FolderIcon = createIconifyOfflineIcon( - 'flat-color-icons:folder', + 'tdesign:folder', folderIcon, ); export const OkButtonIcon = createIconifyOfflineIcon( - 'mdi:button-pointer', + 'tdesign:button', okButtonIcon, ); -export const MenuIcon = createIconifyOfflineIcon( - 'material-symbols:menu', - menuIcon, -); +export const MenuIcon = createIconifyOfflineIcon('tdesign:menu', menuIcon); export const JavaIcon = createIconifyOfflineIcon( 'skill-icons:java-light', diff --git a/playground/src/views/system/menu/modules/form.vue b/playground/src/views/system/menu/modules/form.vue index 6701a2e5..2a970a0b 100644 --- a/playground/src/views/system/menu/modules/form.vue +++ b/playground/src/views/system/menu/modules/form.vue @@ -268,6 +268,7 @@ const schema: VbenFormSchema[] = [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: true, class: 'w-full', options: [ @@ -305,6 +306,7 @@ const schema: VbenFormSchema[] = [ { component: 'Select', componentProps: { + optionFilterProp: 'label', allowClear: true, class: 'w-full', options: SystemMenuApi.BadgeVariants.map((v) => ({