feat: 管理中心路由调整、选择公司逻辑调整

This commit is contained in:
renxiaodong
2025-06-23 05:58:04 -04:00
parent 7b79443980
commit 82dfa3faeb
11 changed files with 134 additions and 86 deletions

View File

@ -13,10 +13,10 @@ export default function setupUserLoginInfoGuard(router: Router) {
NProgress.start();
const userStore = useUserStore();
const requireLogin = to?.meta?.requireLogin || 0;
const requiresAuth = to?.meta?.requiresAuth || false;
const isLogin = !!userStore.isLogin;
if (requireLogin === 1 && !isLogin) {
if (requiresAuth && !isLogin) {
goUserLogin();
next();
return;

View File

@ -11,7 +11,7 @@ import 'nprogress/nprogress.css';
import createRouteGuard from './guard';
NProgress.configure({ showSpinner: false }); // NProgress Configuration
// console.log({ appRoutes });
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
@ -20,7 +20,7 @@ const router = createRouter({
name: 'UserLogin',
component: () => import('@/views/components/login'),
meta: {
requireLogin: 0,
requiresAuth: false,
},
},
{
@ -29,33 +29,33 @@ const router = createRouter({
component: () => import('@/views/components/workplace'),
meta: {
hideSidebar: true,
requireLogin: 1,
requiresAuth: true,
},
},
{
path: '/',
name: 'Home',
redirect: '/dataEngine/dataEngine/hotTranslation',
redirect: '/dataEngine/hotTranslation',
children: [...appRoutes, REDIRECT_MAIN, NOT_FOUND_ROUTE],
meta: {
requireLogin: 1,
},
},
{
path: '/dataEngine',
name: 'dataEngine',
redirect: '/dataEngine/dataEngine/hotTranslation',
children: [...appRoutes, REDIRECT_MAIN, NOT_FOUND_ROUTE],
meta: {
requireLogin: 1,
requiresAuth: true,
},
},
// {
// path: '/dataEngine',
// name: 'dataEngine',
// redirect: '/dataEngine/hotTranslation',
// children: [...appRoutes, REDIRECT_MAIN, NOT_FOUND_ROUTE],
// meta: {
// requiresAuth: 1,
// },
// },
{
path: '/permission',
name: 'permission',
component: () => import('@/views/components/permission/choose-enterprise.vue'),
meta: {
requireLogin: 1,
requiresAuth: true,
},
},
{
@ -63,31 +63,7 @@ const router = createRouter({
name: 'auth',
component: () => import('@/views/components/permission/auth.vue'),
meta: {
requireLogin: 0,
},
},
{
path: '/management/person',
name: 'person',
component: () => import('@/views/components/management/person'),
meta: {
requireLogin: 1,
},
},
{
path: '/management/enterprise',
name: 'enterprise',
component: () => import('@/views/components/management/enterprise'),
meta: {
requireLogin: 1,
},
},
{
path: '/management/account',
name: 'account',
component: () => import('@/views/components/management/account'),
meta: {
requireLogin: 1,
requiresAuth: false,
},
},
],

View File

@ -0,0 +1,52 @@
/*
* @Author: RenXiaoDong
* @Date: 2025-06-23 04:29:03
*/
import { IconBookmark } from '@arco-design/web-vue/es/icon';
import type { AppRouteRecordRaw } from '../types';
const COMPONENTS: AppRouteRecordRaw = {
path: 'management',
name: 'management',
meta: {
locale: '管理中心',
icon: IconBookmark,
requiresAuth: true,
roles: ['*'],
requiresSidebar: true,
},
children: [
{
path: 'person',
name: '个人信息',
component: () => import('@/views/components/management/person'),
meta: {
locale: '个人信息',
requiresAuth: true,
roles: ['*'],
},
},
{
path: 'enterprise',
name: '企业信息',
component: () => import('@/views/components/management/enterprise'),
meta: {
locale: '企业信息',
requiresAuth: true,
roles: ['*'],
},
},
{
path: 'account',
name: '账号管理',
component: () => import('@/views/components/management/account'),
meta: {
locale: '账号管理',
requiresAuth: true,
roles: ['*'],
},
},
],
};
export default COMPONENTS;