diff --git a/src/router/modules/device.ts b/src/router/modules/device.ts index dfd8e27..04dd4d0 100644 --- a/src/router/modules/device.ts +++ b/src/router/modules/device.ts @@ -85,11 +85,31 @@ name: 'standingBookDetail', component: () => import('@/views/device/standingBook/components/templateAdd.vue'), meta: { - title: '设备台账', + title: '设备台账公用详情/编辑/新建', icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/standingBook', + activeMenu: '/standingBook/measureDevice', + }, + // 独享守卫,根据form的路由动态修改meta中的activeMenu + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'measureDevice': + to.meta.activeMenu = '/standingBook/measureDevice' + break + case 'standardMatchDevice': + to.meta.activeMenu = '/standingBook/standardMatchDevice' + break + case 'adjustDevice': + to.meta.activeMenu = '/standingBook/adjustDevice' + break + case 'measureTool': + to.meta.activeMenu = '/standingBook/measureTool' + break + } + next() }, }, { @@ -111,7 +131,7 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/standingBook', + activeMenu: '/standingBook/fixedAssets', }, }, ], @@ -265,11 +285,39 @@ name: 'stateManageDetail', component: () => import('@/views/device/stateManage/components/templateAdd.vue'), meta: { - title: '状态管理', + title: '状态管理公用详情/编辑/新建', icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/stateManage', + activeMenu: '/stateManage/unusedApply', + }, + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'unusedApply': + to.meta.activeMenu = '/stateManage/unusedApply' + break + case 'sealupApply': + to.meta.activeMenu = '/stateManage/sealupApply' + break + case 'openApply': + to.meta.activeMenu = '/stateManage/openApply' + break + case 'scrapApply': + to.meta.activeMenu = '/stateManage/scrapApply' + break + case 'handleApply': + to.meta.activeMenu = '/stateManage/handleApply' + break + case 'borrowapply': + to.meta.activeMenu = '/borrow/borrowapply' + break + case 'borrowhandle': + to.meta.activeMenu = '/borrow/borrowhandle' + break + } + next() }, }, ], diff --git a/src/router/modules/device.ts b/src/router/modules/device.ts index dfd8e27..04dd4d0 100644 --- a/src/router/modules/device.ts +++ b/src/router/modules/device.ts @@ -85,11 +85,31 @@ name: 'standingBookDetail', component: () => import('@/views/device/standingBook/components/templateAdd.vue'), meta: { - title: '设备台账', + title: '设备台账公用详情/编辑/新建', icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/standingBook', + activeMenu: '/standingBook/measureDevice', + }, + // 独享守卫,根据form的路由动态修改meta中的activeMenu + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'measureDevice': + to.meta.activeMenu = '/standingBook/measureDevice' + break + case 'standardMatchDevice': + to.meta.activeMenu = '/standingBook/standardMatchDevice' + break + case 'adjustDevice': + to.meta.activeMenu = '/standingBook/adjustDevice' + break + case 'measureTool': + to.meta.activeMenu = '/standingBook/measureTool' + break + } + next() }, }, { @@ -111,7 +131,7 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/standingBook', + activeMenu: '/standingBook/fixedAssets', }, }, ], @@ -265,11 +285,39 @@ name: 'stateManageDetail', component: () => import('@/views/device/stateManage/components/templateAdd.vue'), meta: { - title: '状态管理', + title: '状态管理公用详情/编辑/新建', icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/device/stateManage', + activeMenu: '/stateManage/unusedApply', + }, + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'unusedApply': + to.meta.activeMenu = '/stateManage/unusedApply' + break + case 'sealupApply': + to.meta.activeMenu = '/stateManage/sealupApply' + break + case 'openApply': + to.meta.activeMenu = '/stateManage/openApply' + break + case 'scrapApply': + to.meta.activeMenu = '/stateManage/scrapApply' + break + case 'handleApply': + to.meta.activeMenu = '/stateManage/handleApply' + break + case 'borrowapply': + to.meta.activeMenu = '/borrow/borrowapply' + break + case 'borrowhandle': + to.meta.activeMenu = '/borrow/borrowhandle' + break + } + next() }, }, ], diff --git a/src/router/modules/measure.ts b/src/router/modules/measure.ts index 759009e..2a52c16 100644 --- a/src/router/modules/measure.ts +++ b/src/router/modules/measure.ts @@ -98,7 +98,33 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/measure/file', + activeMenu: '/file/quality', + }, + // 独享守卫,根据form的路由动态修改meta中的activeMenu + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'quality': + to.meta.activeMenu = '/file/quality' + break + case 'rules': + to.meta.activeMenu = '/file/rules' + break + case 'remind': + to.meta.activeMenu = '/file/quality' + break + case 'manageMethod': + to.meta.activeMenu = '/file/manageMethod' + break + case 'testingMethod': + to.meta.activeMenu = '/file/testingMethod' + break + case 'measureRule': + to.meta.activeMenu = '/file/measureRule' + break + } + next() }, }, { @@ -143,7 +169,7 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/measure/person', + activeMenu: '/person/list', }, }, { @@ -165,7 +191,21 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/measure/person', + activeMenu: '/measure/person/certificateLog', + }, + // 独享守卫,根据form的路由动态修改meta中的activeMenu + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + console.log(type) + switch (type) { + case 'certificateLog': + to.meta.activeMenu = '/person/certificateLog' + break + case 'remind': + to.meta.activeMenu = '/person/remind' + break + } + next() }, }, { @@ -297,7 +337,24 @@ icon: 'ep:key', sidebar: false, breadcrumb: true, - activeMenu: '/measure/measureDept', + activeMenu: '/measureDept/bm', + }, + // 独享守卫,根据form的路由动态修改meta中的activeMenu + // 当不同页面中 使用了相同的 编辑/详情路由 + beforeEnter: (to, from, next) => { + const type = from.path.split('/')[from.path.split('/').length - 1] + switch (type) { + case 'bm': + to.meta.activeMenu = '/measureDept/bm' + break + case 'ks': + to.meta.activeMenu = '/measureDept/ks' + break + case 'gcz': + to.meta.activeMenu = '/measureDept/gcz' + break + } + next() }, }, ],