From ce06f0f4e8f4b49d05ecb99ade4c7d93648e096b Mon Sep 17 00:00:00 2001 From: wuzilong <704541015@qq.com> Date: Wed, 14 Oct 2026 23:32:35 +0800 Subject: [PATCH] feat(web-admin): add stockRole variant to transport plan list page Co-authored-by: Cursor --- web-admin/src/views/pl/plan/index.vue | 163 ++++++++++++++++---------- 1 file changed, 100 insertions(+), 63 deletions(-) diff --git a/web-admin/src/views/pl/plan/index.vue b/web-admin/src/views/pl/plan/index.vue index c8b7a8e8e..6eb93af00 100644 --- a/web-admin/src/views/pl/plan/index.vue +++ b/web-admin/src/views/pl/plan/index.vue @@ -3,51 +3,69 @@
- +
- - - - 新增计划 - + +
@@ -57,7 +75,7 @@
{{ row.plan.followUserName || '—' }} (), + { stockRole: undefined } + ) + + const isStockList = computed( + () => props.stockRole === 'inbound' || props.stockRole === 'outbound' + ) + /** 计划区可合并列(顺序须与表格左侧列一致,不含勾选/序号/计划编号) */ const PLAN_MERGE_COLUMN_PROPS = [ 'belongsCompany', @@ -1477,36 +1507,43 @@ tableEl: planTableWrapRef, function buildListQueryParams(): Record { const colParams = { ...toQueryParams(), ...toSortQueryParams() } - const keyword = quickSearch.value.trim() - const tabFilters = plPlanListTabToFilters(activePlanTypeTab.value) const params: Record = { ...colParams } - if (keyword) params.q = keyword + if (!isStockList.value) { + const keyword = quickSearch.value.trim() + const tabFilters = plPlanListTabToFilters(activePlanTypeTab.value) - // Tab 优先:跟进状态 - if (tabFilters.followStatus) { - params.followStatus = tabFilters.followStatus - delete params.followStatusIn - } else if (colParams.followStatusIn) { - params.followStatus = colParams.followStatusIn - delete params.followStatusIn + if (keyword) params.q = keyword + + // Tab 优先:跟进状态 + if (tabFilters.followStatus) { + params.followStatus = tabFilters.followStatus + delete params.followStatusIn + } else if (colParams.followStatusIn) { + params.followStatus = colParams.followStatusIn + delete params.followStatusIn + } + + // Tab 优先:单据类型 + if (tabFilters.planType) { + params.planType = tabFilters.planType + delete params.planTypeIn + } + + // 日期快捷 pills → dateRange;列头 planDate 优先 + if (!params.planDateFrom && !params.planDateTo) { + if (dateRange.value?.[0]) params.planDateFrom = dateRange.value[0] + if (dateRange.value?.[1]) params.planDateTo = dateRange.value[1] + } + + // 列表「复制给司机/现场/磅单」需要服务端批量标志;默认关闭以降低其它页耗时 + params.includeArrangeCopyFlags = 1 + } else { + // 库存变体:无 Tab / 无快捷搜(工具栏已隐藏);列头漏斗仍走 colParams + params.stockRole = props.stockRole + // 不传 includeArrangeCopyFlags } - // Tab 优先:单据类型 - if (tabFilters.planType) { - params.planType = tabFilters.planType - delete params.planTypeIn - } - - // 日期快捷 pills → dateRange;列头 planDate 优先 - if (!params.planDateFrom && !params.planDateTo) { - if (dateRange.value?.[0]) params.planDateFrom = dateRange.value[0] - if (dateRange.value?.[1]) params.planDateTo = dateRange.value[1] - } - - // 列表「复制给司机/现场/磅单」需要服务端批量标志;默认关闭以降低其它页耗时 - params.includeArrangeCopyFlags = 1 - applyMergedCustomerQueryParams(params) applyContractSideQueryParams( params,