summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsvs-odoo <svs@odoo.com>2019-09-25 13:17:07 +0000
committerPierre Masereel <pim@odoo.com>2020-03-05 14:37:09 +0000
commit4f1fa7e24ce720167da4d1048edf8d6c13b4c520 (patch)
tree45cad3d4acafe12ddd68a8c0d177d86461aa4e29
parent7032dde60a60c6fba730c236b89189a8f56f2bd0 (diff)
[FIX] delivery: put in pack package domain
Before this commit, on a picking, when we want to put in pack, we can't select packages created with no package carrier type as they had a confusion between `package_carrier_type` and `delivery_type` when we pass the value in the context (value who is reused to the package domain, making some package unfindable). closes odoo/odoo#46992 X-original-commit: 21f054731e8635b9e3681e673a7cbf627ad49cca Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
-rw-r--r--addons/delivery/models/stock_picking.py17
-rw-r--r--addons/delivery/wizard/choose_delivery_package_views.xml2
2 files changed, 13 insertions, 6 deletions
diff --git a/addons/delivery/models/stock_picking.py b/addons/delivery/models/stock_picking.py
index b100f2ae294..e85ef74ce39 100644
--- a/addons/delivery/models/stock_picking.py
+++ b/addons/delivery/models/stock_picking.py
@@ -141,6 +141,17 @@ class StockPicking(models.Model):
"""
self.ensure_one()
view_id = self.env.ref('delivery.choose_delivery_package_view_form').id
+ context = dict(
+ self.env.context,
+ current_package_carrier_type=self.carrier_id.delivery_type,
+ default_picking_id=self.id
+ )
+ # As we pass the `delivery_type` ('fixed' by default) in a key who correspond
+ # to the `package_carrier_type` ('none' to default), we make a conversion.
+ # No need conversion for other carriers as the `delivery_type` and
+ #`package_carrier_type` will be the same in these cases.
+ if context['current_package_carrier_type'] == 'fixed':
+ context['current_package_carrier_type'] = 'none'
return {
'name': _('Package Details'),
'type': 'ir.actions.act_window',
@@ -149,11 +160,7 @@ class StockPicking(models.Model):
'view_id': view_id,
'views': [(view_id, 'form')],
'target': 'new',
- 'context': dict(
- self.env.context,
- current_package_carrier_type=self.carrier_id.delivery_type,
- default_picking_id=self.id
- ),
+ 'context': context,
}
def send_to_shipper(self):
diff --git a/addons/delivery/wizard/choose_delivery_package_views.xml b/addons/delivery/wizard/choose_delivery_package_views.xml
index 899452c94ec..2eb671e0e8f 100644
--- a/addons/delivery/wizard/choose_delivery_package_views.xml
+++ b/addons/delivery/wizard/choose_delivery_package_views.xml
@@ -6,7 +6,7 @@
<field name="arch" type="xml">
<form string="Package">
<group>
- <field name="delivery_packaging_id" domain="[('package_carrier_type', '=', context.get('current_package_carrier_type', False))]"
+ <field name="delivery_packaging_id" domain="[('package_carrier_type', '=', context.get('current_package_carrier_type', 'none'))]"
context="{'form_view_ref':'delivery.product_packaging_delivery_form'}"/>
<label for="shipping_weight" attrs="{'invisible': [('delivery_packaging_id', '=', False)]}"/>
<div class="o_row" attrs="{'invisible': [('delivery_packaging_id', '=', False)]}" name="package_weight">