| | |
| | | import Vue from 'vue' |
| | | import Router from 'vue-router' |
| | | import login from '@/components/login' |
| | | import index from '@/components/index' |
| | | import Vue from 'vue'; |
| | | import VueRouter from 'vue-router'; |
| | | import { getToken } from '@/utils/auth'; // get token from cookie |
| | | import Home from '../views/Home.vue'; |
| | | import login from '../components/login'; |
| | | import Synthesis from '../views/Synthesis/index.vue'; //综合展示 |
| | | import Thematic from '../views/Thematic/index.vue'; //专题地图 |
| | | import Archive from '../views/Archive/index.vue'; //资料馆 |
| | | import dataApplication from '@/views/Archive/dataApplication.vue'; |
| | | import menuSettings from '@/views/maintenance/menuSettings.vue'; //菜单设置 |
| | | import rests from '@/views/maintenance/rests.vue'; //其他 |
| | | |
| | | Vue.use(Router) |
| | | let router = new Router({ |
| | | routes: [ |
| | | { |
| | | path: '/login', |
| | | name: 'login', |
| | | component: login |
| | | }, |
| | | { |
| | | path: '/', |
| | | name: 'index', |
| | | component: index |
| | | }, |
| | | { |
| | | path: '/SmartEarth', |
| | | name: 'SmartEarth', |
| | | component: index |
| | | }, |
| | | { |
| | | path: '/SE', |
| | | name: 'SE', |
| | | component: index |
| | | } |
| | | ] |
| | | }) |
| | | import authorityManagement from '@/views/maintenance/authorityManagement.vue'; //权限管理 |
| | | import safetyManagement from '@/views/maintenance/safetyManagement.vue'; //安全管理 |
| | | import operationLog from '@/views/maintenance/operationLog.vue'; //操作日志 |
| | | import eventlogManage from '@/views/maintenance/eventlogManage.vue'; //事件日志管理 |
| | | import blackwhiteList from '@/views/maintenance/blackwhiteList.vue'; //登录日志 |
| | | import logLog from '@/views/maintenance/logLog.vue'; //登录日志 |
| | | import systemMonitoring from '@/views/maintenance/systemMonitoring.vue'; //系统监控 |
| | | import databaseMonitoring from '@/views/maintenance/databaseMonitoring.vue'; //数据库监控 |
| | | import parameterConfiguration from '@/views/maintenance/parameterConfiguration.vue'; //参数配置 |
| | | import tokentool from '@/views/maintenance/tokentool.vue'; //token 工具 |
| | | import mochaitmo from '@/views/maintenance/mochaitmo.vue'; //运维管理主页面 |
| | | //数据管理模块 |
| | | |
| | | // 移除登录 |
| | | localStorage.setItem('loginscene', 1); |
| | | import dataController from '../views/datamanage/dataController.vue'; |
| | | import catalogueManage from '../views/datamanage/catalogueManage.vue'; //数据管理-目录管理 |
| | | import dataUpdata from '../views/datamanage/dataUpdata.vue'; //数据管理-数据上传 |
| | | import dataLoading from '../views/datamanage/dataLoading.vue'; //数据管理-数据入库 |
| | | import metadataManage from '../views/datamanage/metadataManage.vue'; //数据管理-元数据管理 |
| | | import SpatialData from '../views/datamanage/SpatialData.vue'; //数据管理-空间数据 |
| | | import versionManage from '../views/datamanage/versionManage.vue'; //数据管理-版本管理 |
| | | import dictionaryManage from '../views/datamanage/dictionaryManage.vue'; //数据管理-字典管理 |
| | | import domainManage from '../views/datamanage/domainManage.vue'; //数据管理-值域管理 |
| | | import styleManage from '../views/datamanage/styleManage.vue'; //数据管理-样式管理 |
| | | import addStyle from '../views/datamanage/addStyle.vue'; //数据管理-样式管理-添加样式 |
| | | import ExportMap from '../views/exportMap/index.vue'; //在线制图 |
| | | import userInfoManage from '../views/userManage/userInfoManage.vue'; // 用户管理模块 |
| | | import templateManage from '../views/userManage/templateManage.vue'; // 模板管理 |
| | | import orgManage from '../views/userManage/orgManage.vue'; // 用户管理模块 |
| | | import userAuditing from '../views/userManage/userAuditing.vue'; // 用户管理模块 |
| | | import roleManage from '../views/userManage/roleManage.vue'; // 用户管理模块 |
| | | import groupManage from '../views/userManage/groupManage.vue'; // 用户管理模块 |
| | | import authorityManage from '@/views/userManage/authorityManage.vue'; //用户管理-权限管理 |
| | | import resourceManage from '@/views/userManage/resourceManage.vue'; //用户管理-资源管理 |
| | | import userRoleAuthorization from '@/views/AuthorizationManagement/userRoleAuthorization.vue'; //系统管理-用户角色授权 |
| | | import menuRoleAuthorization from '@/views/AuthorizationManagement/menuRoleAuthorization.vue'; //系统管理-菜单权限授权 |
| | | import roleResAuthorization from '@/views/AuthorizationManagement/roleResAuthorization.vue'; //系统管理-角色资源授权 |
| | | import roleMenuAuthorization from '@/views/AuthorizationManagement/roleMenuAuthorization.vue'; //系统管理-角色菜单授权 |
| | | |
| | | router.beforeEach((to, from, next) => { |
| | | if (to.name === 'SmartEarth' || to.name === 'SE') { |
| | | localStorage.setItem('loginscene', 1); |
| | | import layerManagement from '@/views/datamanage/layerManagement.vue'; //数据管理-菜单管理 |
| | | import bankController from '../views/datamanage/bankController.vue';//数据库管理 |
| | | import projectController from '../views/datamanage/projectController.vue';//项目管理 |
| | | |
| | | import systemController from '@/views/maintenance/systemController.vue';//系统管理 |
| | | import empowerController from '@/views/maintenance/empowerController.vue';//授权管理 |
| | | import opexController from '@/views/maintenance/opexController.vue';//运维监控 |
| | | import dataCount from '@/views/datamanage/dataStatistics.vue'; //数据统计 |
| | | //包二 |
| | | import WareInspection from '@/views/PackageTwo/WareInspection.vue'; //数据质检-入库质检 |
| | | import QualityInspection from '@/views/PackageTwo/index.vue'; //数据质检-入库质检 |
| | | |
| | | |
| | | |
| | | |
| | | const originalPush = VueRouter.prototype.push; |
| | | |
| | | VueRouter.prototype.push = function push(location) { |
| | | const nowPage = sessionStorage.getItem('routerName') |
| | | const page = { |
| | | path: nowPage |
| | | } |
| | | const loginscene = localStorage.getItem('loginscene') |
| | | if (to.name !== 'login' && !loginscene) { |
| | | next({ |
| | | name: 'login' |
| | | }) //没去登录页,还没token,跳转去登录页 |
| | | } else if (to.name === 'login' && loginscene) { |
| | | let data = { |
| | | name: 'index', |
| | | }; |
| | | if (window.sceneConfig && sceneConfig.layer) { |
| | | data.query = { layer: sceneConfig.layer }; |
| | | } |
| | | next(data) //已登录,跳过登录 |
| | | if (page === location || location === '/') { |
| | | return originalPush.call(this, page).catch((err) => err); |
| | | } else { |
| | | next() //正常跳转 |
| | | return originalPush.call(this, location).catch((err) => err); |
| | | } |
| | | }) |
| | | }; |
| | | |
| | | // 群组管理 |
| | | Vue.use(VueRouter); |
| | | |
| | | const routes = [ |
| | | { |
| | | path: '/login', |
| | | name: 'login', |
| | | component: login, |
| | | }, |
| | | { |
| | | path: '/Thematic', |
| | | name: 'Thematic', |
| | | component: Thematic, |
| | | |
| | | }, |
| | | { |
| | | path: '/', |
| | | name: 'Home', |
| | | component: Home, |
| | | redirect: '/Synthesis', |
| | | children: [ |
| | | { |
| | | path: '/WareInspection', |
| | | component: WareInspection, |
| | | name: 'WareInspection', |
| | | meta: { |
| | | title: '入库质检', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/QualityInspection', |
| | | component: QualityInspection, |
| | | name: 'QualityInspection', |
| | | meta: { |
| | | title: '入库质检', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/mochaitmo', |
| | | component: mochaitmo, |
| | | name: 'mochaitmo', |
| | | meta: { |
| | | title: '运维管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/systemController', |
| | | component: systemController, |
| | | name: 'systemController', |
| | | meta: { |
| | | title: '系统管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/empowerController', |
| | | component: empowerController, |
| | | name: 'empowerController', |
| | | meta: { |
| | | title: '授权管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/opexController', |
| | | component: opexController, |
| | | name: 'opexController', |
| | | meta: { |
| | | title: '运维监控', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/bankController', |
| | | component: bankController, |
| | | name: 'bankController', |
| | | meta: { |
| | | title: '数据库管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/projectController', |
| | | component: projectController, |
| | | name: 'projectController', |
| | | meta: { |
| | | title: '项目管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dataController', |
| | | component: dataController, |
| | | name: 'dataController', |
| | | meta: { |
| | | title: '数据管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/ExportMap', |
| | | name: 'ExportMap', |
| | | component: ExportMap, |
| | | meta: { |
| | | title: '在线制图', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/Synthesis', |
| | | name: 'Synthesis', |
| | | component: Synthesis, |
| | | meta: { |
| | | title: '综合展示', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dataApplication', |
| | | name: 'dataApplication', |
| | | component: dataApplication, |
| | | meta: { |
| | | title: '数据申请', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dataCount', |
| | | name: 'dataCount', |
| | | component: dataCount, |
| | | meta: { |
| | | title: '数据统计', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/Archive', |
| | | name: 'Archive', |
| | | component: Archive, |
| | | meta: { |
| | | title: '资料馆', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/catalogueManage', |
| | | name: 'catalogueManage', |
| | | component: catalogueManage, |
| | | meta: { |
| | | title: '目录管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dataUpdata', |
| | | name: 'dataUpdata', |
| | | component: dataUpdata, |
| | | meta: { |
| | | title: '数据上传', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/metadataManage', |
| | | component: metadataManage, |
| | | name: 'metadataManage', |
| | | meta: { |
| | | title: '元数据管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dataLoading', |
| | | name: 'dataLoading', |
| | | component: dataLoading, |
| | | meta: { |
| | | title: '数据入库', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | |
| | | { |
| | | path: '/SpatialData', |
| | | component: SpatialData, |
| | | name: 'SpatialData', |
| | | meta: { |
| | | title: '空间数据', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | |
| | | { |
| | | path: '/versionManage', |
| | | component: versionManage, |
| | | name: 'versionManage', |
| | | meta: { |
| | | title: '版本管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/dictionaryManage', |
| | | component: dictionaryManage, |
| | | name: 'dictionaryManage', |
| | | meta: { |
| | | title: '字典管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/domainManage', |
| | | component: domainManage, |
| | | name: 'domainManage', |
| | | meta: { |
| | | title: '值域管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/styleManage', |
| | | component: styleManage, |
| | | name: 'styleManage', |
| | | meta: { |
| | | title: '样式管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/addStyle', |
| | | component: addStyle, |
| | | name: 'addStyle', |
| | | meta: { |
| | | title: '样式管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | |
| | | { |
| | | path: '/menuSettings', |
| | | component: menuSettings, |
| | | name: 'menuSettings', |
| | | meta: { |
| | | title: '菜单设置', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/rests', |
| | | component: rests, |
| | | name: 'rests', |
| | | meta: { |
| | | title: '其他设置', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/authorityManagement', |
| | | component: authorityManagement, |
| | | name: 'authorityManagement', |
| | | meta: { |
| | | title: '权限管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/safetyManagement', |
| | | component: safetyManagement, |
| | | name: 'safetyManagement', |
| | | meta: { |
| | | title: '安全管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/operationLog', |
| | | component: operationLog, |
| | | name: 'operationLog', |
| | | meta: { |
| | | title: '操作日志', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/eventlogManage', |
| | | component: eventlogManage, |
| | | name: 'eventlogManage', |
| | | meta: { |
| | | title: '事件日志管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/logLog', |
| | | path: '/logLog', |
| | | component: logLog, |
| | | name: 'logLog', |
| | | meta: { |
| | | title: '事件日志管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/blackwhiteList', |
| | | component: blackwhiteList, |
| | | name: 'blackwhiteList', |
| | | meta: { |
| | | title: '黑/白名单', |
| | | title: '登录日志', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/systemMonitoring', |
| | | component: systemMonitoring, |
| | | name: 'systemMonitoring', |
| | | meta: { |
| | | title: '系统监控', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/databaseMonitoring', |
| | | component: databaseMonitoring, |
| | | name: 'databaseMonitoring', |
| | | meta: { |
| | | title: '数据库监控', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/tokentool', |
| | | component: tokentool, |
| | | name: 'tokentool', |
| | | meta: { |
| | | title: 'Token工具', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/parameterConfiguration', |
| | | component: parameterConfiguration, |
| | | name: 'parameterConfiguration', |
| | | meta: { |
| | | title: '参数配置', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/userInfoManage', |
| | | component: userInfoManage, |
| | | name: 'userInfoManage', |
| | | meta: { |
| | | title: '用户信息管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/templateManage', |
| | | component: templateManage, |
| | | name: 'templateManage', |
| | | meta: { |
| | | title: '模板管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/orgManage', |
| | | component: orgManage, |
| | | name: 'orgManage', |
| | | meta: { |
| | | title: '组织机构管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/userAuditing', |
| | | component: userAuditing, |
| | | name: 'userAuditing', |
| | | meta: { |
| | | title: '用户审核', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/roleManage', |
| | | component: roleManage, |
| | | name: 'roleManage', |
| | | meta: { |
| | | title: '角色管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | |
| | | { |
| | | path: '/groupManage', |
| | | component: groupManage, |
| | | name: 'groupManage', |
| | | meta: { |
| | | title: '群组管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/authorityManage', |
| | | component: authorityManage, |
| | | name: 'authorityManage', |
| | | meta: { |
| | | title: '权限管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/resourceManage', |
| | | component: resourceManage, |
| | | name: 'resourceManage', |
| | | meta: { |
| | | title: '资源管理', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/userRoleAuthorization', |
| | | component: userRoleAuthorization, |
| | | name: 'userRoleAuthorization', |
| | | meta: { |
| | | title: '用户角色授权', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/menuRoleAuthorization', |
| | | component: menuRoleAuthorization, |
| | | name: 'menuRoleAuthorization', |
| | | meta: { |
| | | title: '菜单权限授权', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/roleResAuthorization', |
| | | component: roleResAuthorization, |
| | | name: 'roleResAuthorization', |
| | | meta: { |
| | | title: '菜单权限授权', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/roleMenuAuthorization', |
| | | component: roleMenuAuthorization, |
| | | name: 'roleMenuAuthorization', |
| | | meta: { |
| | | title: '菜单权限授权', |
| | | requireAuth: true, // 标识该路由是否需要登录 |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | ]; |
| | | |
| | | const router = new VueRouter({ |
| | | routes, |
| | | }); |
| | | //路由守卫 |
| | | router.beforeEach((to, from, next) => { |
| | | sessionStorage.setItem('routerName', to.path) |
| | | next(); |
| | | if (to.matched.some((auth) => auth.meta.requireAuth)) { |
| | | // 获取token |
| | | let token = getToken(); |
| | | if (token) { |
| | | next(); |
| | | } else { |
| | | next({ |
| | | path: '/login', |
| | | }); |
| | | } |
| | | } else { |
| | | next(); |
| | | } |
| | | }); |
| | | export default router; |