import { createRouter, createWebHashHistory } from 'vue-router' import Login from '../views/Login.vue' import Index from '../views/Index.vue' import MenuList from '../views/SystemMngr/Menu/List.vue' import AdminGroupList from '../views/SystemMngr/Group/List.vue' import AdminUserList from '../views/SystemMngr/User/List.vue' import AdminChangPwd from '../views/SystemMngr/User/ChangPwd.vue' import Dashboard from '../views/MedicalCenter/Dashboard.vue' const router = createRouter({ history: createWebHashHistory(import.meta.env.BASE_URL), routes: [{ path: '/', name: 'Login1', component: Login, meta: { requiresAuth: false } }, { path: '/login', name: 'Login', component: Login, meta: { requiresAuth: false } }, { path: '/index', name: 'Index', component: Index, children: [{ path: '/dashboard', name: 'Dashboard', component: Dashboard, meta: { title: '数据面板' } }, { path: '/menuList', name: 'menuList', component: MenuList, meta: { title: '菜单管理' } }, { path: '/groupMngr', name: 'AdminGroupList', component: AdminGroupList, meta: { title: '组管理' } }, { path: '/adminUserList', name: 'AdminUserList', component: AdminUserList, meta: { title: '系统用户管理' } }, { path: '/adminChangPwd', name: 'AdminChangPwd', component: AdminChangPwd, meta: { title: '用户中心' } },{ path: '/systemMngr/systemConfig', name: 'SystemMngrSystemConfig', component: () => import('../views/SystemMngr/SystemConfig.vue'), meta: { title: '系统参数设置' } },{ path: '/systemMngr/systemLog', name: 'SystemMngrsystemLog', component: () => import('../views/SystemMngr/SystemLog.vue'), meta: { title: '系统日志' } },{ path: '/organizationMngr/website', name: 'OrganizationWebSite', component: () => import('../views/OrganizationMngr/WebSite.vue'), meta: { title: '站点机构' } },{ path: '/organizationMngr/hospital', name: 'OrganizationHospital', component: () => import('../views/OrganizationMngr/HospitalMngr.vue'), meta: { title: '医院管理' } },{ path: '/combo/combomngr', name: 'ComboComboMngr', component: () => import('../views/Combo/ComboMngr.vue'), meta: { title: '套餐管理' } },{ path: '/webmngr/pageindex', name: 'WebMngrPageIndex', component: () => import('../views/WebMngr/PageIndex.vue'), meta: { title: '首页设置' } },{ path: '/webmngr/nav', name: 'WebMngrNav', component: () => import('../views/WebMngr/Nav.vue'), meta: { title: '导航设置' } },{ path: '/webmngr/linkunits', name: 'WebMngrLinkUnits', component: () => import('../views/WebMngr/LinkUnits.vue'), meta: { title: '合作单位机构' } }] }, ] }) import { CheckMenuAuth } from "@/api/api.js"; import { ElMessage } from 'element-plus' router.beforeEach((to, from, next) => { console.log(to.meta.requiresAuth) const url = to.path if (to.meta.requiresAuth == false) { next() } else { const NewUrl = url.substring(1) CheckMenuAuth({ url: NewUrl }).then(res => { if (res.status) { next(); } else { ElMessage.error(res.msg) next('/'); } }) } }) export default router