From 29c326a8aa3ecc87390aacbba0ce6ee57b5ee3bc Mon Sep 17 00:00:00 2001 From: Wolfgang Taferner Date: Tue, 3 Oct 2017 16:59:27 +0200 Subject: [PATCH] [IMP] website_sale_delivery: use the preferred carrier of the partner (if available) In case you have a delivery partner set on your shipping contact, when checkouting your cart, the preferred carrier will be used instead of the first available carrier. --- addons/website_sale_delivery/models/sale_order.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/addons/website_sale_delivery/models/sale_order.py b/addons/website_sale_delivery/models/sale_order.py index 036d2a13a4f..8c746b05b21 100644 --- a/addons/website_sale_delivery/models/sale_order.py +++ b/addons/website_sale_delivery/models/sale_order.py @@ -42,6 +42,10 @@ class SaleOrder(models.Model): self._remove_delivery_line() return True else: + # attempt to use partner's preferred carrier + if not force_carrier_id and self.partner_shipping_id.property_delivery_carrier_id: + force_carrier_id = self.partner_shipping_id.property_delivery_carrier_id.id + carrier = force_carrier_id and DeliveryCarrier.browse(force_carrier_id) or self.carrier_id available_carriers = self._get_delivery_methods() if carrier: