diff --git a/src/pages/product/ProductDetail.vue b/src/pages/product/ProductDetail.vue index 961db7c..8a7e270 100644 --- a/src/pages/product/ProductDetail.vue +++ b/src/pages/product/ProductDetail.vue @@ -147,10 +147,25 @@ async function edit(): Promise { async function viewStock(): Promise { if (product.value?.id) { - await router.push(`/management/product-stocks/${product.value.id}`); + await router.push({ + name: "ProductStockDetail", + params: { productId: product.value.id }, + query: { transitionDepth: String(getCurrentRouteDepth() + 1) } + }); } } +function getCurrentRouteDepth(): number { + const transitionDepth = Array.isArray(route.query.transitionDepth) + ? route.query.transitionDepth[0] + : route.query.transitionDepth; + const depth = Number(transitionDepth); + if (transitionDepth && Number.isInteger(depth) && 0 <= depth && depth <= 20) { + return depth; + } + return Number(route.meta.depth ?? 0); +} + function disable(): void { const id = product.value?.id; if (!id) { diff --git a/src/pages/product/ProductStockDetail.vue b/src/pages/product/ProductStockDetail.vue index fc8d62e..1b3fc91 100644 --- a/src/pages/product/ProductStockDetail.vue +++ b/src/pages/product/ProductStockDetail.vue @@ -2,12 +2,12 @@