diff --git a/addons/delivery/models/delivery_carrier.py b/addons/delivery/models/delivery_carrier.py index e9031a01390..dd3fed33f82 100644 --- a/addons/delivery/models/delivery_carrier.py +++ b/addons/delivery/models/delivery_carrier.py @@ -51,6 +51,7 @@ class DeliveryCarrier(models.Model): price_rule_ids = fields.One2many('delivery.price.rule', 'carrier_id', 'Pricing Rules', copy=True) state = fields.Selection([('test', 'Testing'), ('production', 'Production')], 'State') fixed_price = fields.Float(compute='_compute_fixed_price', inverse='_set_product_fixed_price', store=True, string='Fixed Price',help="Keep empty if the pricing depends on the advanced pricing per destination") + shipping_enabled = fields.Boolean(string="Shipping enabled", default=True, help="Uncheck this box to disable package shipping while validating Delivery Orders") @api.depends('product_id.list_price', 'product_id.product_tmpl_id.list_price') def _compute_fixed_price(self): diff --git a/addons/delivery/models/stock_picking.py b/addons/delivery/models/stock_picking.py index 344828b27a2..2e4242bac26 100644 --- a/addons/delivery/models/stock_picking.py +++ b/addons/delivery/models/stock_picking.py @@ -73,7 +73,7 @@ class StockPicking(models.Model): self.ensure_one() res = super(StockPicking, self).do_transfer() - if self.carrier_id and self.carrier_id.delivery_type not in ['fixed', 'base_on_rule']: + if self.carrier_id and self.carrier_id.delivery_type not in ['fixed', 'base_on_rule'] and self.carrier_id.shipping_enabled: self.send_to_shipper() return res diff --git a/addons/delivery/views/delivery_view.xml b/addons/delivery/views/delivery_view.xml index f28c787252c..dcdd0ab9b13 100644 --- a/addons/delivery/views/delivery_view.xml +++ b/addons/delivery/views/delivery_view.xml @@ -35,6 +35,7 @@ +