summaryrefslogtreecommitdiff
path: root/addons/website_sale_stock/models/website.py
blob: 78d2301c338920d67b538e3a367cf1cf1773f33f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# -*- coding: utf-8 -*-
from odoo import api, fields, models


class Website(models.Model):
    _inherit = 'website'

    warehouse_id = fields.Many2one('stock.warehouse', string='Warehouse')

    def _prepare_sale_order_values(self, partner, pricelist):
        self.ensure_one()
        values = super(Website, self)._prepare_sale_order_values(partner, pricelist)
        if values['company_id']:
            warehouse_id = (
                self.warehouse_id and self.warehouse_id.id or
                self.env['ir.default'].get('sale.order', 'warehouse_id', company_id=values.get('company_id')) or
                self.env['ir.default'].get('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