diff --git a/addons/procurement_jit/sale.py b/addons/procurement_jit/sale.py index d4708e00f5c..b7ab9d40433 100644 --- a/addons/procurement_jit/sale.py +++ b/addons/procurement_jit/sale.py @@ -3,12 +3,16 @@ from openerp import api, fields, models, _ -class SaleOrder(models.Model): - _inherit = "sale.order" +class SaleOrderLine(models.Model): + _inherit = "sale.order.line" @api.multi - def action_confirm(self): - res = super(SaleOrder, self).action_confirm() - for order in self: - order.picking_ids.filtered(lambda x: x.state=='confirmed').action_assign() + def _action_procurement_create(self): + res = super(SaleOrderLine, self)._action_procurement_create() + orders = list(set(x.order_id for x in self)) + for order in orders: + reassign = order.picking_ids.filtered(lambda x: x.state=='confirmed' or ((x.state=='partially_available') and not x.printed)) + if reassign: + reassign.do_unreserve() + reassign.action_assign() return res \ No newline at end of file