From b614fd09a24922e5e97529b2aa7af7580b934a0d Mon Sep 17 00:00:00 2001 From: lion <120344285@qq.com> Date: Thu, 7 May 2026 18:01:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/adminMediaLimits.ts | 16 + src/views/activities/ActivityList.vue | 1330 ++++++++++++----- src/views/activities/Registrations.vue | 60 +- src/views/h5/VerifyLogin.vue | 4 +- src/views/h5/VerifyScan.vue | 32 +- src/views/study-tours/StudyTourList.vue | 13 +- .../ticket-grab/TicketGrabRegistrations.vue | 60 +- src/views/venues/VenueList.vue | 31 +- 8 files changed, 1104 insertions(+), 442 deletions(-) create mode 100644 src/utils/adminMediaLimits.ts diff --git a/src/utils/adminMediaLimits.ts b/src/utils/adminMediaLimits.ts new file mode 100644 index 0000000..e03e532 --- /dev/null +++ b/src/utils/adminMediaLimits.ts @@ -0,0 +1,16 @@ +/** 后台封面、轮播图、预约二维码图等:单张图片大小上限(与 UI 文案一致) */ +export const ADMIN_UPLOAD_IMAGE_MAX_BYTES = 1024 * 1024 + +/** 与上传校验配套,跟在「尺寸推荐」后 */ +export const ADMIN_IMAGE_RECOMMEND_LABEL = + '图片尺寸推荐 1200×600,图片大小不超过 1MB' + +/** @returns 可提示用户的中文错误文案;未超限或非图片返回 null */ +export function adminUploadImageTooLargeMessage(file: File): string | null { + if (!file.type.startsWith('image/')) return null + if (file.size <= ADMIN_UPLOAD_IMAGE_MAX_BYTES) return null + const mb = file.size / (1024 * 1024) + const cur = + mb >= 1 ? `${mb.toFixed(2)}MB` : `${Math.ceil(file.size / 1024)}KB` + return `单张图片不能超过 1MB(当前约 ${cur})` +} diff --git a/src/views/activities/ActivityList.vue b/src/views/activities/ActivityList.vue index 4debac2..2f49d4f 100644 --- a/src/views/activities/ActivityList.vue +++ b/src/views/activities/ActivityList.vue @@ -1,12 +1,13 @@