From f9acfbe9653409113ee048c7df9ecefe07056c14 Mon Sep 17 00:00:00 2001 From: bootx Date: Sat, 13 Jun 2026 10:37:46 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=97=A5=E6=9C=9F=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=9B=BD=E9=99=85=E5=8C=96=20-=20formatDate/formatDateTime=20?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=20YYYY-MM-DD=20HH:mm:ss=20=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E5=A4=8D7=E4=B8=AA=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E9=A1=B5=20UTC=20=E5=8E=9F=E5=A7=8B=E6=97=B6=E9=97=B4=E4=B8=B2?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=EF=BC=8CAntdDemo=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=97=A5=E6=9C=9F=E6=97=B6=E9=97=B4=E6=BC=94=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/daxpay-admin/.env.development | 2 +- apps/daxpay-admin/src/bootstrap.ts | 14 +++- .../src/components/query/QueryItem.vue | 8 +- .../src/locales/langs/en-US/demos/antd.json | 10 ++- .../src/locales/langs/zh-CN/demos/antd.json | 10 ++- apps/daxpay-admin/src/preferences.ts | 2 +- .../src/views/demos/antd/AntdDemo.vue | 76 +++++++++++++++++-- .../src/views/iam/perm/role/RoleList.vue | 2 +- .../src/views/iam/user/UserList.vue | 2 +- .../views/iam/user/components/UserInfo.vue | 5 +- .../src/views/payment/isv/info/IsvList.vue | 2 +- .../views/payment/isv/user/IsvUserList.vue | 2 +- .../payment/merchant/info/MerchantList.vue | 2 +- .../merchant/user/MerchantUserList.vue | 2 +- .../merchant/user/info/MerchantUserInfo.vue | 5 +- .../risk/model/instance/ModelInstanceList.vue | 2 +- .../views/system/basic/dict/DictItemList.vue | 2 +- .../src/views/system/basic/dict/DictList.vue | 2 +- .../file/platform/PlatformFileDetail.vue | 3 +- .../system/file/platform/PlatformFileList.vue | 2 +- .../views/system/log/login/LoginLogInfo.vue | 3 +- .../views/system/log/login/LoginLogList.vue | 2 +- .../system/log/operate/OperateLogInfo.vue | 3 +- .../system/log/operate/OperateLogList.vue | 2 +- .../system/monitor/online/OnlineUserList.vue | 7 +- apps/daxpay-admin/vite.config.ts | 2 +- packages/@core/base/shared/src/utils/date.ts | 22 +++++- vitest.config.ts | 2 + 28 files changed, 156 insertions(+), 42 deletions(-) diff --git a/apps/daxpay-admin/.env.development b/apps/daxpay-admin/.env.development index f2b444287..07ece9912 100644 --- a/apps/daxpay-admin/.env.development +++ b/apps/daxpay-admin/.env.development @@ -1,5 +1,5 @@ # 端口号 -VITE_PORT=5999 +VITE_PORT=6999 VITE_BASE=/ diff --git a/apps/daxpay-admin/src/bootstrap.ts b/apps/daxpay-admin/src/bootstrap.ts index 7ad9c087e..c8453ddc9 100644 --- a/apps/daxpay-admin/src/bootstrap.ts +++ b/apps/daxpay-admin/src/bootstrap.ts @@ -5,8 +5,8 @@ import { preferences } from '@vben/preferences'; import { initStores } from '@vben/stores'; import '@vben/styles'; import '@vben/styles/antdv-next'; - import { useTitle } from '@vueuse/core'; +import { formatDate, formatDateTime } from '@vben/utils'; import Antd from 'antdv-next'; import VxeUI from 'vxe-pc-ui'; import VxeUITable from 'vxe-table'; @@ -40,6 +40,18 @@ async function bootstrap(namespace: string) { // 注册 VxeUI app.use(VxeUI); + // 注册全局 vxe-table 日期格式化器, 使 formatter="formatDateTime" 生效 + VxeUI.formats.add('formatDate', { + tableCellFormatMethod({ cellValue }) { + return formatDate(cellValue); + }, + }); + VxeUI.formats.add('formatDateTime', { + tableCellFormatMethod({ cellValue }) { + return formatDateTime(cellValue); + }, + }); + // 注册v-loading指令 registerLoadingDirective(app, { loading: 'loading', // 在这里可以自定义指令名称,也可以明确提供false表示不注册这个指令 diff --git a/apps/daxpay-admin/src/components/query/QueryItem.vue b/apps/daxpay-admin/src/components/query/QueryItem.vue index 1924ecc60..12e9ebd9d 100644 --- a/apps/daxpay-admin/src/components/query/QueryItem.vue +++ b/apps/daxpay-admin/src/components/query/QueryItem.vue @@ -4,6 +4,7 @@ import { computed } from 'vue'; import { $t } from '@vben/locales'; + import { formatDate } from '@vben/utils'; import { BOOLEAN, DATE, DATE_RANGE, DATE_TIME, DATE_TIME_RANGE, LIST, NUMBER, STRING, TIME } from './query'; @@ -130,13 +131,6 @@ }, ]; - function formatDate(date: Date): string { - const year = date.getFullYear(); - const month = String(date.getMonth() + 1).padStart(2, '0'); - const day = String(date.getDate()).padStart(2, '0'); - return `${year}-${month}-${day}`; - } - function query() { emits('enterQuery'); } diff --git a/apps/daxpay-admin/src/locales/langs/en-US/demos/antd.json b/apps/daxpay-admin/src/locales/langs/en-US/demos/antd.json index a73ff268c..2904bf866 100644 --- a/apps/daxpay-admin/src/locales/langs/en-US/demos/antd.json +++ b/apps/daxpay-admin/src/locales/langs/en-US/demos/antd.json @@ -1,7 +1,6 @@ { "title": "Antd Next Demo", "description": "Support multi-language, theme switching and more", - "button": "Button", "message": "Message", "notification": "Notification", "info": "Info", @@ -13,5 +12,12 @@ "confirmContent": "This is a confirm dialog triggered by useMessage.", "confirmed": "Confirmed", "dialog": "Dialog", - "openConfirm": "Open Confirm Dialog" + "openConfirm": "Open Confirm Dialog", + "currentTime": "Current Time", + "formatDateDemo": "Date Formatting", + "formatDateTimeDemo": "Date Time Formatting", + "inputDemo": "Time Input (with Echo)", + "datePicker": "Date Picker", + "timePicker": "Time Picker", + "dateTimePicker": "Date Time Picker" } diff --git a/apps/daxpay-admin/src/locales/langs/zh-CN/demos/antd.json b/apps/daxpay-admin/src/locales/langs/zh-CN/demos/antd.json index 5003e9e26..c343025ff 100644 --- a/apps/daxpay-admin/src/locales/langs/zh-CN/demos/antd.json +++ b/apps/daxpay-admin/src/locales/langs/zh-CN/demos/antd.json @@ -1,7 +1,6 @@ { "title": "Antd Next演示", "description": "支持多语言,主题功能集成切换等", - "button": "按钮", "message": "Message", "notification": "Notification", "info": "信息", @@ -13,5 +12,12 @@ "confirmContent": "这是一个通过 useMessage 调起的确认框示例。", "confirmed": "已确认", "dialog": "Dialog", - "openConfirm": "打开确认框" + "openConfirm": "打开确认框", + "currentTime": "当前时间", + "formatDateDemo": "日期格式化", + "formatDateTimeDemo": "日期时间格式化", + "inputDemo": "时间输入组件(含回显)", + "datePicker": "日期选择", + "timePicker": "时间选择", + "dateTimePicker": "日期时间选择" } diff --git a/apps/daxpay-admin/src/preferences.ts b/apps/daxpay-admin/src/preferences.ts index 3e2e38d30..8d2e25c73 100644 --- a/apps/daxpay-admin/src/preferences.ts +++ b/apps/daxpay-admin/src/preferences.ts @@ -40,6 +40,6 @@ export const overridesPreferences = defineOverridesPreferences({ colorPrimary: 'hsl(212 100% 45%)', }, widget: { - timezone: false, + timezone: true, }, }); diff --git a/apps/daxpay-admin/src/views/demos/antd/AntdDemo.vue b/apps/daxpay-admin/src/views/demos/antd/AntdDemo.vue index b107cfd37..73bcac110 100644 --- a/apps/daxpay-admin/src/views/demos/antd/AntdDemo.vue +++ b/apps/daxpay-admin/src/views/demos/antd/AntdDemo.vue @@ -1,6 +1,9 @@