diff options
| author | Arnold Moyaux <arm@odoo.com> | 2019-08-14 15:13:55 +0000 |
|---|---|---|
| committer | Arnold Moyaux <arm@odoo.com> | 2019-08-19 15:03:59 +0000 |
| commit | 5b526e8756bc2389e688c68eca0eb063b256c9d9 (patch) | |
| tree | 6223f1ee7bda9013f664289086849bcc12a90158 /addons/mrp_subcontracting/models | |
| parent | a6fb45d4588cb55350715ba8939af4642637b3e5 (diff) | |
[IMP] mrp_subcontracting: modify initial demand
Modify the initial demand for a subcontract receipt should
update the delivery to the subcontractor.
Diffstat (limited to 'addons/mrp_subcontracting/models')
| -rw-r--r-- | addons/mrp_subcontracting/models/stock_move.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/addons/mrp_subcontracting/models/stock_move.py b/addons/mrp_subcontracting/models/stock_move.py index 71e1fd3ad25..7da6627c628 100644 --- a/addons/mrp_subcontracting/models/stock_move.py +++ b/addons/mrp_subcontracting/models/stock_move.py @@ -43,6 +43,12 @@ class StockMove(models.Model): subcontractor=self.picking_id.partner_id, ) return bom + def write(self, values): + res = super(StockMove, self).write(values) + if 'product_uom_qty' in values: + self.filtered(lambda m: m.is_subcontract and + m.state not in ['draft', 'cancel', 'done'])._update_subcontract_order_qty() + return res def _action_confirm(self, merge=True, merge_into=False): subcontract_details_per_picking = defaultdict(list) @@ -62,3 +68,12 @@ class StockMove(models.Model): for picking, subcontract_details in subcontract_details_per_picking.items(): picking._subcontracted_produce(subcontract_details) return super(StockMove, self)._action_confirm(merge=merge, merge_into=merge_into) + + def _update_subcontract_order_qty(self): + for move in self: + production = move.move_orig_ids.production_id + if production: + self.env['change.production.qty'].with_context(skip_activity=True).create({ + 'mo_id': production.id, + 'product_qty': move.product_uom_qty + }).change_prod_qty() |
