fix: 租户和系统用户的主页显示差异
This commit is contained in:
@@ -20,6 +20,7 @@ import {
|
||||
import { useRouter } from 'vue-router';
|
||||
import useLayoutStore from '@/store/modules/layout';
|
||||
import useAppStore from '@/store/modules/app';
|
||||
import useUserStore from '@/store/modules/user';
|
||||
import useRouterStore from '@/store/modules/router';
|
||||
import useTabsStore from '@/store/modules/tabs';
|
||||
import useI18n from '@/hooks/useI18n';
|
||||
@@ -64,19 +65,28 @@ watch(
|
||||
{ immediate: true }
|
||||
);
|
||||
|
||||
// 动态路由添加到菜单面板
|
||||
const rootRoute = router.getRoutes().find(r => r.name === 'Root');
|
||||
if (rootRoute) {
|
||||
const children = routerStore.setRootRouterData(rootRoute.children);
|
||||
const buildRouterData = routerStore.buildRouterData;
|
||||
if (buildRouterData.length > 0) {
|
||||
rootRoute.children = children.concat(buildRouterData);
|
||||
} else {
|
||||
rootRoute.children = children;
|
||||
const menuData = computed(() => {
|
||||
// 动态路由添加到菜单面板
|
||||
const rootRoute = router.getRoutes().find(r => r.name === 'Root');
|
||||
if (rootRoute) {
|
||||
const children = routerStore.setRootRouterData(rootRoute.children);
|
||||
const buildRouterData = routerStore.buildRouterData;
|
||||
if (buildRouterData.length > 0) {
|
||||
rootRoute.children = children.concat(buildRouterData);
|
||||
} else {
|
||||
rootRoute.children = children;
|
||||
}
|
||||
// console.log(JSON.parse(JSON.stringify(rootRoute.children)));
|
||||
if (!useUserStore().roles.includes('tenant')) {
|
||||
rootRoute.children = rootRoute.children.filter(
|
||||
item => item.name !== 'Index'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const { menuData } = getMenuData(clearMenuItem(router.getRoutes()));
|
||||
const { menuData } = getMenuData(clearMenuItem(router.getRoutes()));
|
||||
return menuData;
|
||||
});
|
||||
|
||||
/**面包屑数据对象,排除根节点和首页不显示 */
|
||||
const breadcrumb = computed(() => {
|
||||
@@ -214,7 +224,10 @@ function fnGetServerTime() {
|
||||
// serverTimeStr.value = parseDateToStr(serverTime.timestamp);
|
||||
// 用DOM直接修改
|
||||
if (serverTimeDom) {
|
||||
serverTimeDom.innerText = parseDateToStr(serverTime.timestamp, YYYY_MM_DD_HH_MM_SSZ);
|
||||
serverTimeDom.innerText = parseDateToStr(
|
||||
serverTime.timestamp,
|
||||
YYYY_MM_DD_HH_MM_SSZ
|
||||
);
|
||||
}
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
@@ -30,14 +30,16 @@ const constantRoutes: RouteRecordRaw[] = [
|
||||
path: '/',
|
||||
name: 'Root',
|
||||
component: BasicLayout,
|
||||
redirect: '/monitor/dashboard',
|
||||
redirect: '/index',
|
||||
// redirect: '/monitor/dashboard',
|
||||
children: [
|
||||
{
|
||||
path: '/index',
|
||||
name: 'Index',
|
||||
meta: { title: 'router.index', icon: 'icon-pcduan', hideInMenu: true },
|
||||
redirect: '/monitor/dashboard',
|
||||
// component: () => import('@/views/index.vue'),
|
||||
meta: { title: 'router.index', icon: 'icon-pcduan' },
|
||||
component: () => import('@/views/index.vue'),
|
||||
// meta: { title: 'router.index', icon: 'icon-pcduan', hideInMenu: true },
|
||||
// redirect: '/monitor/dashboard',
|
||||
},
|
||||
{
|
||||
path: '/account',
|
||||
|
||||
@@ -5,7 +5,6 @@ import BaseInfo from './components/base-info.vue';
|
||||
import ResetPasswd from './components/reset-passwd.vue';
|
||||
import StyleLayout from './components/style-layout.vue';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { hasRoles } from '@/plugins/auth-user';
|
||||
import useAppStore from '@/store/modules/app';
|
||||
import useI18n from '@/hooks/useI18n';
|
||||
import useUserStore from '@/store/modules/user';
|
||||
@@ -53,7 +52,7 @@ onActivated(() => {
|
||||
<a-tab-pane
|
||||
key="style-layout"
|
||||
:tab="t('views.account.settings.styleLayout')"
|
||||
v-if="hasRoles(['admin'])"
|
||||
v-if="false"
|
||||
>
|
||||
<StyleLayout></StyleLayout>
|
||||
</a-tab-pane>
|
||||
|
||||
@@ -11,8 +11,9 @@ import {
|
||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||
import useUserStore from '@/store/modules/user';
|
||||
import useLayoutStore from '@/store/modules/layout';
|
||||
import { useRouter } from 'vue-router';
|
||||
const currentComponent = shallowRef<Component | null>(null);
|
||||
|
||||
const router = useRouter();
|
||||
const spinning = ref<boolean>(false);
|
||||
|
||||
/**匹配views里面所有的.vue或.tsx文件 */
|
||||
@@ -48,6 +49,15 @@ onMounted(() => {
|
||||
useLayoutStore().changeConf('menuTheme', 'light');
|
||||
useLayoutStore().changeConf('tabRender', false);
|
||||
} else {
|
||||
useLayoutStore().changeConf('layout', 'mix');
|
||||
useLayoutStore().changeConf('menuTheme', 'light');
|
||||
useLayoutStore().changeConf('tabRender', true);
|
||||
|
||||
// location.replace(location.origin);
|
||||
router.replace({ name: 'Monitor_2087' }).finally(() => {
|
||||
location.reload();
|
||||
});
|
||||
return;
|
||||
useLayoutStore().changeConf('layout', 'mix');
|
||||
//获取当前系统设置的首页路径
|
||||
spinning.value = true;
|
||||
|
||||
Reference in New Issue
Block a user