From f7fbae2c40a471e23104aeffde45e4e61190c318 Mon Sep 17 00:00:00 2001 From: Aungkokolin1997 Date: Fri, 29 Sep 2023 12:09:32 +0630 Subject: [PATCH] [IMP] add quant check after all process is done --- .../models/__init__.py | 1 + .../models/stock_picking.py | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 mrp_subcontracting_skip_no_negative/models/stock_picking.py diff --git a/mrp_subcontracting_skip_no_negative/models/__init__.py b/mrp_subcontracting_skip_no_negative/models/__init__.py index 6bda2d242..a33bde1e8 100644 --- a/mrp_subcontracting_skip_no_negative/models/__init__.py +++ b/mrp_subcontracting_skip_no_negative/models/__init__.py @@ -1 +1,2 @@ from . import stock_move +from . import stock_picking diff --git a/mrp_subcontracting_skip_no_negative/models/stock_picking.py b/mrp_subcontracting_skip_no_negative/models/stock_picking.py new file mode 100644 index 000000000..015c8554a --- /dev/null +++ b/mrp_subcontracting_skip_no_negative/models/stock_picking.py @@ -0,0 +1,22 @@ +# Copyright 2023 Quartile Limited +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) + +from odoo import models + + +class StockPicking(models.Model): + _inherit = "stock.picking" + + def _action_done(self): + res = super()._action_done() + self._check_negative_quants_after_process() + return res + + def _check_negative_quants_after_process(self): + product_ids = self.mapped("move_ids.product_id.id") + quants = self.env["stock.quant"].search( + [ + ("product_id", "in", product_ids), + ] + ) + quants.check_negative_qty()