From 901d777591ed1342e00eb562d40d027fdd04a1a1 Mon Sep 17 00:00:00 2001 From: Wolfgang Taferner Date: Tue, 25 Jul 2017 17:19:10 +0200 Subject: [PATCH] [FIX] website_sale_stock: use sale order warehouse default first Taking unrelated first warehouse can only be the last fallback, so we check first if there is a default value for the SO. opw-756265 --- addons/website_sale_stock/models/website.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/addons/website_sale_stock/models/website.py b/addons/website_sale_stock/models/website.py index b5c866c27bb..e00d29cec89 100644 --- a/addons/website_sale_stock/models/website.py +++ b/addons/website_sale_stock/models/website.py @@ -9,7 +9,11 @@ class Website(models.Model): self.ensure_one() values = super(Website, self)._prepare_sale_order_values(partner, pricelist) if values['company_id']: - warehouses = self.env['stock.warehouse'].sudo().search([('company_id', '=', values['company_id'])], limit=1) - if warehouses: - values['warehouse_id'] = warehouses.id + warehouse_id = ( + self.env['ir.values'].get_default('sale.order', 'warehouse_id', company_id=values.get('company_id')) or + self.env['ir.values'].get_default('sale.order', 'warehouse_id') or + self.env['stock.warehouse'].sudo().search([('company_id', '=', values['company_id'])], limit=1).id + ) + if warehouse_id: + values['warehouse_id'] = warehouse_id return values