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()