summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLucas Perais (lpe) <lpe@odoo.com>2018-07-10 11:18:26 +0200
committerLucas Perais (lpe) <lpe@odoo.com>2018-07-10 11:54:01 +0200
commitcd5c10a47f27b77b39cd102012979bbeece2a4ea (patch)
treef5d7b89e328490b84d9210731ae73c10ed97a2a2
parent5e682451cbcb15cbc2ebcfe35545e60912b76f1a (diff)
[FIX] website_sale_delivery: we should be able to pay if the order only contains services
Two use cases must work: Should hide payment AND display errors when order contains deliverable product Should show payment AND not display errors when order contains only services (event tickets) Linked OPW 1864744 Linked PR v11.0 #25679 closes #25692
-rw-r--r--addons/website_sale_delivery/models/sale_order.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/addons/website_sale_delivery/models/sale_order.py b/addons/website_sale_delivery/models/sale_order.py
index 63f2f20208b..43aa2f63d86 100644
--- a/addons/website_sale_delivery/models/sale_order.py
+++ b/addons/website_sale_delivery/models/sale_order.py
@@ -95,8 +95,10 @@ class SaleOrder(models.Model):
@api.model
def _get_errors(self, order):
+ # Do not Forward port in v11.0 as the API was refactored by f9a8c53e485445bc8e3474eb3978b0f83d5645c7
+ has_stockable_products = any(order.order_line.filtered(lambda line: line.product_id.type in ['consu', 'product']))
errors = super(SaleOrder, self)._get_errors(order)
- if not order._get_delivery_methods():
+ if not order._get_delivery_methods() and has_stockable_products:
errors.append(
(_('Sorry, we are unable to ship your order'),
_('No shipping method is available for your current order and shipping address. '