Use the instance context to get carrier prices

issue10666
review358661002
This commit is contained in:
Cédric Krier
2021-08-27 08:48:34 +02:00
parent f31a92360b
commit e8c3375bb1
+12 -6
View File
@@ -44,18 +44,24 @@ class Carrier(DeactivableMixin, ModelSQL, ModelView):
def get_sale_price(self):
'Compute carrier sale price with currency'
User = Pool().get('res.user')
pool = Pool()
Company = pool.get('company.company')
if self.carrier_cost_method == 'product':
user = User(Transaction().user)
return self.carrier_product.list_price, user.company.currency.id
list_price = self.carrier_product.list_price_used
if list_price is not None:
company = Company(self.carrier_product._context['company'])
return list_price, company.currency.id
return 0, None
def get_purchase_price(self):
'Compute carrier purchase price with currency'
User = Pool().get('res.user')
pool = Pool()
Company = pool.get('company.company')
if self.carrier_cost_method == 'product':
user = User(Transaction().user)
return self.carrier_product.cost_price, user.company.currency.id
cost_price = self.carrier_product.cost_price
if cost_price is not None:
company = Company(self.carrier_product._context['company'])
return cost_price, company.currency.id
return 0, None
@classmethod