123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248 |
- import { createRouter, createWebHistory, isNavigationFailure } from "vue-router";
- import Login from "@/views/Login/Login.vue";
- import AppCopy from "@/views/AppCopy.vue";
- import HomeView from "@/views/HomeView.vue";
- import Layout from "@/views/KMPlatform/Layout.vue";
- import Home from "@/views/KMPlatform/Home/Home.vue";
- import KGBuilder from "@/views/KMPlatform/KGBuilder/KGBuilder.vue";
- import KnowledgeBase from "@/views/KMPlatform/KnowledgeBase/KnowledgeBase.vue";
- import OpenPlatform from "@/views/KMPlatform/OpenPlatform/OpenPlatform.vue";
- import TerminologyManagement from "@/views/KMPlatform/KGBuilder/TM/TerminologyManagement.vue";
- import EntityTypeManagement from "@/views/KMPlatform/KGBuilder/ETM/EntityTypeManagement.vue";
- import KnowledgeBaseManagement from "@/views/KMPlatform/KnowledgeBase/KBM/KnowledgeBaseManagement.vue";
- import KnowledgeManagement from "@/views/KMPlatform/KnowledgeBase/KM/KnowledgeManagement.vue";
- import AccountManage from "@/views/KMPlatform/Permission/AccountManage.vue";
- import PermissionManage from "@/views/KMPlatform/Permission/permission.vue";
- import RoleManage from "@/views/KMPlatform/Permission/RoleManage.vue";
- import EntityRelationshipTypeManagement from '@/views/KMPlatform/KGBuilder/KRTM/EntityRelationshipTypeManagement.vue'
- import { getSessionVar, deleteSessionVar } from "@/utils/session";
- const router = createRouter({
- history: createWebHistory(import.meta.env.BASE_URL),
- routes: [
- {
- path: "/",
- redirect: "/kmplatform/home",
- meta: {
- auth: false,
- }
- },
- {
- path: "/login",
- name: "login",
- component: Login,
- meta: {
- auth: false,
- }
- },
- {
- path: "/kmplatform",
- name: "kmplatform",
- component: Layout,
- // redirect: "/kmplatform/home",
- meta: {
- auth: false,
- },
- children: [
- {
- path: "home",
- name: "kmplatform-home",
- meta: {
- title: "主页",
- auth: true,
- },
- component: Home,
- children: [],
- },
- {
- path: "knowledgebase",
- name: "knowledgebase",
- meta: {
- title: "知识库",
- keepAlive: true,
- auth: true,
- },
- component: KnowledgeBase,
- redirect: "/kmplatform/knowledgebase/kbm",
- children: [
- {
- path: "kbm",
- name: "kbm",
- meta: {
- title: "知识库",
- keepAlive: true,
- auth: true,
- },
- component: KnowledgeBaseManagement,
- },
- {
- path: "km/:kbId",
- name: "km",
- meta: {
- title: "知识库",
- keepAlive: false,
- auth: true,
- },
- component: KnowledgeManagement,
- },
- ],
- },
- {
- path: "kgbuilder",
- name: "kgbuilder",
- meta: {
- title: "知识图谱构建",
- auth: true,
- },
- redirect: "/kmplatform/kgbuilder/home",
- component: AppCopy,
- children: [
- {
- path: "home",
- name: "home",
- component: HomeView,
- meta: {
- auth: true,
- },
- },
- {
- path: "workspace",
- name: "workspace",
- component: () => import("@/views/WorkspaceView.vue"),
- children: [
- {
- path: "queue/:id",
- name: "queue",
- component: () => import("@/views/QueueView.vue"),
- meta: {
- auth: true,
- },
- },
- {
- path: "worker",
- name: "worker",
- component: () => import("@/views/WorkerView.vue"),
- meta: {
- auth: true,
- },
- },
- {
- path: "graph",
- name: "graph",
- component: () => import("@/views/GraphView.vue"),
- meta: {
- auth: true,
- },
- },
- {
- path: "graph-mgr/:id",
- name: "graph-mgr",
- component: () => import("@/views/GraphManagement.vue"),
- meta: {
- auth: true,
- },
- },
- ],
- },
- {
- path: "about",
- name: "about",
- component: () => import("@/views/AboutView.vue"),
- meta: {
- auth: true,
- },
- },
- ]
- },
- {
- path: "openplatform",
- name: "openplatform",
- redirect: "/kmplatform/openplatform/queue/0",
- meta: {
- title: "开放平台",
- auth: false,
- },
- component: OpenPlatform,
- children: [
- {
- path: "queue/:id",
- name: "platformText",
- component: () => import("@/views/KMPlatform/OpenPlatform/platformText.vue"),
- meta: {
- auth: false,
- },
- },
- ],
- },
- {
- path: "kgpermission",
- name: "kgpermission",
- meta: {
- title: "系统权限",
- auth: true,
- },
- redirect: "/kmplatform/kgpermission/AccountManage",
- component: PermissionManage,
- children: [
- {
- path: "RoleManage",
- name: "kgb-RoleManage",
- meta: {
- title: "角色管理",
- auth: true,
- },
- component: RoleManage,
- },
- {
- path: "AccountManage",
- name: "kgb-AccountManage",
- meta: {
- title: "账号管理",
- auth: true,
- },
- component: AccountManage,
- },
- {
- path: "Organizational",
- name: "kgb-Organizational",
- meta: {
- title: "账号管理",
- auth: true,
- },
- component: () => import("@/views/KMPlatform/Permission/Organizational.vue"),
- },
- ],
- },
- ],
- },
- ],
- });
- function isLogin() {
- return getSessionVar("session_id") == null &&
- getSessionVar("username") == null
- }
- router.beforeEach((to, from, next) => {
- if (isLogin()) {
- // console.log("a,", to.meta && to.name !== 'login')
- if (to.meta.auth && to.name !== 'login') {
- next({ name: 'login' });
- } else {
- next()
- }
- } else {
- next()
- }
- });
- router.afterEach((to, from, failure) => {
- if (isNavigationFailure(failure)) {
- console.log('failed navigation', failure)
- } else {
- to.meta.title ? (document.title = to.meta.title as string) : document.title = '知识图谱自动化构建平台'
- }
- })
- export default router;
|