diff --git a/mes-ui/mes-ui-admin-vue3/src/utils/routeParamsCache.ts b/mes-ui/mes-ui-admin-vue3/src/utils/routeParamsCache.ts index 8140d125..cbbe8615 100644 --- a/mes-ui/mes-ui-admin-vue3/src/utils/routeParamsCache.ts +++ b/mes-ui/mes-ui-admin-vue3/src/utils/routeParamsCache.ts @@ -1,6 +1,6 @@ import { pa } from 'element-plus/es/locale'; import { reactive } from 'vue'; -import type { RouteLocationNormalized } from 'vue-router'; +// import type { String } from 'vue-router'; export type QueryParams = { pageNo: number; @@ -25,8 +25,8 @@ type CachedParams = { const DEFAULT_EXPIRE_HOURS = 24; const ROUTE_PARAMS_CACHE_KEY = 'route_params_cache_v2'; // 加个版本号避免冲突 // 生成唯一缓存键(包含路径和查询参数) -const getCacheKey = (route: RouteLocationNormalized) => { - return `${route.path}?${JSON.stringify(route.query)}`; +const getCacheKey = (route: String) => { + return route; }; // 初始化缓存(从 sessionStorage 加载) const saveCache = (cache: Map) => { @@ -39,11 +39,11 @@ const saveCache = (cache: Map) => { }, ]) ); - localStorage.setItem(ROUTE_PARAMS_CACHE_KEY, JSON.stringify(serializable)); + sessionStorage.setItem(ROUTE_PARAMS_CACHE_KEY, JSON.stringify(serializable)); }; const initCache = (): Map => { - const cached = localStorage.getItem(ROUTE_PARAMS_CACHE_KEY); + const cached = sessionStorage.getItem(ROUTE_PARAMS_CACHE_KEY); if (!cached) return new Map(); try { @@ -66,8 +66,7 @@ const initCache = (): Map => { const routeParamsCache = { cache: initCache(), - set(route: RouteLocationNormalized, params: QueryParams) { - console.log('调用了') + set(route: String, params: QueryParams) { const path = getCacheKey(route); // 使用路由对象生成唯一键 const cachedParams: CachedParams = { queryParams: JSON.parse(JSON.stringify(params)), @@ -77,7 +76,8 @@ const routeParamsCache = { saveCache(this.cache); }, - get(route: RouteLocationNormalized) { + get(route: String) { + console.log(route) const path = getCacheKey(route); return this.cache.get(path)?.queryParams; // 简化返回 }, diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/PriceQuoteRecord/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/PriceQuoteRecord/index.vue index a7ca9f92..f92d061b 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/PriceQuoteRecord/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/PriceQuoteRecord/index.vue @@ -263,8 +263,10 @@ const handleExport = async () => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -272,11 +274,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/index.vue index 56493ddd..03377514 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/index.vue @@ -350,8 +350,10 @@ const getOrderProperty = (property) => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -359,11 +361,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/fpuserdetail/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/fpuserdetail/index.vue index fe3ffa6a..6c1d0722 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/fpuserdetail/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/fpuserdetail/index.vue @@ -200,8 +200,10 @@ const handleDelete = async (id: number) => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -209,11 +211,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/inspectionreport/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/inspectionreport/index.vue index b5db4762..2ad0140c 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/inspectionreport/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/inspectionreport/index.vue @@ -159,8 +159,10 @@ const openDetail = (type: string, id?: number) => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -168,11 +170,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/management.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/management.vue index 445b0d36..4813534e 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/management.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/management.vue @@ -7,11 +7,13 @@ - - @@ -69,7 +71,8 @@ - @@ -174,8 +177,10 @@ const handleDelete = async (id: number) => { const userInit = ref() /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -185,11 +190,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue index 87540955..2f279695 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue @@ -7,11 +7,13 @@ - - @@ -72,7 +74,8 @@ - @@ -179,8 +182,10 @@ const handleDelete = async (id: number) => { const userInit = ref() /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -190,11 +195,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue index 9ef3c3cf..0da1e84d 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue @@ -192,8 +192,10 @@ const handleExport = async () => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -201,11 +203,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/outsourcestock/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/outsourcestock/index.vue index 91dd201c..eb89585e 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/outsourcestock/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/outsourcestock/index.vue @@ -239,8 +239,10 @@ const handleExport = async () => { /** 初始化 **/ const route = useRoute() +const routeValue = ref('') onMounted(async () => { let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } @@ -248,11 +250,11 @@ onMounted(async () => { }) onBeforeUnmount(() => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/index.vue index c2383f1c..6c4c1830 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/plan/index.vue @@ -305,23 +305,27 @@ const userInit = ref() const route = useRoute() +const routeValue = ref('') onMounted(async () => { userInit.value = await UserApi.getSimpleUserList() let params = routeParamsCache.get(route.path); + routeValue.value = route.path if (params ) { Object.assign(queryParams, params); } + routeValue.value = route.path await getList() }); onBeforeUnmount(() => { + console.log(route.path) const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); }); window.addEventListener('beforeunload', () => { const plainParams = JSON.parse(JSON.stringify(queryParams)); - routeParamsCache.set(route.path, plainParams); + routeParamsCache.set(routeValue.value, plainParams); });