diff --git a/.env.development b/.env.development index 67eef74..cd7ef6b 100644 --- a/.env.development +++ b/.env.development @@ -1,42 +1,42 @@ # 页面标题 -VITE_APP_TITLE = 智净云 · 智能家居管理后台 -VITE_APP_LOGO_TITLE = RuoYi-Vue-Plus +VITE_APP_TITLE='智净云 · 智能家居管理后台' +VITE_APP_LOGO_TITLE=RuoYi-Vue-Plus # 开发环境配置 -VITE_APP_ENV = 'development' +VITE_APP_ENV='development' # 开发环境 -VITE_APP_BASE_API = '/dev-api' +VITE_APP_BASE_API='/dev-api' # 应用访问路径 例如使用前缀 /admin/ -VITE_APP_CONTEXT_PATH = '/' +VITE_APP_CONTEXT_PATH='/' # 监控地址 -VITE_APP_MONITOR_ADMIN = 'http://localhost:9090/admin/applications' +VITE_APP_MONITOR_ADMIN='http://localhost:9090/admin/applications' # SnailJob 控制台地址 -VITE_APP_SNAILJOB_ADMIN = 'http://localhost:8800/snail-job' +VITE_APP_SNAILJOB_ADMIN='http://localhost:8800/snail-job' # SnailAI 控制台地址 -VITE_APP_SNAILAI_ADMIN = 'http://localhost:8900/snail-ai' +VITE_APP_SNAILAI_ADMIN='http://localhost:8900/snail-ai' -VITE_APP_PORT = 54123 +VITE_APP_PORT=5412 # 接口加密功能开关(如需关闭 后端也必须对应关闭) -VITE_APP_ENCRYPT = true +VITE_APP_ENCRYPT=true # 接口加密传输 RSA 公钥与后端解密私钥对应 如更换需前后端一同更换 -VITE_APP_RSA_PUBLIC_KEY = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDvEDuRIOM3oZPWj9Ukoc5pQklR4PFH6/clnjeFqjDLIgDyQvjxhgqAZQA+E9eD6qu6FsXPmK8djcL+nh3cFHz4pX473jDvO3Sve+8yL3VRQ0n2pRgQ2a01MJsy+WwTZCBYWf0VnLRIvANUoWQgy9vz94q7Va44dg7A1/3ICf+xAwIDAQAB' +VITE_APP_RSA_PUBLIC_KEY='MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDvEDuRIOM3oZPWj9Ukoc5pQklR4PFH6/clnjeFqjDLIgDyQvjxhgqAZQA+E9eD6qu6FsXPmK8djcL+nh3cFHz4pX473jDvO3Sve+8yL3VRQ0n2pRgQ2a01MJsy+WwTZCBYWf0VnLRIvANUoWQgy9vz94q7Va44dg7A1/3ICf+xAwIDAQAB' # 接口响应解密 RSA 私钥与后端加密公钥对应 如更换需前后端一同更换 -VITE_APP_RSA_PRIVATE_KEY = 'MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAObq7yrxfvyieZtTjAYyrdvi59tYTXxjO5ajmPCRSXBY9M9wQ1tli297JN6mnY53UJMNyOFNSZVi8WSFoIXjpR87FmvChJlzeN/dZdd3SEs48Ee66XKeSePYqxa8oO5GKDsnajgpsOHKXSeeVSIysiIPS2/WsEqk0In9P4w3RsRFAgMBAAECgYBiMEWwce24SPICnRzuScBpvmsudrbEDIH7BOd0a6LZlcnLJwZNJ7mJlshPsHNQb+WgEf135+BBGEhioPtn0yuTdEuKP4kB9UdYUKiayWCoWhJpesv7sAD4RDClV7dhuV+gcd1AXD+YzyRIPbGm0VC2U+4q8/+UPRpVjqskbLVTgQJBAPRpou7g3S8n4XB527kq0D8I3+ZYwMxZhszwhrCDpJU319+ucmpLVwYIzDmZVeID2QQdUaDfIEViFHu95xDrGiUCQQDx3YOKn3yaEctk/ERVn7hDAyAXUbd8/pv2b24/M/l1ZevlsFem8U4Jk5Mu64t3z3YGJoymEjQmbucwT01iKhehAkEAxlnccsRmfFh/KkqauKE4M4++NTAd9zlInpUsmZ+cN8UEGnF2RTEzRKBrLOt1uWCqBB7PGiE6DVTVjr7FAQPrSQJAT5yeY87DcONSk9cFlzmPqV8p/QME5rvYEnHzVBKDlkUKNPyqnWToTvaoh9U4fyNmsfeWbEOprszqhFhWHG3GgQJAK8+ynmyFhaw63+Hx2KU5zR4hVuQso2IzrEurGxCxybV6mR7VBerb4502+EPx3PmOgxQL+niUFhcMWxcvBFP9+A==' +VITE_APP_RSA_PRIVATE_KEY='MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAObq7yrxfvyieZtTjAYyrdvi59tYTXxjO5ajmPCRSXBY9M9wQ1tli297JN6mnY53UJMNyOFNSZVi8WSFoIXjpR87FmvChJlzeN/dZdd3SEs48Ee66XKeSePYqxa8oO5GKDsnajgpsOHKXSeeVSIysiIPS2/WsEqk0In9P4w3RsRFAgMBAAECgYBiMEWwce24SPICnRzuScBpvmsudrbEDIH7BOd0a6LZlcnLJwZNJ7mJlshPsHNQb+WgEf135+BBGEhioPtn0yuTdEuKP4kB9UdYUKiayWCoWhJpesv7sAD4RDClV7dhuV+gcd1AXD+YzyRIPbGm0VC2U+4q8/+UPRpVjqskbLVTgQJBAPRpou7g3S8n4XB527kq0D8I3+ZYwMxZhszwhrCDpJU319+ucmpLVwYIzDmZVeID2QQdUaDfIEViFHu95xDrGiUCQQDx3YOKn3yaEctk/ERVn7hDAyAXUbd8/pv2b24/M/l1ZevlsFem8U4Jk5Mu64t3z3YGJoymEjQmbucwT01iKhehAkEAxlnccsRmfFh/KkqauKE4M4++NTAd9zlInpUsmZ+cN8UEGnF2RTEzRKBrLOt1uWCqBB7PGiE6DVTVjr7FAQPrSQJAT5yeY87DcONSk9cFlzmPqV8p/QME5rvYEnHzVBKDlkUKNPyqnWToTvaoh9U4fyNmsfeWbEOprszqhFhWHG3GgQJAK8+ynmyFhaw63+Hx2KU5zR4hVuQso2IzrEurGxCxybV6mR7VBerb4502+EPx3PmOgxQL+niUFhcMWxcvBFP9+A==' # 客户端id -VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e' +VITE_APP_CLIENT_ID='e5cd7e4891bf95d1d19206ce24a7b32e' # 统一消息推送开关 -VITE_APP_MESSAGE_ENABLED = true +VITE_APP_MESSAGE_ENABLED=true # sse / websocket -VITE_APP_MESSAGE_TRANSPORT = 'sse' +VITE_APP_MESSAGE_TRANSPORT='sse' # 统一消息推送路径 -VITE_APP_MESSAGE_PATH = '/resource/message' +VITE_APP_MESSAGE_PATH='/resource/message' diff --git a/.env.production b/.env.production index 45011d8..847354e 100644 --- a/.env.production +++ b/.env.production @@ -1,45 +1,45 @@ # 页面标题 -VITE_APP_TITLE = RuoYi-Vue-Plus后台管理系统 -VITE_APP_LOGO_TITLE = RuoYi-Vue-Plus +VITE_APP_TITLE=RuoYi-Vue-Plus后台管理系统 +VITE_APP_LOGO_TITLE=RuoYi-Vue-Plus # 生产环境配置 -VITE_APP_ENV = 'production' +VITE_APP_ENV='production' # 应用访问路径 例如使用前缀 /admin/ -VITE_APP_CONTEXT_PATH = '/' +VITE_APP_CONTEXT_PATH='/' # 监控地址 -VITE_APP_MONITOR_ADMIN = '/admin/applications' +VITE_APP_MONITOR_ADMIN='/admin/applications' # SnailJob 控制台地址 -VITE_APP_SNAILJOB_ADMIN = '/snail-job' +VITE_APP_SNAILJOB_ADMIN='/snail-job' # SnailAI 控制台地址 -VITE_APP_SNAILAI_ADMIN = '/snail-ai' +VITE_APP_SNAILAI_ADMIN='/snail-ai' # 生产环境 -VITE_APP_BASE_API = '/prod-api' +VITE_APP_BASE_API='/prod-api' # 是否在打包时开启压缩,支持 gzip 和 brotli -VITE_BUILD_COMPRESS = gzip +VITE_BUILD_COMPRESS=gzip -VITE_APP_PORT = 80 +VITE_APP_PORT=80 # 接口加密功能开关(如需关闭 后端也必须对应关闭) -VITE_APP_ENCRYPT = true +VITE_APP_ENCRYPT=true # 接口加密传输 RSA 公钥与后端解密私钥对应 如更换需前后端一同更换 -VITE_APP_RSA_PUBLIC_KEY = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDvEDuRIOM3oZPWj9Ukoc5pQklR4PFH6/clnjeFqjDLIgDyQvjxhgqAZQA+E9eD6qu6FsXPmK8djcL+nh3cFHz4pX473jDvO3Sve+8yL3VRQ0n2pRgQ2a01MJsy+WwTZCBYWf0VnLRIvANUoWQgy9vz94q7Va44dg7A1/3ICf+xAwIDAQAB' +VITE_APP_RSA_PUBLIC_KEY='MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDvEDuRIOM3oZPWj9Ukoc5pQklR4PFH6/clnjeFqjDLIgDyQvjxhgqAZQA+E9eD6qu6FsXPmK8djcL+nh3cFHz4pX473jDvO3Sve+8yL3VRQ0n2pRgQ2a01MJsy+WwTZCBYWf0VnLRIvANUoWQgy9vz94q7Va44dg7A1/3ICf+xAwIDAQAB' # 接口响应解密 RSA 私钥与后端加密公钥对应 如更换需前后端一同更换 -VITE_APP_RSA_PRIVATE_KEY = 'MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAObq7yrxfvyieZtTjAYyrdvi59tYTXxjO5ajmPCRSXBY9M9wQ1tli297JN6mnY53UJMNyOFNSZVi8WSFoIXjpR87FmvChJlzeN/dZdd3SEs48Ee66XKeSePYqxa8oO5GKDsnajgpsOHKXSeeVSIysiIPS2/WsEqk0In9P4w3RsRFAgMBAAECgYBiMEWwce24SPICnRzuScBpvmsudrbEDIH7BOd0a6LZlcnLJwZNJ7mJlshPsHNQb+WgEf135+BBGEhioPtn0yuTdEuKP4kB9UdYUKiayWCoWhJpesv7sAD4RDClV7dhuV+gcd1AXD+YzyRIPbGm0VC2U+4q8/+UPRpVjqskbLVTgQJBAPRpou7g3S8n4XB527kq0D8I3+ZYwMxZhszwhrCDpJU319+ucmpLVwYIzDmZVeID2QQdUaDfIEViFHu95xDrGiUCQQDx3YOKn3yaEctk/ERVn7hDAyAXUbd8/pv2b24/M/l1ZevlsFem8U4Jk5Mu64t3z3YGJoymEjQmbucwT01iKhehAkEAxlnccsRmfFh/KkqauKE4M4++NTAd9zlInpUsmZ+cN8UEGnF2RTEzRKBrLOt1uWCqBB7PGiE6DVTVjr7FAQPrSQJAT5yeY87DcONSk9cFlzmPqV8p/QME5rvYEnHzVBKDlkUKNPyqnWToTvaoh9U4fyNmsfeWbEOprszqhFhWHG3GgQJAK8+ynmyFhaw63+Hx2KU5zR4hVuQso2IzrEurGxCxybV6mR7VBerb4502+EPx3PmOgxQL+niUFhcMWxcvBFP9+A==' +VITE_APP_RSA_PRIVATE_KEY='MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAObq7yrxfvyieZtTjAYyrdvi59tYTXxjO5ajmPCRSXBY9M9wQ1tli297JN6mnY53UJMNyOFNSZVi8WSFoIXjpR87FmvChJlzeN/dZdd3SEs48Ee66XKeSePYqxa8oO5GKDsnajgpsOHKXSeeVSIysiIPS2/WsEqk0In9P4w3RsRFAgMBAAECgYBiMEWwce24SPICnRzuScBpvmsudrbEDIH7BOd0a6LZlcnLJwZNJ7mJlshPsHNQb+WgEf135+BBGEhioPtn0yuTdEuKP4kB9UdYUKiayWCoWhJpesv7sAD4RDClV7dhuV+gcd1AXD+YzyRIPbGm0VC2U+4q8/+UPRpVjqskbLVTgQJBAPRpou7g3S8n4XB527kq0D8I3+ZYwMxZhszwhrCDpJU319+ucmpLVwYIzDmZVeID2QQdUaDfIEViFHu95xDrGiUCQQDx3YOKn3yaEctk/ERVn7hDAyAXUbd8/pv2b24/M/l1ZevlsFem8U4Jk5Mu64t3z3YGJoymEjQmbucwT01iKhehAkEAxlnccsRmfFh/KkqauKE4M4++NTAd9zlInpUsmZ+cN8UEGnF2RTEzRKBrLOt1uWCqBB7PGiE6DVTVjr7FAQPrSQJAT5yeY87DcONSk9cFlzmPqV8p/QME5rvYEnHzVBKDlkUKNPyqnWToTvaoh9U4fyNmsfeWbEOprszqhFhWHG3GgQJAK8+ynmyFhaw63+Hx2KU5zR4hVuQso2IzrEurGxCxybV6mR7VBerb4502+EPx3PmOgxQL+niUFhcMWxcvBFP9+A==' # 客户端id -VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e' +VITE_APP_CLIENT_ID='e5cd7e4891bf95d1d19206ce24a7b32e' # 统一消息推送开关 -VITE_APP_MESSAGE_ENABLED = true +VITE_APP_MESSAGE_ENABLED=true # sse / websocket -VITE_APP_MESSAGE_TRANSPORT = 'sse' +VITE_APP_MESSAGE_TRANSPORT='sse' # 统一消息推送路径 -VITE_APP_MESSAGE_PATH = '/resource/message' +VITE_APP_MESSAGE_PATH='/resource/message' diff --git a/src/assets/styles/layout/sidebar/_collapsed.scss b/src/assets/styles/layout/sidebar/_collapsed.scss index c7e572a..7f03e23 100644 --- a/src/assets/styles/layout/sidebar/_collapsed.scss +++ b/src/assets/styles/layout/sidebar/_collapsed.scss @@ -53,7 +53,7 @@ & .el-sub-menu { overflow: hidden; - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); .el-sub-menu__title, .el-sub-menu__title.el-tooltip__trigger { diff --git a/src/assets/styles/layout/sidebar/_menu.scss b/src/assets/styles/layout/sidebar/_menu.scss index b863261..727df33 100644 --- a/src/assets/styles/layout/sidebar/_menu.scss +++ b/src/assets/styles/layout/sidebar/_menu.scss @@ -6,7 +6,7 @@ .sidebar-container { .theme-dark .submenu-title-noDropdown, .theme-dark .el-sub-menu__title { - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); margin: 3px 8px; height: 40px; @@ -18,11 +18,10 @@ .submenu-title-noDropdown, .el-sub-menu__title { - border-radius: var(--app-radius-md); - margin: 3px 8px; + //border-radius: var(--app-radius-md); + margin: 0; height: 40px; color: var(--side-menu-text) !important; - &:hover { background-color: var(--side-menu-hover-bg) !important; color: var(--side-menu-hover-text) !important; @@ -36,10 +35,11 @@ & .nest-menu .el-sub-menu > .el-sub-menu__title, & .el-sub-menu .el-menu-item { min-width: calc($base-sidebar-width - 16px) !important; - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); height: 40px; - margin: 3px 8px; - background: transparent !important; + //margin: 3px 8px; + //background: transparent !important; + background: #f7f7f7 !important; &:not(.is-active):hover { background-color: var(--side-menu-hover-bg) !important; @@ -49,11 +49,11 @@ & .theme-dark .nest-menu .el-sub-menu > .el-sub-menu__title, & .theme-dark .el-sub-menu .el-menu-item { - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); height: 40px; - margin: 3px 8px; - background: transparent !important; - + //margin: 3px 8px; + //background: transparent !important; + background: #f7f7f7 !important; &.is-active { background: var(--side-menu-active-bg) !important; color: var(--side-menu-active-text) !important; @@ -70,11 +70,11 @@ & .theme-dark .nest-menu .el-sub-menu > .el-sub-menu__title, & .theme-dark .el-menu-item { - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); height: 40px; - margin: 3px 8px; - background: transparent !important; - + //margin: 3px 8px; + //background: transparent !important; + background: #f7f7f7 !important; &.is-active { background: var(--side-menu-active-bg) !important; color: var(--side-menu-active-text) !important; @@ -91,17 +91,17 @@ & .nest-menu .el-sub-menu > .el-sub-menu__title, & .el-menu-item { - border-radius: var(--app-radius-md); + //border-radius: var(--app-radius-md); height: 40px; - margin: 3px 8px; + //margin: 0 8px; background: transparent !important; &.is-active { background: var(--side-menu-active-bg) !important; color: var(--side-menu-active-text) !important; - box-shadow: - inset 3px 0 0 var(--side-menu-active-line), - inset 0 0 0 1px var(--side-menu-active-border); + //box-shadow: + // inset 3px 0 0 var(--side-menu-active-line), + // inset 0 0 0 1px var(--side-menu-active-border); } &:not(.is-active):hover { diff --git a/src/assets/styles/layout/sidebar/_shell.scss b/src/assets/styles/layout/sidebar/_shell.scss index 9b0eb07..e98d416 100644 --- a/src/assets/styles/layout/sidebar/_shell.scss +++ b/src/assets/styles/layout/sidebar/_shell.scss @@ -26,7 +26,7 @@ position: fixed; font-size: 0; top: 12px; - left: 12px; + //left: 12px; z-index: 1001; overflow: hidden; box-sizing: border-box; diff --git a/src/assets/styles/tokens/_sass-vars.scss b/src/assets/styles/tokens/_sass-vars.scss index da76574..bffa520 100644 --- a/src/assets/styles/tokens/_sass-vars.scss +++ b/src/assets/styles/tokens/_sass-vars.scss @@ -39,4 +39,4 @@ $--color-warning: $color-warning; $--color-danger: $color-danger; $--color-info: $color-info; -$base-sidebar-width: 200px; +$base-sidebar-width: 244px; diff --git a/src/components/Breadcrumb/index.vue b/src/components/Breadcrumb/index.vue index 791ae5f..8a8f5dc 100644 --- a/src/components/Breadcrumb/index.vue +++ b/src/components/Breadcrumb/index.vue @@ -2,9 +2,8 @@ - - {{ item.meta?.title }} - + {{ item.meta?.title }} {{ item.meta?.title }} @@ -37,7 +36,7 @@ const getBreadcrumb = () => { } // 判断是否为首页 if (!isDashboard(matched[0])) { - matched = [{ path: '/index', meta: { title: '首页' } }].concat(matched); + // matched = [{ path: '/index', meta: { title: '首页' } }].concat(matched); } levelList.value = matched.filter(item => item.meta && item.meta.title && item.meta.breadcrumb !== false); }; @@ -82,14 +81,22 @@ onMounted(() => { display: inline-block; font-size: 13px; line-height: 1.2; - margin-left: 4px; color: var(--app-text-muted); + :deep(.el-breadcrumb__separator) { + margin: 0 3px; + } + :deep(.el-breadcrumb__inner) { color: inherit; font-weight: 500; } + :deep(.el-breadcrumb__item .no-redirect) { + color: rgba(156, 163, 175, 1); + font-size: 12px; + } + .no-redirect { color: var(--app-text-title); cursor: text; diff --git a/src/components/Echarts/index.vue b/src/components/Echarts/index.vue new file mode 100644 index 0000000..b58d6a6 --- /dev/null +++ b/src/components/Echarts/index.vue @@ -0,0 +1,118 @@ + + + + + diff --git a/src/components/Pagecrumb/index.vue b/src/components/Pagecrumb/index.vue new file mode 100644 index 0000000..86743b9 --- /dev/null +++ b/src/components/Pagecrumb/index.vue @@ -0,0 +1,24 @@ + + + + + diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue index d973a19..69066d9 100644 --- a/src/layout/components/AppMain.vue +++ b/src/layout/components/AppMain.vue @@ -53,7 +53,7 @@ function addIframe() { width: 100%; position: relative; overflow: hidden; - padding: 12px; + //padding: 12px; &:fullscreen, &:-webkit-full-screen, diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index 35eaa12..aab70fa 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -12,25 +12,17 @@ logo -
@@ -82,9 +55,9 @@ {{ $t('navbar.personalCenter') }} - - {{ $t('navbar.layoutSetting') }} - + + + {{ $t('navbar.logout') }} @@ -110,7 +83,9 @@ import { useUserStore } from '@/store/modules/user'; import notice from './notice/index.vue'; import TopBar from './TopBar/index.vue'; import SearchMenu from './TopBar/search.vue'; +import {RouteLocationMatched, RouteLocationNormalizedLoadedGeneric} from "vue-router"; +const route = useRoute(); const appStore = useAppStore(); const userStore = useUserStore(); const settingsStore = useSettingsStore(); @@ -120,6 +95,13 @@ const navType = computed(() => settingsStore.navType); const showLogo = computed(() => settingsStore.sidebarLogo); const displayName = computed(() => userStore.nickname || '管理员'); +const isDashboard = (route: RouteLocationNormalizedLoadedGeneric) => { + const name = route && (route.name as string); + if (!name) { + return false; + } + return name.trim() === 'Index'; +}; // 搜索菜单 const searchMenuRef = ref>(); diff --git a/src/layout/components/Sidebar/Logo.vue b/src/layout/components/Sidebar/Logo.vue index 3f9f3ad..db72f61 100644 --- a/src/layout/components/Sidebar/Logo.vue +++ b/src/layout/components/Sidebar/Logo.vue @@ -54,7 +54,7 @@ const logoTextColor = computed(() => (isDarkSide.value ? '#f8fbff' : 'var(--app- position: relative; flex-shrink: 0; height: 46px; - line-height: 46px; + //line-height: 46px; padding: 0 8px; margin-top: 8px; background: transparent; @@ -70,8 +70,8 @@ const logoTextColor = computed(() => (isDarkSide.value ? '#f8fbff' : 'var(--app- justify-content: center; gap: 8px; border-radius: 14px; - background: v-bind(logoSurface); - border: 1px solid v-bind(logoBorder); + //background: v-bind(logoSurface); + //border: 1px solid v-bind(logoBorder); & .sidebar-logo { width: 28px; diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue index 3647e8d..00546ee 100644 --- a/src/layout/components/Sidebar/SidebarItem.vue +++ b/src/layout/components/Sidebar/SidebarItem.vue @@ -9,7 +9,7 @@ > - + diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue index 4832734..fea7e15 100644 --- a/src/layout/components/Sidebar/index.vue +++ b/src/layout/components/Sidebar/index.vue @@ -63,8 +63,8 @@ const menuStyle = computed(() => ({ flex-direction: column; gap: 8px; padding: 10px 8px 12px; - border: 1px solid var(--app-sidebar-border); - border-radius: var(--app-radius-base); + //border: 1px solid var(--app-sidebar-border); + //border-radius: var(--app-radius-base); box-shadow: var(--app-shadow-sm); background: v-bind(bgColor) !important; overflow: hidden; diff --git a/src/layout/index.vue b/src/layout/index.vue index f326e00..a5c90b2 100644 --- a/src/layout/index.vue +++ b/src/layout/index.vue @@ -86,7 +86,8 @@ const setLayout = () => { position: relative; height: 100%; width: 100%; - background: var(--app-shell-bg); + //background: var(--app-shell-bg); + background: #fff; &.mobile.openSidebar { position: fixed; @@ -110,7 +111,7 @@ const setLayout = () => { display: flex; flex-direction: column; gap: 3px; - padding: 12px 12px 0; + //padding: 12px 12px 0; background: transparent; } diff --git a/src/router/index.ts b/src/router/index.ts index 6a6facb..e579560 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -69,7 +69,7 @@ export const constantRoutes: RouteRecordRaw[] = [ children: [ { path: '/index', - component: () => import('@/views/index.vue'), + component: () => import('@/views/index/index.vue'), name: 'Index', meta: { title: '首页', icon: 'dashboard', affix: true } } diff --git a/src/settings.ts b/src/settings.ts index c71d428..aed895f 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -12,7 +12,7 @@ const setting: DefaultSettings = { /** * 侧边栏主题 深色主题theme-dark,浅色主题theme-light */ - sideTheme: 'theme-dark', + sideTheme: 'theme-light', /** * 是否系统布局配置 */ @@ -26,7 +26,7 @@ const setting: DefaultSettings = { /** * 是否显示 tagsView */ - tagsView: true, + tagsView: false, /** * 持久化标签页 @@ -36,12 +36,12 @@ const setting: DefaultSettings = { /** * 显示页签图标 */ - tagsIcon: true, + tagsIcon: false, /** * 是否固定头部 */ - fixedHeader: true, + fixedHeader: false, /** * 是否显示logo diff --git a/src/views/index.vue b/src/views/index.vue deleted file mode 100644 index 7934314..0000000 --- a/src/views/index.vue +++ /dev/null @@ -1,370 +0,0 @@ - - - - - diff --git a/src/views/index/compontents/activeDevices.vue b/src/views/index/compontents/activeDevices.vue new file mode 100644 index 0000000..92f0faf --- /dev/null +++ b/src/views/index/compontents/activeDevices.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/src/views/index/compontents/areaDevices.vue b/src/views/index/compontents/areaDevices.vue new file mode 100644 index 0000000..1e35ce1 --- /dev/null +++ b/src/views/index/compontents/areaDevices.vue @@ -0,0 +1,98 @@ + + + + + diff --git a/src/views/index/compontents/card.vue b/src/views/index/compontents/card.vue new file mode 100644 index 0000000..ac0002b --- /dev/null +++ b/src/views/index/compontents/card.vue @@ -0,0 +1,154 @@ + + + + + diff --git a/src/views/index/compontents/tvoc.vue b/src/views/index/compontents/tvoc.vue new file mode 100644 index 0000000..498c34a --- /dev/null +++ b/src/views/index/compontents/tvoc.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/src/views/index/compontents/type.vue b/src/views/index/compontents/type.vue new file mode 100644 index 0000000..efe4589 --- /dev/null +++ b/src/views/index/compontents/type.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/src/views/index/index.vue b/src/views/index/index.vue new file mode 100644 index 0000000..2c9a142 --- /dev/null +++ b/src/views/index/index.vue @@ -0,0 +1,83 @@ + + + + + diff --git a/src/views/login.vue b/src/views/login.vue index e2e044f..43730a3 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -110,7 +110,7 @@
- +
{{ $t("login.rememberPassword") @@ -550,6 +550,7 @@ onMounted(() => { background-color: rgba(247, 248, 250, 1); border: 1px solid rgba(238, 240, 243, 1); .actions { + cursor: pointer; color: rgba(37, 99, 235, 1); } } diff --git a/src/views/system/client/index.vue b/src/views/system/client/index.vue index 641f601..88c8987 100644 --- a/src/views/system/client/index.vue +++ b/src/views/system/client/index.vue @@ -1,5 +1,6 @@