From 5a813f3b28f3cbf1db3a3657ccf83267c6e0d315 Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期四, 24 十月 2024 11:22:02 +0800 Subject: [PATCH] 工艺路线相关优化 --- src/store/modules/multipleTab.ts | 33 ++++++++++++++++++++++----------- 1 files changed, 22 insertions(+), 11 deletions(-) diff --git a/src/store/modules/multipleTab.ts b/src/store/modules/multipleTab.ts index 0a04c2a..9885459 100644 --- a/src/store/modules/multipleTab.ts +++ b/src/store/modules/multipleTab.ts @@ -2,18 +2,19 @@ import { toRaw, unref } from 'vue'; import { defineStore } from 'pinia'; -import { store } from '/@/store'; +import { store } from '@/store'; -import { useGo, useRedo } from '/@/hooks/web/usePage'; -import { Persistent } from '/@/utils/cache/persistent'; +import { useGo, useRedo } from '@/hooks/web/usePage'; +import { Persistent } from '@/utils/cache/persistent'; -import { PageEnum } from '/@/enums/pageEnum'; -import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE } from '/@/router/routes/basic'; -import { getRawRoute } from '/@/utils'; -import { MULTIPLE_TABS_KEY } from '/@/enums/cacheEnum'; +import { PageEnum } from '@/enums/pageEnum'; +import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE } from '@/router/routes/basic'; +import { getRawRoute } from '@/utils'; +import { MULTIPLE_TABS_KEY } from '@/enums/cacheEnum'; -import projectSetting from '/@/settings/projectSetting'; -import { useUserStore } from '/@/store/modules/user'; +import projectSetting from '@/settings/projectSetting'; +import { useUserStore } from '@/store/modules/user'; +import { useProdRouteStore } from './prodRoute'; export interface MultipleTabState { cacheTabList: Set<string>; @@ -85,6 +86,13 @@ const { currentRoute } = router; const route = unref(currentRoute); const name = route.name; + const useProdRoute = useProdRouteStore(); + useProdRoute.setChangeToCPPage(false); + // 浠巗essionStorage涓鍙栧弬鏁板苟杞崲鍥炲璞� + const savedParams = sessionStorage.getItem(`${JSON.parse(decodeURI(route.params.id[0]))['sName']}_params`); + const objParams = savedParams ? JSON.parse(decodeURI(savedParams)) : {}; + useProdRoute.setCurProdRotTree({ name: objParams['CODE'], treeInfo: [] }); + useProdRoute.setCurSelectedNodes({ name: objParams['CODE'], SelectedNodes: [] }); const findTab = this.getCachedTabList.find((item) => item === name); if (findTab) { @@ -134,7 +142,9 @@ // Existing pages, do not add tabs repeatedly const tabHasExits = this.tabList.some((tab, index) => { updateIndex = index; - return (tab.fullPath || tab.path) === (fullPath || path); + return ( + decodeURIComponent(tab.fullPath || tab.path) === decodeURIComponent(fullPath || path) + ); }); // If the tab already exists, perform the update operation @@ -308,7 +318,7 @@ for (const path of closePathList) { if (path !== route.fullPath) { - const closeItem = this.tabList.find((item) => item.path === path); + const closeItem = this.tabList.find((item) => item.fullPath === path); if (!closeItem) { continue; } @@ -320,6 +330,7 @@ } this.bulkCloseTabs(pathList); this.updateCacheTab(); + Persistent.setLocal(MULTIPLE_TABS_KEY, this.tabList, true); handleGotoPage(router); }, -- Gitblit v1.9.3