From 89ea93ff37fd5adcb39c7caad1101970dc78e38c Mon Sep 17 00:00:00 2001 From: hejianhao <15708179461@qq.com> Date: 星期四, 08 五月 2025 14:47:31 +0800 Subject: [PATCH] 路由冲突 --- culture/src/router/index.js | 855 ++++++++++++++++++++------------------------------------ 1 files changed, 308 insertions(+), 547 deletions(-) diff --git a/culture/src/router/index.js b/culture/src/router/index.js index 9c35f5a..d31614c 100644 --- a/culture/src/router/index.js +++ b/culture/src/router/index.js @@ -23,553 +23,314 @@ } */ -const routes = [{ - path: "/", - redirect: "/projectList/list", -}, -{ - path: "/login", - meta: { - title: "登录", - oneself: true, - hide: true, +const routes = [ + { + path: "/", + redirect: "/projectList/list", }, - component: () => import("../views/login"), -}, -{ - path: "/projectList", - meta: { - title: "项目组管理", + { + path: "/login", + meta: { + title: "登录", + oneself: true, + hide: true, + }, + component: () => import("../views/login"), }, - component: Layouts, - children: [{ - path: "list", - name: "ProjectList", + { + path: "/projectList", meta: { title: "项目组管理", }, - component: () => import("../views/projectList"), - }, - { - path: "addProject", - name: "AddProject", - meta: { - title: "新增项目组", - hide: true, - keepAlive: true, - }, - component: () => import("../views/projectList/addProject"), - } - ] -}, -{ - path: "/system", - meta: { - title: "系统管理", - }, - component: Layouts, - children: [{ - path: "user", - name: "User", - meta: { - title: "人员管理", - }, - component: () => import("../views/system/user"), - }, - { - path: "role", - name: "Role", - meta: { - title: "角色管理", - }, - component: () => import("../views/system/role"), - }, - { - path: "add-role", - name: "AddRole", - meta: { - title: "新增角色", - hide: true, - }, - component: () => import("../views/system/role/add"), - }, - { - path: "edit-role", - name: "EditRole", - meta: { - title: "编辑角色", - hide: true, - }, - component: () => import("../views/system/role/edit"), - }, - { - path: "detail-role", - name: "DetailRole", - meta: { - title: "角色详情", - hide: true, - }, - component: () => import("../views/system/role/detail"), - }, - { - path: "operation-log", - meta: { - title: "操作日志", - }, - component: () => import("../views/system/operation-log"), - }, - ] -}, -{ - path: "/strain", - component: Layouts, - meta: { - title: "菌种库", - }, - children: [{ - path: "/strain-library", - component: Parent, - meta: { - title: "菌种库管理", - }, - children: [{ - path: "strain-library-manage", - name: "StrainLibraryManage", - meta: { - title: "原始细胞库", - keepAlive: true, + component: Layouts, + children: [ + { + path: "list", + name: "ProjectList", + meta: { + title: "项目组管理", + }, + component: () => import("../views/projectList"), }, - component: () => import("../views/strain-library/strain-library-manage"), - }, - { - path: "strain-library-manage/add", - name: "StrainLibraryManageAdd", - meta: { - title: "新增原始细胞库", - keepAlive: true, - hide: true - }, - component: () => import("../views/strain-library/strain-library-manage/add.vue"), - }, - { - path: "strain-library-manage/record", - name: "StrainRecord", - meta: { - title: "出入库记录", - keepAlive: true, - hide: true - }, - component: () => import("../views/strain-library/strain-library-manage/record.vue"), - }, - { - path: "main-cell-library", - name: "MainCellLibrary", - meta: { - title: "主细胞库", - keepAlive: true, - }, - component: () => import("../views/strain-library/main-cell-library"), - }, - { - path: "main-cell-library/add", - name: "MainCellLibraryAdd", - meta: { - title: "新增主细胞", - keepAlive: true, - hide: true - }, - component: () => import("../views/strain-library/main-cell-library/add.vue"), - }, - { - path: "production-cell-library", - name: "ProductionCellLibrary", - meta: { - title: "生产细胞库", - keepAlive: true, - }, - component: () => import("../views/strain-library/production-cell-library"), - }, - { - path: "production-cell-library/add", - name: "ProductionCellLibraryAdd", - meta: { - title: "新增生产细胞", - keepAlive: true, - hide: true - }, - component: () => import("../views/strain-library/production-cell-library/add.vue"), - }, - { - path: "strain-flow-chart", - name: "StrainFlowChart", - meta: { - title: "菌种传代产生流程图", - keepAlive: true, - }, - component: () => import("../views/strain-library/strain-flow-chart"), - }, + { + path: "addProject", + name: "AddProject", + meta: { + title: "新增项目组", + hide: true, + keepAlive: true, + }, + component: () => import("../views/projectList/addProject"), + } ] }, { - path: 'pedigree-vhart', - name: 'PedigreeChart', + path: "/system", meta: { - title: "菌种传代生产谱系图", + title: "系统管理", }, - component: () => import("../views/pedigree-chart"), - } - ] -}, - -{ - path: "/dataManagement", - component: Layouts, - meta: { - title: "实验室数据管理", - }, - children: [{ - path: "approvalPlan", - meta: { - title: "项目课题方案审批", - keepAlive: true, - }, - component: () => import("../views/dataManagement/approvalPlan/list.vue"), + component: Layouts, + children: [ + { + path: "user", + name: "User", + meta: { + title: "人员管理", + }, + component: () => import("../views/system/user"), + }, + { + path: "role", + name: "Role", + meta: { + title: "角色管理", + }, + component: () => import("../views/system/role"), + }, + { + path: "add-role", + name: "AddRole", + meta: { + title: "新增角色", + hide: true, + }, + component: () => import("../views/system/role/add"), + }, + { + path: "edit-role", + name: "EditRole", + meta: { + title: "编辑角色", + hide: true, + }, + component: () => import("../views/system/role/edit"), + }, + { + path: "detail-role", + name: "DetailRole", + meta: { + title: "角色详情", + hide: true, + }, + component: () => import("../views/system/role/detail"), + }, + { + path: "operation-log", + meta: { + title: "操作日志", + }, + component: () => import("../views/system/operation-log"), + }, + ] }, { - path: "addPlan", - name: "addPlan", + path: "/strain", + component: Layouts, meta: { - title: "新增项目课题方案", - hide: true, - keepAlive: true, + title: "菌种库", }, - component: () => import("../views/dataManagement/approvalPlan/addPlan"), - }, - { - path: "dispatching", + children: [ + { + path: "/strain-library", + component: Parent, + meta: { + title: "菌种库管理", + }, + children: [ + { + path: "strain-library-manage", + name: "StrainLibraryManage", + meta: { + title: "原始细胞库", + keepAlive: true, + }, + component: () => import("../views/strain-library/strain-library-manage"), + }, + { + path: "strain-library-manage/add", + name: "StrainLibraryManageAdd", + meta: { + title: "新增原始细胞库", + keepAlive: true, + hide: true + }, + component: () => import("../views/strain-library/strain-library-manage/add.vue"), + }, + { + path: "strain-library-manage/record", + name: "StrainRecord", + meta: { + title: "出入库记录", + keepAlive: true, + hide: true + }, + component: () => import("../views/strain-library/strain-library-manage/record.vue"), + }, + { + path: "main-cell-library", + name: "MainCellLibrary", + meta: { + title: "主细胞库", + keepAlive: true, + }, + component: () => import("../views/strain-library/main-cell-library"), + }, + { + path: "main-cell-library/add", + name: "MainCellLibraryAdd", + meta: { + title: "新增主细胞", + keepAlive: true, + hide: true + }, + component: () => import("../views/strain-library/main-cell-library/add.vue"), + }, + { + path: "production-cell-library", + name: "ProductionCellLibrary", + meta: { + title: "生产细胞库", + keepAlive: true, + }, + component: () => import("../views/strain-library/production-cell-library"), + }, + { + path: "production-cell-library/add", + name: "ProductionCellLibraryAdd", + meta: { + title: "新增生产细胞", + keepAlive: true, + hide: true + }, + component: () => import("../views/strain-library/production-cell-library/add.vue"), + } + ] + }, + { + path: 'pedigree-vhart', + name: 'PedigreeChart', + meta: { + title: "菌种传代生产谱系图", + }, + component: () => import("../views/pedigree-chart"), + }, + { + path: 'add-pedigree', + name: 'AddPedigree', + meta: { + title: "新增菌种传代生产谱系图", + }, + component: () => import("../views/pedigree-chart/add"), + }, + { + path: 'add-pedigree', + name: 'AddPedigree', + meta: { + title: "新增菌种传代生产谱系图", + }, + component: () => import("../views/pedigree-chart/add"), + } + ] + }, { + path: "/strainReportLibrary", + component: Layouts, meta: { - title: "实验调度管理", - keepAlive: true, + title: "菌种报告库", }, - component: () => import("../views/dataManagement/dispatching/list.vue"), - }, - { - path: "addDispatch", - meta: { - title: "新增实验调度", - hide: true, - keepAlive: true, - }, - component: () => import("../views/dataManagement/dispatching/addDispatch"), - }, - { - path: "confirmation-sheet", - name: "ConfirmationSheet", - meta: { - title: "检验方法确认单", - }, - component: () => import("../views/dataManagement/confirmation-sheet"), - }, - { - path: "confirmation-sheet/add", - name: "AddConfirmationSheet", - meta: { - title: "检验方法确认单", - }, - component: () => import("../views/dataManagement/confirmation-sheet/components/add.vue"), - }, - { - path: "/sampleManage", - meta: { - title: "样品管理", - // keepAlive: true, - }, - component: Parent, children: [{ - path: "manage", + path: "reportLibraryOne", meta: { - title: "样品管理", + title: "报告库一", keepAlive: true, }, - component: () => import("../views/dataManagement/sampleManage/list.vue"), + component: () => import("../views/strainReportLibrary/reportLibraryOne/index.vue"), }, { - path: "addSample", - name: "addPaddSamplelan", + path: "add", meta: { - title: "新增样品", + title: "新增报告", hide: true, keepAlive: true, }, - component: () => import("../views/dataManagement/sampleManage/addSample"), - }, { - path: "record", - meta: { - title: "取样操作记录列表", - keepAlive: true, - }, - component: () => import("../views/dataManagement/sampleRecordList/list.vue"), + component: () => import("../views/strainReportLibrary/reportLibraryOne/add.vue"), }, { - path: "changeRecord", - name: "changeRecord", + path: "reportLibraryTwo", meta: { - title: "填写取样操作记录", + title: "报告库二", + keepAlive: true, + }, + component: () => import("../views/strainReportLibrary/reportLibraryOneTWO/index.vue"), + }, + { + path: "addTwo", + meta: { + title: "新增报告", hide: true, keepAlive: true, }, - component: () => import("../views/dataManagement/sampleRecordList/changeRecord"), - }, { - path: "submissionList", - meta: { - title: "送样单列表", - keepAlive: true, - }, - component: () => import("../views/dataManagement/sampleSubmissionList/list.vue"), + component: () => import("../views/strainReportLibrary/reportLibraryOneTWO/add.vue"), }, { - path: "submission", - name: "submission", + path: "reportLibraryThree", meta: { - title: "送样单详情", + title: "报告库三", + keepAlive: true, + }, + component: () => import("../views/strainReportLibrary/reportLibraryOneThree/index.vue"), + }, + { + path: "addThree", + meta: { + title: "新增报告", hide: true, keepAlive: true, }, - component: () => import("../views/dataManagement/sampleSubmissionList/submission"), + component: () => import("../views/strainReportLibrary/reportLibraryOneThree/add.vue"), + }, + { + path: "reportLibraryFour", + meta: { + title: "报告库四", + keepAlive: true, + }, + component: () => import("../views/strainReportLibrary/reportLibraryOneFour/index.vue"), + }, + { + path: "addFour", + meta: { + title: "新增报告", + hide: true, + keepAlive: true, + }, + component: () => import("../views/strainReportLibrary/reportLibraryOneFour/add.vue"), + }, + + ], + }, + { + path: "/deliveryAssessment", + component: Layouts, + meta: { + title: "菌种报告评定", + }, + children: [{ + path: "projectTeamIntegral", + meta: { + title: "菌种项目组评定表", + }, + component: () => import("../views/deliveryAssessment/projectTeamIntegral"), + }, + { + path: "projectTeamIntegral-detail", + meta: { + title: "评定详情", + hide: true + }, + component: () => import("../views/deliveryAssessment/projectTeamIntegral/detail.vue"), }, ] - - }, - { - path: "deliveryRecord", - meta: { - title: "取样送样记录", - keepAlive: true, - }, - component: () => import("../views/dataManagement/SampleDeliveryRecord/list.vue"), - }, - { - path: "delivery", - name: "delivery", - meta: { - title: "送样详情", - hide: true, - keepAlive: true, - }, - component: () => import("../views/dataManagement/SampleDeliveryRecord/deliveryRecord"), - }, - { - path: "originalRecordTest", - meta: { - title: "原始检验记录", - keepAlive: true, - }, - component: () => import("../views/dataManagement/originalRecordTest/list.vue"), - }, - { - path: "originalRecordTest/detail", - name: "OriginalRecordTestDetail", - meta: { - title: "原始检验记录详情", - hide: true, - keepAlive: true, - }, - component: () => import("../views/dataManagement/originalRecordTest/detail.vue"), - }, - { - path: "inspectionReport", - meta: { - title: "检验报告管理", - keepAlive: true, - }, - component: () => import("../views/dataManagement/inspectionReport/list.vue"), - }, - { - path: "inspectionReport/detail", - name: "inspectionReportDetail", - meta: { - title: "检验报告详情", - hide: true, - keepAlive: true, - }, - component: () => import("../views/dataManagement/inspectionReport/detail.vue"), - }, - { - path: "testResultReport", - meta: { - title: "实验结果汇报", - keepAlive: true, - }, - component: () => import("../views/dataManagement/testResultReport/list.vue"), - }, - { - path: "testResultReport/detail", - name: "testResultReportDetail", - meta: { - title: "实验结果详情", - hide: true, - keepAlive: true, - }, - component: () => import("../views/dataManagement/testResultReport/detail.vue"), - }, - ], -}, -{ - path: "/reportLibrary", - component: Layouts, - meta: { - title: "专业报告库审批", - }, - children: [{ - path: "feasibilityStudy", - meta: { - title: "可研报告库", - keepAlive: true, - }, - component: () => import("../views/reportLibrary/feasibilityStudy/index.vue"), - }, - { - path: "add", - meta: { - title: "新增可行报告", - hide: true, - keepAlive: true, - }, - component: () => import("../views/reportLibrary/feasibilityStudy/add.vue"), - }, - { - path: "feasibilityReport", - meta: { - title: "可行报告库", - keepAlive: true, - }, - component: () => import("../views/reportLibrary/feasibilityReport/index.vue"), - }, - { - path: "processDevelopment", - meta: { - title: "工艺开发工具", - keepAlive: true, - }, - component: () => import("../views/reportLibrary/processDevelopment/index.vue"), - }, - { - path: "verificationRelease", - meta: { - title: "验证与发布", - keepAlive: true, - }, - component: () => import("../views/reportLibrary/verificationRelease/index.vue"), - }, - { - path: "projectProposalLibrary", - meta: { - title: "立项报告库", - keepAlive: true, - }, - component: () => import("../views/reportLibrary/projectProposalLibrary/index.vue"), - }, - ], -}, { - path: "/strainReportLibrary", - component: Layouts, - meta: { - title: "菌种报告库", - }, - children: [{ - path: "reportLibraryOne", - meta: { - title: "报告库一", - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOne/index.vue"), - }, - { - path: "add", - meta: { - title: "新增报告", - hide: true, - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOne/add.vue"), - }, - { - path: "reportLibraryTwo", - meta: { - title: "报告库二", - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneTWO/index.vue"), - }, - { - path: "addTwo", - meta: { - title: "新增报告", - hide: true, - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneTWO/add.vue"), - }, - { - path: "reportLibraryThree", - meta: { - title: "报告库三", - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneThree/index.vue"), - }, - { - path: "addThree", - meta: { - title: "新增报告", - hide: true, - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneThree/add.vue"), - }, - { - path: "reportLibraryFour", - meta: { - title: "报告库四", - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneFour/index.vue"), - }, - { - path: "addFour", - meta: { - title: "新增报告", - hide: true, - keepAlive: true, - }, - component: () => import("../views/strainReportLibrary/reportLibraryOneFour/add.vue"), - }, - - ], -}, -{ - path: "/deliveryAssessment", - component: Layouts, - meta: { - title: "菌种报告评定", - }, - children: [{ - path: "projectTeamIntegral", - meta: { - title: "菌种项目组评定表", - }, - component: () => import("../views/deliveryAssessment/projectTeamIntegral"), - }, - { - path: "projectTeamIntegral-detail", - meta: { - title: "评定详情", - hide: true - }, - component: () => import("../views/deliveryAssessment/projectTeamIntegral/detail.vue"), - }, - ] -} + } ]; const router = new VueRouter({ @@ -584,50 +345,50 @@ document.title = to.meta.title || '实验室流程'; // 登录验证 - if (to.path === "/login") { - sessionStorage.clear(); - next() - } else if (!sessionStorage.getItem('token')) { - next('/login') - } else { - // 判断是否拥有要跳转菜单权限 - let menus = store.state.menus - if (to.meta.hasOwnProperty('privilege') && !menus.includes(to.meta.privilege)) { - return - } + // if (to.path === "/login") { + // sessionStorage.removeItem('userInfo') + // next() + // } else if (!sessionStorage.getItem('userInfo')) { + // next('/login') + // } else { + // // 判断是否拥有要跳转菜单权限 + // let menus = store.state.menus + // if (to.meta.hasOwnProperty('privilege') && !menus.includes(to.meta.privilege)) { + // return + // } - // 设置标签列表 - if (!to.meta.hide || !to.meta.oneself) { - let tagList = JSON.parse(sessionStorage.getItem('tagList') || '[]') - // 判断是否存在 - let isExist = tagList.some(item => item.path === to.path) - if (!isExist) { - // 只保存必要的信息 - const tagInfo = { - path: to.path, - name: to.name, - meta: to.meta - } - tagList.push(tagInfo) - sessionStorage.setItem('tagList', JSON.stringify(tagList)) - store.commit('SET_TAGLIST', tagList) + // 设置标签列表 + if (!to.meta.hide || !to.meta.oneself) { + let tagList = JSON.parse(sessionStorage.getItem('tagList') || '[]') + // 判断是否存在 + let isExist = tagList.some(item => item.path === to.path) + if (!isExist) { + // 只保存必要的信息 + const tagInfo = { + path: to.path, + name: to.name, + meta: to.meta } + tagList.push(tagInfo) + sessionStorage.setItem('tagList', JSON.stringify(tagList)) + store.commit('SET_TAGLIST', tagList) } - - // 判断是否需要缓存 - if (to.meta.keepAlive) { - let keepAliveList = JSON.parse(sessionStorage.getItem('keepAliveList') || '[]') - // 判断是否已经缓存 - let isExist = keepAliveList.includes(to.name) - if (!isExist) { - keepAliveList.push(to.name) - sessionStorage.setItem('keepAliveList', JSON.stringify(keepAliveList)) - store.commit('SET_KEEPALIVELIST', keepAliveList) - } - } - - next() } + + // 判断是否需要缓存 + if (to.meta.keepAlive) { + let keepAliveList = JSON.parse(sessionStorage.getItem('keepAliveList') || '[]') + // 判断是否已经缓存 + let isExist = keepAliveList.includes(to.name) + if (!isExist) { + keepAliveList.push(to.name) + sessionStorage.setItem('keepAliveList', JSON.stringify(keepAliveList)) + store.commit('SET_KEEPALIVELIST', keepAliveList) + } + } + + next() + // } }); -export default router; \ No newline at end of file +export default router; -- Gitblit v1.7.1