From a7bfc6fb6f434c670eb7c2df58bac9cb432a5ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Fri, 15 Mar 2019 11:30:21 +0100 Subject: [PATCH] Allow to define product supplier on variants issue6799 review66551002 --- sale.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/sale.py b/sale.py index 960674a913..0d3da09033 100644 --- a/sale.py +++ b/sale.py @@ -138,17 +138,13 @@ class SaleLine(metaclass=PoolMeta): def get_purchase_request(self): request = super(SaleLine, self).get_purchase_request() if request and request.party: - drop_shipment = False if self.product and self.product.type in ('goods', 'assets'): - # FIXME this doesn't ensure to find always the right - # product_supplier - for product_supplier in self.product.product_suppliers: - if product_supplier.party == request.party: - drop_shipment = product_supplier.drop_shipment - break - if drop_shipment: - request.customer = self.sale.party - request.delivery_address = self.sale.shipment_address + product_supplier = request.find_best_product_supplier( + self.product, self.shipping_date, + **self._get_purchase_request_product_supplier_pattern()) + if product_supplier.drop_shipment: + request.customer = self.sale.party + request.delivery_address = self.sale.shipment_address return request def get_drop_moves(self):