diff options
| author | Arnold Moyaux <arm@odoo.com> | 2019-08-06 13:44:23 +0000 |
|---|---|---|
| committer | Arnold Moyaux <arm@odoo.com> | 2019-08-19 15:03:59 +0000 |
| commit | 4c4a7879e992c6ad20f1339b67bfc24edbbd724f (patch) | |
| tree | ea14785b09d57520302e893c08b787932bd1dd74 /addons/mrp_subcontracting/models | |
| parent | a29d3e5270b8b9af71a4cd4074a9feeebd8c5307 (diff) | |
[ADD] mrp_subcontracting_dropshipping
Allow to do a dropshipping with a subcontractor.
If the product uses the routes drophipping and have
a subcontracting BoM. Then a PO for the subcontractors
will genrate a need in the subcontracting location for
the required components.
A module is needed because the picking_type_id for dropshipping
do not have a warehouse_id. The warehouse_id is needed in order to
know from which warehouse the subcontracting components should be
deliver.
Diffstat (limited to 'addons/mrp_subcontracting/models')
| -rw-r--r-- | addons/mrp_subcontracting/models/stock_picking.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/addons/mrp_subcontracting/models/stock_picking.py b/addons/mrp_subcontracting/models/stock_picking.py index 012282ec98b..13526ad2e5a 100644 --- a/addons/mrp_subcontracting/models/stock_picking.py +++ b/addons/mrp_subcontracting/models/stock_picking.py @@ -64,6 +64,9 @@ class StockPicking(models.Model): self.ensure_one() return self.move_lines.mapped('move_orig_ids.production_id') + def _get_warehouse(self, subcontract_move): + return subcontract_move.warehouse_id or self.picking_type_id.warehouse_id + def _prepare_subcontract_mo_vals(self, subcontract_move, bom): subcontract_move.ensure_one() group = self.env['procurement.group'].create({ @@ -71,7 +74,7 @@ class StockPicking(models.Model): 'partner_id': self.partner_id.id, }) product = subcontract_move.product_id - warehouse = subcontract_move.warehouse_id or self.picking_type_id.warehouse_id + warehouse = self._get_warehouse(subcontract_move) vals = { 'procurement_group_id': group.id, 'product_id': product.id, |
