Skip to content

Commit 8885b07

Browse files
ljain112mergify[bot]
authored andcommitted
fix: update item_tax_rate in backend
(cherry picked from commit de54c0b) # Conflicts: # erpnext/controllers/taxes_and_totals.py
1 parent 6f71389 commit 8885b07

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py

+14
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
from erpnext.stock.doctype.stock_reconciliation.test_stock_reconciliation import (
4444
create_stock_reconciliation,
4545
)
46+
from erpnext.stock.get_item_details import get_item_tax_map
4647
from erpnext.stock.utils import get_incoming_rate, get_stock_balance
4748

4849

@@ -2873,13 +2874,26 @@ def test_item_tax_net_range(self):
28732874
item.save()
28742875

28752876
sales_invoice = create_sales_invoice(item="T Shirt", rate=700, do_not_submit=True)
2877+
item_tax_map = get_item_tax_map(
2878+
doc=sales_invoice,
2879+
tax_template=sales_invoice.items[0].item_tax_template,
2880+
)
2881+
28762882
self.assertEqual(sales_invoice.items[0].item_tax_template, "_Test Account Excise Duty @ 12 - _TC")
2883+
self.assertEqual(sales_invoice.items[0].item_tax_rate, item_tax_map)
28772884

28782885
# Apply discount
28792886
sales_invoice.apply_discount_on = "Net Total"
28802887
sales_invoice.discount_amount = 300
28812888
sales_invoice.save()
2889+
2890+
item_tax_map = get_item_tax_map(
2891+
doc=sales_invoice,
2892+
tax_template=sales_invoice.items[0].item_tax_template,
2893+
)
2894+
28822895
self.assertEqual(sales_invoice.items[0].item_tax_template, "_Test Account Excise Duty @ 10 - _TC")
2896+
self.assertEqual(sales_invoice.items[0].item_tax_rate, item_tax_map)
28832897

28842898
@change_settings("Selling Settings", {"enable_discount_accounting": 1})
28852899
def test_sales_invoice_with_discount_accounting_enabled(self):

erpnext/controllers/taxes_and_totals.py

+14
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,12 @@
1818
validate_inclusive_tax,
1919
validate_taxes_and_charges,
2020
)
21+
<<<<<<< HEAD
2122
from erpnext.stock.get_item_details import _get_item_tax_template
23+
=======
24+
from erpnext.deprecation_dumpster import deprecated
25+
from erpnext.stock.get_item_details import ItemDetailsCtx, _get_item_tax_template, get_item_tax_map
26+
>>>>>>> de54c0b41f (fix: update item_tax_rate in backend)
2227
from erpnext.utilities.regional import temporary_flag
2328

2429

@@ -70,6 +75,7 @@ def _calculate(self):
7075
self.validate_conversion_rate()
7176
self.calculate_item_values()
7277
self.validate_item_tax_template()
78+
self.update_item_tax_map()
7379
self.initialize_taxes()
7480
self.determine_exclusive_rate()
7581
self.calculate_net_total()
@@ -134,6 +140,14 @@ def validate_item_tax_template(self):
134140
)
135141
)
136142

143+
def update_item_tax_map(self):
144+
for item in self.doc.items:
145+
item.item_tax_rate = get_item_tax_map(
146+
doc=self.doc,
147+
tax_template=item.item_tax_template,
148+
as_json=True,
149+
)
150+
137151
def validate_conversion_rate(self):
138152
# validate conversion rate
139153
company_currency = erpnext.get_company_currency(self.doc.company)

0 commit comments

Comments
 (0)