From 9d187593eb15ad8e3ebc62f4aecf0cb5baebb3bf Mon Sep 17 00:00:00 2001 From: yueli Date: Thu, 17 Sep 2026 11:56:39 +0800 Subject: [PATCH] =?UTF-8?q?feat(outbound):=20=E9=80=80=E5=9B=9E=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E5=A2=9E=E5=8A=A0=E3=80=8C=E9=9C=80=E8=A6=81=E8=A1=A5?= =?UTF-8?q?=E5=8F=91=E3=80=8D=E5=8B=BE=E9=80=89=E4=B8=8E=E8=A1=A5=E5=8F=91?= =?UTF-8?q?=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit · 退回对话框新增「退回后自动生成补发单」勾选框 + 补发数量(勾选时默认 = 本次 退回量,可调小;上限即退回量)。 · 文案明写两条关键后果:生成的是**免审批**出库单;**库存不足时整笔退回会一并 取消**,取消勾选即可只做退回过账 —— 避免库管对着失败提示发懵。 · 提交前做同口径前置校验(数量 > 0 且 <= 退回量),不白跑一趟。 · resetReturnDialog / openReturnDialog 同步重置这两个字段。 默认**不勾选**:有些退回是项目结束退还,根本不需要补,不该默认给所有人挂上。 --- inventory-web/src/api/inbound/return.ts | 11 +++++ inventory-web/src/views/outbound/index.vue | 54 ++++++++++++++++++++++ 2 files changed, 65 insertions(+) diff --git a/inventory-web/src/api/inbound/return.ts b/inventory-web/src/api/inbound/return.ts index fb8e46e..54678f7 100644 --- a/inventory-web/src/api/inbound/return.ts +++ b/inventory-web/src/api/inbound/return.ts @@ -18,13 +18,24 @@ import request from '@/utils/request' * return_qty: number 必填,本次退回数量(>0) * is_defective: boolean 必填,true=不良品转在管台账,false=良品加回库存 * reason: string 可选,退回原因 + * need_reissue: boolean 可选,退回后是否自动生成补发单(默认 false) + * reissue_qty: number 可选,补发数量,默认 = return_qty * } + * + * ★ 补发(need_reissue=true):后端直接生成一张**免审批**出库单并关联回本笔退回, + * 申请人取**当前操作人**(trans_outbound 没有申请人字段,也无指回原审批单的 + * 关联,无法可靠判定原申请人;原领用人写入备注)。 + * ★ 补发库存不足时**整笔退回一并回滚**并返回明确提示 —— 取消勾选即可只做退回过账。 + * + * @returns data.reissue 为 { id, request_no, quantity } 或 null */ export function returnFromOutbound(data: { outbound_id: number return_qty: number is_defective: boolean reason?: string + need_reissue?: boolean + reissue_qty?: number }) { return request({ url: '/inbound/stock/return-from-outbound', diff --git a/inventory-web/src/views/outbound/index.vue b/inventory-web/src/views/outbound/index.vue index 020c6fa..b19ef36 100644 --- a/inventory-web/src/views/outbound/index.vue +++ b/inventory-web/src/views/outbound/index.vue @@ -269,6 +269,32 @@ placeholder="请填写退回原因(必填)" /> + + + + 退回后自动生成补发单 +
+ 勾选后系统直接生成一张免审批的出库单(原领用人写入备注), + 库管即可扫码补发。
+ 若库存不足,整笔退回会一并取消并给出提示 —— + 取消勾选即可只做退回过账。 +
+
+ + + +