From 8fb90c1c35b7f55a2a2368407597f203882c55d9 Mon Sep 17 00:00:00 2001 From: yuxianghui <3437689193@qq.com> Date: Tue, 18 Mar 2025 10:52:34 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=8B=A8=E9=AA=8C=E8=AF=81=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E6=95=B0=E6=8D=AE=E4=BF=A1=E6=81=AF=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_quality/models/stock.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/sf_quality/models/stock.py b/sf_quality/models/stock.py index 89bbf005..7abb238e 100644 --- a/sf_quality/models/stock.py +++ b/sf_quality/models/stock.py @@ -21,7 +21,7 @@ class StockPicking(models.Model): “警告:存在不合格产品XXXX n 件、YYYYY m件,继续调拨请点“确认”,否则请取消?” """ context = self.env.context - if (not (isinstance(res, dict) and res.get('type') == 'ir.actions.act_window') + if (not (not isinstance(res, bool) and res.get('type') == 'ir.actions.act_window') and not context.get('again_validate') and self.quality_check_ids.filtered(lambda qc: qc.quality_state == 'fail')): # 回滚事务,为二次确认/取消做准备 @@ -36,8 +36,14 @@ class StockPicking(models.Model): else: number = sum(self.move_ids_without_package.filtered( lambda ml: ml.product_id == product_id).mapped('quantity_done')) - fail_check_text = (f'{fail_check_text}、{product_id.name} {number}件' - if fail_check_text != '' else f'{product_id.name} {number}件') + if number == 0: + number = sum(self.move_ids_without_package.filtered( + lambda ml: ml.product_id == product_id).mapped('reserved_availability')) + if number == 0: + number = sum(self.move_ids_without_package.filtered( + lambda ml: ml.product_id == product_id).mapped('product_uom_qty')) + fail_check_text = (f'{fail_check_text}、{product_id.display_name} {number}件' + if fail_check_text != '' else f'{product_id.display_name} {number}件') return { 'type': 'ir.actions.act_window', 'res_model': 'picking.validate.check.wizard',