[FIX] website_sale_delivery: allow to restrict delivery to a website
Before this commit, website_id field would not be added in form view, making it impossible to set a website on a delivery method and so impossible to restrict a delivery method to a specific website. Now, adding this field will be enough as we already search() on website_published carrier and the delivery.carrier model has the 'website.published.multi.mixin' mixin that will filter accessible website when searching on website_published field. + add missing groups on website_id field + remove useless website_published opw-1918189 closes odoo/odoo#29749
This commit is contained in:
@@ -47,7 +47,7 @@
|
||||
<field name="name"/>
|
||||
<field name="active" invisible="1"/>
|
||||
<field name="blog_id"/>
|
||||
<field name="website_id"/>
|
||||
<field name="website_id" groups="website.group_multi_website"/>
|
||||
<field name="visits"/>
|
||||
<field name="create_uid" invisible="1"/>
|
||||
<field name="write_uid"/>
|
||||
|
||||
@@ -9,4 +9,3 @@ class DeliveryCarrier(models.Model):
|
||||
_inherit = ['delivery.carrier', 'website.published.multi.mixin']
|
||||
|
||||
website_description = fields.Text(related='product_id.description_sale', string='Description for Online Quotations', readonly=False)
|
||||
website_published = fields.Boolean(default=False)
|
||||
|
||||
@@ -75,6 +75,7 @@ class SaleOrder(models.Model):
|
||||
|
||||
def _get_delivery_methods(self):
|
||||
address = self.partner_shipping_id
|
||||
# searching on website_published will also search for available website (_search method on computed field)
|
||||
return self.env['delivery.carrier'].sudo().search([('website_published', '=', True)]).available_carriers(address)
|
||||
|
||||
@api.multi
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
<field name="model">delivery.carrier</field>
|
||||
<field name="inherit_id" ref="delivery.view_delivery_carrier_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="company_id" position='after'>
|
||||
<field name="website_id" groups="website.group_multi_website" options="{'no_open': True, 'no_create_edit': True}"/>
|
||||
</field>
|
||||
<xpath expr="//page[@name='destination']" position='after'>
|
||||
<page string="Description">
|
||||
<field name="website_description" placeholder="Description displayed on the eCommerce and on online quotations."/>
|
||||
@@ -26,6 +29,7 @@
|
||||
<field name="arch" type="xml">
|
||||
<field name="delivery_type" position="after">
|
||||
<field name="website_published"/>
|
||||
<field name="website_id" groups="website.group_multi_website"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
Reference in New Issue
Block a user