From c6e27f1af4bb68c6f6d7e2c45a633c6e5df32b23 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Tue, 3 Feb 2026 14:43:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E7=AD=89=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 + public/favicon.ico | Bin 5663 -> 2369 bytes src/assets/logo/logo.png | Bin 5663 -> 2369 bytes src/assets/styles/sidebar.scss | 21 +- src/assets/styles/variables.module.scss | 55 +- src/layout/components/Navbar.vue | 543 ++++++++++---- src/layout/components/Sidebar/index.vue | 19 +- src/main.js | 18 +- src/store/modules/settings.js | 2 +- src/views/login.vue | 721 ++++++++++++++----- src/views/showComponents/showTable/index.vue | 6 +- 11 files changed, 1014 insertions(+), 373 deletions(-) diff --git a/package.json b/package.json index 3a03e5b..67c2324 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,8 @@ "vuedraggable": "4.1.0" }, "devDependencies": { + "@vicons/ionicons5": "^0.13.0", + "@vicons/utils": "^0.1.4", "@vitejs/plugin-vue": "5.2.4", "less": "^4.5.1", "mockjs": "^1.1.0", diff --git a/public/favicon.ico b/public/favicon.ico index e26376026420542212ed58d90d0ed34f554fa4ae..da575475f59572a2d86003ed3a9aa5809cc151de 100644 GIT binary patch literal 2369 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.el-sub-menu__title, .el-menu-item { &:hover { - // you can use $sub-menuHover - background-color: rgba(0, 0, 0, 0.06) !important; + // 国家电网风格悬停效果 + background-color: rgba(0, 168, 98, 0.15) !important; + color: #00A862 !important; + transition: all 0.3s ease; } } diff --git a/src/assets/styles/variables.module.scss b/src/assets/styles/variables.module.scss index 8764e13..4579b69 100644 --- a/src/assets/styles/variables.module.scss +++ b/src/assets/styles/variables.module.scss @@ -1,39 +1,39 @@ -// base color -$blue: #324157; -$light-blue: #333c46; +// base color - 国家电网主题色 +$blue: #1a4d7a; +$light-blue: #2d6ba3; $red: #C03639; $pink: #E65D6E; -$green: #30B08F; -$tiffany: #4AB7BD; +$green: #00A862; // 国家电网主绿色 +$tiffany: #00B86C; // 国家电网辅助绿色 $yellow: #FEC171; -$panGreen: #30B08F; +$panGreen: #00C97A; // 国家电网亮绿色 -// 默认主题变量 -$menuText: #bfcbd9; -$menuActiveText: #409eff; -$menuBg: #304156; -$menuHover: #263445; +// 默认主题变量 - 国家电网深色侧边栏 +$menuText: #e8f5e9; +$menuActiveText: #00A862; // 国家电网主绿色 +$menuBg: #1a3a2e; // 深绿色背景 +$menuHover: #2d5a4a; // 悬停时的深绿色 -// 浅色主题theme-light +// 浅色主题theme-light - 国家电网浅色侧边栏 $menuLightBg: #ffffff; -$menuLightHover: #f0f1f5; +$menuLightHover: #e8f5e9; // 浅绿色悬停 $menuLightText: #303133; -$menuLightActiveText: #409EFF; +$menuLightActiveText: #00A862; // 国家电网主绿色 // 基础变量 $base-sidebar-width: 200px; $sideBarWidth: 200px; -// 菜单暗色变量 -$base-menu-color: #bfcbd9; -$base-menu-color-active: #f4f4f5; -$base-menu-background: #304156; -$base-sub-menu-background: #1f2d3d; -$base-sub-menu-hover: #001528; +// 菜单暗色变量 - 国家电网风格 +$base-menu-color: #e8f5e9; +$base-menu-color-active: #00A862; // 国家电网主绿色 +$base-menu-background: #1a3a2e; // 深绿色背景 +$base-sub-menu-background: #153028; // 更深绿色子菜单背景 +$base-sub-menu-hover: #2d5a4a; // 悬停时的深绿色 -// 组件变量 -$--color-primary: #409EFF; -$--color-success: #67C23A; +// 组件变量 - 国家电网主题色 +$--color-primary: #00A862; // 国家电网主绿色 +$--color-success: #00B86C; // 国家电网辅助绿色 $--color-warning: #E6A23C; $--color-danger: #F56C6C; $--color-info: #909399; @@ -65,16 +65,23 @@ $--color-info: #909399; colorInfo: $--color-info; } -// CSS变量定义 +// CSS变量定义 - 国家电网主题 :root { /* 亮色模式变量 */ --sidebar-bg: #{$menuBg}; --sidebar-text: #{$menuText}; --menu-hover: #{$menuHover}; + --menu-active-text: #{$menuActiveText}; --navbar-bg: #ffffff; --navbar-text: #303133; + /* 国家电网主题色 */ + --sgcc-primary: #00A862; + --sgcc-primary-light: #00B86C; + --sgcc-primary-dark: #008050; + --sgcc-gradient: linear-gradient(135deg, #00A862 0%, #00B86C 100%); + /* splitpanes default-theme 变量 */ --splitpanes-default-bg: #ffffff; diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index f903134..9fb87ef 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -1,60 +1,155 @@ diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue index 9acc406..113a6bc 100644 --- a/src/layout/components/Sidebar/index.vue +++ b/src/layout/components/Sidebar/index.vue @@ -83,16 +83,29 @@ const activeMenu = computed(() => { .el-menu-item, .el-sub-menu__title { &:hover { - background-color: var(--menu-hover, rgba(0, 0, 0, 0.06)) !important; + background-color: rgba(0, 168, 98, 0.15) !important; + color: #00A862 !important; + transition: all 0.3s ease; } } .el-menu-item { color: v-bind(getMenuTextColor); + position: relative; &.is-active { - color: var(--menu-active-text, #409eff); - background-color: var(--menu-hover, rgba(0, 0, 0, 0.06)) !important; + color: #00A862 !important; + background-color: rgba(0, 168, 98, 0.2) !important; + + &::before { + content: ''; + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 3px; + background: linear-gradient(180deg, #00A862 0%, #00B86C 100%); + } } } diff --git a/src/main.js b/src/main.js index 7063bba..6c2b057 100644 --- a/src/main.js +++ b/src/main.js @@ -83,11 +83,27 @@ app.component('svg-icon', SvgIcon) directive(app) -// 使用element-plus 并且设置全局的大小 +// 使用element-plus 并且设置全局的大小和主题色 app.use(ElementPlus, { locale: locale, // 支持 large、default、small size: Cookies.get('size') || 'default', }) +// 设置 Element Plus 主题色为国家电网绿色(默认主题) +const style = document.createElement('style') +style.id = 'sgcc-theme-style' +style.textContent = ` + :root { + --el-color-primary: #00A862; + --el-color-primary-light-3: #33B97E; + --el-color-primary-light-5: #66CA9A; + --el-color-primary-light-7: #99DBB6; + --el-color-primary-light-8: #B3E6CC; + --el-color-primary-light-9: #CCF0DD; + --el-color-primary-dark-2: #008650; + } +` +document.head.appendChild(style) + app.mount('#app') diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js index 2913564..2d3d4f6 100644 --- a/src/store/modules/settings.js +++ b/src/store/modules/settings.js @@ -14,7 +14,7 @@ const useSettingsStore = defineStore( { state: () => ({ title: '', - theme: storageSetting.theme || '#409EFF', + theme: storageSetting.theme || '#00A862', // 国家电网主绿色 sideTheme: storageSetting.sideTheme || sideTheme, showSettings: showSettings, topNav: storageSetting.topNav === undefined ? topNav : storageSetting.topNav, diff --git a/src/views/login.vue b/src/views/login.vue index 8b64e6b..b993711 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -1,73 +1,113 @@ diff --git a/src/views/showComponents/showTable/index.vue b/src/views/showComponents/showTable/index.vue index 60b4de1..a1445b0 100644 --- a/src/views/showComponents/showTable/index.vue +++ b/src/views/showComponents/showTable/index.vue @@ -36,9 +36,9 @@ >