From 5061eced325f651f03c1978c832fc5f80e52d6bb Mon Sep 17 00:00:00 2001 From: hongawen <83944980@qq.com> Date: Fri, 12 Jun 2026 22:42:23 +0800 Subject: [PATCH] =?UTF-8?q?refactor(projects):=20=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E9=87=8D=E6=96=B0=E8=AE=BE=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env | 4 +- .../components/notification-bell.vue | 49 +- src/layouts/modules/global-header/index.vue | 5 - .../theme-drawer/modules/dark-mode.vue | 20 - src/locales/langs/zh-cn.ts | 4 +- src/theme/settings.ts | 5 +- src/views/_builtin/login/index.vue | 816 +++++++++++++++++- .../_builtin/login/modules/pwd-login.vue | 32 +- .../_builtin/login/modules/reset-pwd.vue | 54 +- 9 files changed, 891 insertions(+), 98 deletions(-) diff --git a/.env b/.env index df518b2..66deca4 100644 --- a/.env +++ b/.env @@ -2,9 +2,9 @@ # 如果部署在子目录下,结尾必须带 "/",例如 "/admin/",不能写成 "/admin" VITE_BASE_URL=/ -VITE_APP_TITLE=研发内部管理系统 +VITE_APP_TITLE=研发管理系统 -VITE_APP_DESC=Frontend application for 灿能研发内部管理系统 +VITE_APP_DESC=Frontend application for 灿能研发管理系统 # 图标名称前缀 VITE_ICON_PREFIX=icon diff --git a/src/layouts/modules/global-header/components/notification-bell.vue b/src/layouts/modules/global-header/components/notification-bell.vue index 26c2bc4..d4ce467 100644 --- a/src/layouts/modules/global-header/components/notification-bell.vue +++ b/src/layouts/modules/global-header/components/notification-bell.vue @@ -341,18 +341,53 @@ onBeforeUnmount(() => { .notification-bell__badge { position: absolute; - top: 4px; - right: 4px; - min-width: 16px; - height: 16px; - padding: 0 4px; + top: 2px; + right: 2px; + min-width: 18px; + height: 18px; + padding: 0 5px; + border: 1px solid #fff; border-radius: 999px; background-color: var(--el-color-danger); color: #fff; - font-size: 10px; - font-weight: 600; + font-size: 11px; + font-weight: 700; line-height: 16px; text-align: center; + animation: notification-badge-pulse 1.6s ease-in-out infinite; +} + +/* 扩散波纹:跟随心跳节奏向外晕开,增强未读提醒的醒目度 */ +.notification-bell__badge::before { + content: ''; + position: absolute; + inset: -1px; + border-radius: 999px; + background-color: var(--el-color-danger); + animation: notification-badge-ping 1.6s ease-out infinite; + z-index: -1; +} + +@keyframes notification-badge-pulse { + 0%, + 100% { + transform: scale(1); + } + 50% { + transform: scale(1.18); + } +} + +@keyframes notification-badge-ping { + 0% { + transform: scale(1); + opacity: 0.6; + } + 70%, + 100% { + transform: scale(1.9); + opacity: 0; + } } .notification-bell__panel { diff --git a/src/layouts/modules/global-header/index.vue b/src/layouts/modules/global-header/index.vue index 071774b..9af0a44 100644 --- a/src/layouts/modules/global-header/index.vue +++ b/src/layouts/modules/global-header/index.vue @@ -41,11 +41,6 @@ const { isFullscreen, toggle } = useFullscreen();
-
diff --git a/src/layouts/modules/theme-drawer/modules/dark-mode.vue b/src/layouts/modules/theme-drawer/modules/dark-mode.vue index 0297546..5bfd14c 100644 --- a/src/layouts/modules/theme-drawer/modules/dark-mode.vue +++ b/src/layouts/modules/theme-drawer/modules/dark-mode.vue @@ -1,6 +1,5 @@ - + diff --git a/src/views/_builtin/login/modules/pwd-login.vue b/src/views/_builtin/login/modules/pwd-login.vue index 3b726aa..0cfa7fe 100644 --- a/src/views/_builtin/login/modules/pwd-login.vue +++ b/src/views/_builtin/login/modules/pwd-login.vue @@ -36,24 +36,38 @@ async function handleSubmit() { diff --git a/src/views/_builtin/login/modules/reset-pwd.vue b/src/views/_builtin/login/modules/reset-pwd.vue index e7dcabf..fdb782d 100644 --- a/src/views/_builtin/login/modules/reset-pwd.vue +++ b/src/views/_builtin/login/modules/reset-pwd.vue @@ -43,38 +43,60 @@ async function handleSubmit() { - +