[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
This commit is contained in:
Wolfgang Taferner
2017-07-25 18:33:37 +02:00
committed by Nicolas Martinelli
parent fa38adef5a
commit 901d777591
+7 -3
View File
@@ -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