diff --git a/addons/delivery/delivery.py b/addons/delivery/delivery.py index 7e7d31975e5..e1696820634 100644 --- a/addons/delivery/delivery.py +++ b/addons/delivery/delivery.py @@ -28,6 +28,17 @@ class delivery_carrier(osv.osv): _name = "delivery.carrier" _description = "Carrier and delivery grids" + def name_get(self, cr, uid, ids, context={}): + if not len(ids): + return [] + order_id = context.get('order_id',False) + if not order_id: + res = super(delivery_carrier, self).name_get(cr, uid, ids, context=context) + else: + order = self.pool.get('sale.order').browse(cr, uid, [order_id])[0] + currency = order.partner_id.property_product_pricelist.currency_id.name or '' + res = [(r['id'], r['name']+' ('+(str(r['price']))+' '+currency+')') for r in self.read(cr, uid, ids, ['name', 'price'], context)] + return res def get_price(self, cr, uid, ids, field_name, arg=None, context={}): res={} sale_obj=self.pool.get('sale.order') @@ -94,9 +105,7 @@ class delivery_grid(osv.osv): } _order = 'sequence' - def get_price(self, cr, uid, id, order, dt, context): - total = 0 weight = 0 volume = 0 @@ -112,7 +121,6 @@ class delivery_grid(osv.osv): def get_price_from_picking(self, cr, uid, id, total, weight, volume, context={}): grid = self.browse(cr, uid, id, context) - price = 0.0 ok = False diff --git a/addons/delivery/delivery_view.xml b/addons/delivery/delivery_view.xml index 16f4a61ed1e..f14d45c79de 100644 --- a/addons/delivery/delivery_view.xml +++ b/addons/delivery/delivery_view.xml @@ -289,5 +289,16 @@ + + sale.order.multicompany + sale.order + + + +