From 6ee49ce9acc0dd83bb7c8aa42470ce22217af826 Mon Sep 17 00:00:00 2001 From: "pikachu1995@126.com" Date: Wed, 22 Jul 2026 17:52:11 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E4=BC=98=E5=8C=96=E5=BA=97?= =?UTF-8?q?=E9=93=BA=E7=AE=A1=E7=90=86=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=B9=B6=E8=BF=9B=E8=A1=8C=E7=95=8C=E9=9D=A2=E6=94=B9=E9=80=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seller/src/api/shops.js | 2 +- seller/src/libs/util.js | 43 +- seller/src/router/router.js | 37 ++ seller/src/views/Main.vue | 5 +- seller/src/views/goods/goods-seller/goods.vue | 5 + seller/src/views/home/home.scss | 177 +++--- seller/src/views/home/home.vue | 290 ++++++--- .../shrinkable-menu/shrinkable-menu.vue | 48 +- seller/src/views/main.scss | 18 +- .../order/after-order/returnGoodsOrder.vue | 5 + .../order/after-order/returnMoneyOrder.vue | 5 + seller/src/views/order/order/orderList.vue | 5 + .../views/procurement/purchase-order/list.vue | 599 +++++++++--------- seller/src/views/shop/bill/storeBill.vue | 62 +- 14 files changed, 820 insertions(+), 481 deletions(-) diff --git a/seller/src/api/shops.js b/seller/src/api/shops.js index c5c2f695..b746443e 100644 --- a/seller/src/api/shops.js +++ b/seller/src/api/shops.js @@ -24,7 +24,7 @@ export const getSellerFlow = (id, params) => { // 商家核对结算单 export const reconciliation = (id, params) => { - return putRequest(`/order/bill/check/${id}/`, params) + return putRequest(`/order/bill/check/${id}`, params) } //根据id获取店铺信息 export const downloadBill = (id) => { diff --git a/seller/src/libs/util.js b/seller/src/libs/util.js index 2c9854bf..4648de40 100644 --- a/seller/src/libs/util.js +++ b/seller/src/libs/util.js @@ -6,6 +6,10 @@ import config from "@/config/index"; let util = {}; +/** 店铺主页一级菜单 */ +export const HOME_NAV_NAME = "home"; +export const HOME_NAV_ITEM = { name: HOME_NAV_NAME, title: "主页" }; + /** 静态路由名,禁止被动态路由清理误删 */ const STATIC_ROUTE_NAMES = new Set([ "home_index", @@ -437,7 +441,7 @@ util.initAllMenuData = function (constRoutes, data) { util.initMenuData = function (vm, data) { const menuRoutes = []; let menuData = data; - let navList = []; + let navList = [HOME_NAV_ITEM]; menuData.forEach((e) => { navList.push({ name: e.name, title: e.title }); }); @@ -454,10 +458,16 @@ util.initMenuData = function (vm, data) { } } } else { - currNav = navList[0].name; - vm.$store.commit("setCurrNavTitle", navList[0].title); + currNav = HOME_NAV_NAME; + vm.$store.commit("setCurrNavTitle", HOME_NAV_ITEM.title); } vm.$store.commit("setCurrNav", currNav); + + if (currNav === HOME_NAV_NAME) { + vm.$store.commit("updateMenulist", []); + return; + } + for (let item of menuData) { if (item.name == currNav) { menuData = item.children; @@ -519,4 +529,31 @@ util.initRouterNode = function (routers, data) { } }; +util.getFirstRouterName = function (routeName) { + if (!routeName) { + return null; + } + const raw = window.localStorage.getItem("menuData"); + if (!raw) { + return null; + } + try { + const menuData = JSON.parse(raw); + for (const top of menuData) { + const level1 = top.children || []; + for (const mid of level1) { + const leaves = mid.children || []; + for (const leaf of leaves) { + if (leaf.name === routeName) { + return leaf.firstRouterName || top.name; + } + } + } + } + } catch (e) { + console.warn("[util] getFirstRouterName failed", e); + } + return null; +}; + export default util; diff --git a/seller/src/router/router.js b/seller/src/router/router.js index 8ffbd782..36580cbd 100644 --- a/seller/src/router/router.js +++ b/seller/src/router/router.js @@ -198,6 +198,12 @@ export const otherRouter = { meta: { title: "商品销售汇总报表" }, component: () => import("@/views/statistics/goods-sales-summary.vue") }, + { + path: "procurement/purchase-order/list", + title: "采购单", + name: "procurementPurchaseOrderList", + component: () => import("@/views/procurement/purchase-order/list.vue") + }, { path: "procurement/purchase-order/operation", title: "采购单", @@ -233,6 +239,37 @@ export const otherRouter = { title: "设置预警", name: "alertQuantityWarnSetting", component: () => import("@/views/goods/goods-seller/alertQuantityWarn.vue") + }, + { + path: "order/returnMoneyOrder", + title: "退款管理", + name: "returnMoneyOrder", + component: () => import("@/views/order/after-order/returnMoneyOrder.vue") + }, + { + path: "order/returnGoodsOrder", + title: "退货管理", + name: "returnGoodsOrder", + component: () => import("@/views/order/after-order/returnGoodsOrder.vue") + }, + { + path: "order/memberComment", + title: "评价管理", + name: "memberComment", + component: () => import("@/views/member/memberComment.vue") + }, + { + path: "bill/accountStatementBill", + title: "财务对账", + name: "accountStatementBill", + component: () => import("@/views/shop/bill/accountStatementBill.vue") + }, + { + path: "bill/storeBill", + title: "店铺结算", + name: "storeBill", + meta: { firstRouterName: "bill" }, + component: () => import("@/views/shop/bill/storeBill.vue") } ] }; diff --git a/seller/src/views/Main.vue b/seller/src/views/Main.vue index fe987a5f..a3636657 100644 --- a/seller/src/views/Main.vue +++ b/seller/src/views/Main.vue @@ -3,7 +3,7 @@ @@ -284,6 +392,10 @@ export default { + + + + + diff --git a/seller/src/views/shop/bill/storeBill.vue b/seller/src/views/shop/bill/storeBill.vue index 0223a9a1..33eb818c 100644 --- a/seller/src/views/shop/bill/storeBill.vue +++ b/seller/src/views/shop/bill/storeBill.vue @@ -1,5 +1,5 @@