From 22110e12e6b5317097aa260f1cf6eb20a7fef45b Mon Sep 17 00:00:00 2001 From: Jared Kipe Date: Tue, 18 Sep 2018 16:34:37 -0700 Subject: [PATCH] IMP `rma` allow sending to carrier when no qty has been processed as if it were a full shipment --- rma/models/stock_picking.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/rma/models/stock_picking.py b/rma/models/stock_picking.py index c2fbe651..ef8989c3 100644 --- a/rma/models/stock_picking.py +++ b/rma/models/stock_picking.py @@ -9,5 +9,18 @@ class StockPicking(models.Model): def send_to_shipper(self): res = False for pick in self.filtered(lambda p: not p.carrier_tracking_ref): + # deliver full order if no items are done. + pick_has_no_done = sum(pick.move_line_ids.mapped('qty_done')) == 0 + if pick_has_no_done: + pick._rma_complete() res = super(StockPicking, pick).send_to_shipper() + if pick_has_no_done: + pick._rma_complete_reverse() return res + + def _rma_complete(self): + for line in self.move_line_ids: + line.qty_done = line.product_uom_qty + + def _rma_complete_reverse(self): + self.move_line_ids.write({'qty_done': 0.0})