From 39ac8404ffa3ae437c6544247af8916e8c8d8af3 Mon Sep 17 00:00:00 2001 From: "Dharti Ratani (OpenERP)" Date: Thu, 23 Aug 2012 12:40:44 +0530 Subject: [PATCH] [IMP]Tax fix related to stock and pos bzr revid: dhr@tinyerp.com-20120823071044-aonyui4dq2li8xnj --- addons/point_of_sale/point_of_sale.py | 11 +++++------ addons/stock/stock.py | 4 ++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py index 302c3a2cb71..fd9ce12251a 100644 --- a/addons/point_of_sale/point_of_sale.py +++ b/addons/point_of_sale/point_of_sale.py @@ -967,10 +967,7 @@ class pos_order(osv.osv): for line in order.lines: tax_amount = 0 - if line.product_id.taxes_id: - taxes = [t for t in line.product_id.taxes_id] - else: - taxes = [t for t in line.product_id.categ_id.taxes_id] + taxes = [t for t in line.product_id.taxes_id] computed_taxes = account_tax_obj.compute_all(cr, uid, taxes, line.price_unit * (100.0-line.discount) / 100.0, line.qty)['taxes'] for tax in computed_taxes: @@ -1147,8 +1144,10 @@ class pos_order_line(osv.osv): cur_obj = self.pool.get('res.currency') prod = self.pool.get('product.product').browse(cr, uid, product, context=context) - - taxes = prod.taxes_id + if prod.taxes_id: + taxes = prod.taxes_id + else: + taxes = prod.categ_id.taxes_id price = price_unit * (1 - (discount or 0.0) / 100.0) taxes = account_tax_obj.compute_all(cr, uid, prod.taxes_id, price, qty, product=prod, partner=False) diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 7b65cc99847..36538175e27 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -915,12 +915,12 @@ class stock_picking(osv.osv): @return: Taxes Ids for the move line """ if type in ('in_invoice', 'in_refund'): - if product_id.supplier_taxes_id: + if move_line.product_id.supplier_taxes_id: taxes = move_line.product_id.supplier_taxes_id else: taxes = move_line.product_id.categ_id.supplier_taxes_id else: - if product_id.taxes_id: + if move_line.product_id.taxes_id: taxes = move_line.product_id.taxes_id else: taxes = move_line.product_id.categ_id.taxes_id