diff --git a/src/App.vue b/src/App.vue index 55cea95f..8311232f 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,6 +1,7 @@ diff --git a/src/pages/dashboard.vue b/src/pages/dashboard.vue index 5dadee70..01fe2b71 100644 --- a/src/pages/dashboard.vue +++ b/src/pages/dashboard.vue @@ -9,6 +9,7 @@ import AnalyticsMemory from '@/views/dashboard/AnalyticsMemory.vue' import MediaServerLatest from '@/views/dashboard/MediaServerLatest.vue' import MediaServerLibrary from '@/views/dashboard/MediaServerLibrary.vue' import MediaServerPlaying from '@/views/dashboard/MediaServerPlaying.vue' +import api from '@/api' // 仪表盘配置 const dashboard_names = { @@ -48,8 +49,17 @@ if (Object.keys(config.value).length === 0) { // 设置项目 function setDashboardConfig() { - localStorage.setItem('MP_DASHBOARD', JSON.stringify(config.value)) - dialog.value = false + const data = JSON.stringify(config.value) + api.post('/user/config/Dashboard', data, { + headers: { + "Content-Type": "text/plain" + } + }).then((response: any) => { + if (response && response.success) { + localStorage.setItem('MP_DASHBOARD', data) + dialog.value = false + } + }) } diff --git a/src/pages/login.vue b/src/pages/login.vue index 766a84a7..6f93f357 100644 --- a/src/pages/login.vue +++ b/src/pages/login.vue @@ -66,6 +66,24 @@ async function fetchOTP() { }) } +// 加载用户监控面板配置 +async function loadDashboardConfig() { + const response = await api.get('/user/config/Dashboard') + if (response && response.data && response.data.value) { + const data = JSON.stringify(response.data.value) + if (data != localStorage.getItem("MP_DASHBOARD")) { + localStorage.setItem("MP_DASHBOARD", data) + } + } +} + +async function afterLogin() { + // 加载用户监控面板配置 + await loadDashboardConfig() + // 跳转到首页或回原始页面 + router.push(store.state.auth.originalPath ?? '/') +} + // 登录获取token事件 function login() { errorMessage.value = '' @@ -103,8 +121,7 @@ function login() { store.dispatch('auth/updateUserName', username) store.dispatch('auth/updateAvatar', avatar) - // 跳转到首页或回原始页面 - router.push(store.state.auth.originalPath ?? '/') + afterLogin() }) .catch((error: any) => { // 登录失败,显示错误提示