From 99bec0cbacf23e4d7cdd8210769e2b599128ed91 Mon Sep 17 00:00:00 2001 From: shenyifei Date: Tue, 11 Nov 2025 19:15:29 +0800 Subject: [PATCH] =?UTF-8?q?fix(purchase):=20=E4=BF=AE=E5=A4=8D=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=AD=A5=E9=AA=A4=E4=BF=9D=E5=AD=98=E5=92=8C=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除了 OrderCost 和 TicketUpload 组件中不必要的底部内边距 - 修复了 approved 页面中 setLoading 状态未正确结束的问题 - 优化了 approved 页面中单据生成区域的条件渲染逻辑 - 在 create 页面中增加了对订单步骤索引的有效性校验 - 调整了保存订单步骤时的 active 索引递增逻辑 - 限制了暂存按钮仅在有效步骤范围内显示 - 更新了供应商权重计算方法,加入自有纸箱重量统计 - 添加了调试日志用于追踪供应商重量计算过程 --- .../components/purchase/module/OrderCost.tsx | 2 +- .../purchase/module/TicketUpload.tsx | 2 +- .../src/pages/purchase/approver/approved.tsx | 22 ++++++++--- .../src/pages/purchase/purchaser/create.tsx | 39 +++++++++++-------- .../src/utils/calculateSupplierWeights.ts | 4 +- 5 files changed, 44 insertions(+), 25 deletions(-) diff --git a/packages/app-client/src/components/purchase/module/OrderCost.tsx b/packages/app-client/src/components/purchase/module/OrderCost.tsx index 001dc6a..1923af8 100644 --- a/packages/app-client/src/components/purchase/module/OrderCost.tsx +++ b/packages/app-client/src/components/purchase/module/OrderCost.tsx @@ -384,7 +384,7 @@ export default forwardRef( }; return ( - + 人工费用 diff --git a/packages/app-client/src/components/purchase/module/TicketUpload.tsx b/packages/app-client/src/components/purchase/module/TicketUpload.tsx index 1edcbad..1afa78f 100644 --- a/packages/app-client/src/components/purchase/module/TicketUpload.tsx +++ b/packages/app-client/src/components/purchase/module/TicketUpload.tsx @@ -89,7 +89,7 @@ export default function TicketUpload(props: ITicketUploadProps) { } return ( - + {supplierVO.name}的开票信息 diff --git a/packages/app-client/src/pages/purchase/approver/approved.tsx b/packages/app-client/src/pages/purchase/approver/approved.tsx index 840ecaa..3a46aa0 100644 --- a/packages/app-client/src/pages/purchase/approver/approved.tsx +++ b/packages/app-client/src/pages/purchase/approver/approved.tsx @@ -21,7 +21,7 @@ export default hocAuth(function Page(props: CommonComponent) { const [shipOrder, setShipOrder] = useState(); const init = async (orderId: string) => { - setLoading(true) + setLoading(true); try { // 获取采购单信息 const { data: purchaseData } = @@ -71,7 +71,7 @@ export default hocAuth(function Page(props: CommonComponent) { content: "获取采购单信息失败", }); } finally { - setLoading(false) + setLoading(false); } }; @@ -205,9 +205,9 @@ export default hocAuth(function Page(props: CommonComponent) { - {(canGenerateDocuments.shipDocument || - canGenerateDocuments.purchaseDocument || - canGenerateDocuments.costDocument) && ( + {canGenerateDocuments.shipDocument || + canGenerateDocuments.purchaseDocument || + canGenerateDocuments.costDocument ? ( 快捷生成单据 @@ -254,6 +254,18 @@ export default hocAuth(function Page(props: CommonComponent) { )} + ) : ( + + + 快捷生成单据 + + + + + 未找到关联的发货单模板,请联系管理员 + + + )} diff --git a/packages/app-client/src/pages/purchase/purchaser/create.tsx b/packages/app-client/src/pages/purchase/purchaser/create.tsx index 1ade7b3..896682a 100644 --- a/packages/app-client/src/pages/purchase/purchaser/create.tsx +++ b/packages/app-client/src/pages/purchase/purchaser/create.tsx @@ -129,7 +129,12 @@ export default hocAuth(function Page(props: CommonComponent) { if (defaultStep) { setActive(Number(defaultStep)); } else { - setActive(purchaseOrder.active || 1); + const active = purchaseOrder.active || 1; + if (active < 1 || active > 6) { + setActive(1); + } else { + setActive(active); + } } const orderCostList1 = purchaseOrder.orderCostList.map( (item: CostItem) => ({ @@ -340,7 +345,7 @@ export default hocAuth(function Page(props: CommonComponent) { try { const { data } = await business.purchaseOrder.savePurchaseOrderStep3({ orderId: orderId, - active: active, + active: active + 1, orderCostList: purchaseOrder.orderCostList.filter( (item: CostItem) => item.selected, ), @@ -412,7 +417,7 @@ export default hocAuth(function Page(props: CommonComponent) { let success = true; // 保存第一步车辆和经销商信息 - if (active >= 1) { + if (active == 1) { success = await saveVehicleAndDealerInfo(); } @@ -702,19 +707,21 @@ export default hocAuth(function Page(props: CommonComponent) { )} - - - + {active >= 1 && active <= 6 && ( + + + + )} {active < 6 && ( diff --git a/packages/app-client/src/utils/calculateSupplierWeights.ts b/packages/app-client/src/utils/calculateSupplierWeights.ts index 19c10aa..ca94c59 100644 --- a/packages/app-client/src/utils/calculateSupplierWeights.ts +++ b/packages/app-client/src/utils/calculateSupplierWeights.ts @@ -25,8 +25,8 @@ export function calculateSupplierWeights(suppliers) { } // 计算本次使用纸箱的总重量(斤) - const usedBoxesWeight = calculateBoxesTotalWeight(supplier.orderPackageList, 'USED'); - + const usedBoxesWeight = calculateBoxesTotalWeight(supplier.orderPackageList, 'USED') + calculateBoxesTotalWeight(supplier.orderPackageList, 'OWN'); +console.log("usedBoxesWeight", usedBoxesWeight, supplier) if (!supplier.isPaper) { // 如果不是纸箱包装,直接使用原始重量(kg转斤) supplier.grossWeight = (supplier.totalWeight - supplier.emptyWeight) * 2;