From 7483cb49fe939636882e608ec53db9b2a341ef7b Mon Sep 17 00:00:00 2001 From: deepeshgarg007 Date: Thu, 20 Jun 2019 15:25:06 +0530 Subject: [PATCH 1/5] Revert "fix: GSTR-1 Report fixes" This reverts commit 7592e0b588ad72d3e79cd101e94102ab1c1829f0. --- erpnext/regional/report/gstr_1/gstr_1.py | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py index 9d8fa2ae538..7f323a2ab0e 100644 --- a/erpnext/regional/report/gstr_1/gstr_1.py +++ b/erpnext/regional/report/gstr_1/gstr_1.py @@ -60,11 +60,8 @@ class Gstr1Report(object): else: for inv, items_based_on_rate in self.items_based_on_tax_rate.items(): invoice_details = self.invoices.get(inv) - for key, items in items_based_on_rate.items(): - rate = key[0] - account = key[1] - - row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, account, items) + for rate, items in items_based_on_rate.items(): + row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, items) if self.filters.get("type_of_business") == "CDNR": row.append("Y" if invoice_details.posting_date <= date(2017, 7, 1) else "N") @@ -103,7 +100,7 @@ class Gstr1Report(object): for key, value in iteritems(b2cs_output): self.data.append(value) - def get_row_data_for_invoice(self, invoice, invoice_details, tax_rate, account, items): + def get_row_data_for_invoice(self, invoice, invoice_details, tax_rate, items): row = [] for fieldname in self.invoice_fields: if self.filters.get("type_of_business") == "CDNR" and fieldname == "invoice_value": @@ -120,10 +117,8 @@ class Gstr1Report(object): taxable_value = 0 for item_code, net_amount in self.invoice_items.get(invoice).items(): if item_code in items: - if self.item_tax_rate.get(invoice) and self.item_tax_rate.get(invoice, {}).get(item_code): - item_tax_rate = self.item_tax_rate.get(invoice, {}).get(item_code) - if account in item_tax_rate and tax_rate == item_tax_rate.get(account): - taxable_value += abs(net_amount) + if self.item_tax_rate.get(invoice) and tax_rate == self.item_tax_rate.get(invoice, {}).get(item_code): + taxable_value += abs(net_amount) elif not self.item_tax_rate.get(invoice): taxable_value += abs(net_amount) @@ -215,7 +210,8 @@ class Gstr1Report(object): item_tax_rate = json.loads(d.item_tax_rate) if item_tax_rate: - self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, item_tax_rate) + for account, rate in item_tax_rate.items(): + self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, rate) def get_items_based_on_tax_rate(self): self.tax_details = frappe.db.sql(""" @@ -255,7 +251,7 @@ class Gstr1Report(object): tax_rate *= 2 rate_based_dict = self.items_based_on_tax_rate\ - .setdefault(parent, {}).setdefault((tax_rate, account), []) + .setdefault(parent, {}).setdefault(tax_rate, []) if item_code not in rate_based_dict: rate_based_dict.append(item_code) except ValueError: From a8e49b8afdb1bce536e926165b4b3dc1ec345ae5 Mon Sep 17 00:00:00 2001 From: deepeshgarg007 Date: Thu, 20 Jun 2019 15:26:04 +0530 Subject: [PATCH 2/5] Revert "fix: GSTR-2 Report fixes" This reverts commit a55413cb0d3828c20ad53e54ad7abe3ca2492668. --- erpnext/regional/report/gstr_1/gstr_1.py | 5 +---- erpnext/regional/report/gstr_2/gstr_2.py | 7 ++----- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py index 7f323a2ab0e..5aa2441ee6c 100644 --- a/erpnext/regional/report/gstr_1/gstr_1.py +++ b/erpnext/regional/report/gstr_1/gstr_1.py @@ -204,10 +204,7 @@ class Gstr1Report(object): sum(i.get('base_net_amount', 0) for i in items if i.item_code == d.item_code and i.parent == d.parent)) - item_tax_rate = {} - - if d.item_tax_rate: - item_tax_rate = json.loads(d.item_tax_rate) + item_tax_rate = json.loads(d.item_tax_rate) if item_tax_rate: for account, rate in item_tax_rate.items(): diff --git a/erpnext/regional/report/gstr_2/gstr_2.py b/erpnext/regional/report/gstr_2/gstr_2.py index d9cab63fef5..a3622690078 100644 --- a/erpnext/regional/report/gstr_2/gstr_2.py +++ b/erpnext/regional/report/gstr_2/gstr_2.py @@ -43,11 +43,8 @@ class Gstr2Report(Gstr1Report): self.get_igst_invoices() for inv, items_based_on_rate in self.items_based_on_tax_rate.items(): invoice_details = self.invoices.get(inv) - for key, items in items_based_on_rate.items(): - rate = key[0] - account = key[1] - - row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, account, items) + for rate, items in items_based_on_rate.items(): + row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, items) tax_amount = taxable_value * rate / 100 if inv in self.igst_invoices: row += [tax_amount, 0, 0] From 5ff830b6f43b238453bc91f5a29216c277fc007e Mon Sep 17 00:00:00 2001 From: deepeshgarg007 Date: Thu, 20 Jun 2019 15:50:02 +0530 Subject: [PATCH 3/5] fix: GSTR report fixes --- erpnext/regional/report/gstr_1/gstr_1.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py index 5aa2441ee6c..accbff760a9 100644 --- a/erpnext/regional/report/gstr_1/gstr_1.py +++ b/erpnext/regional/report/gstr_1/gstr_1.py @@ -117,7 +117,7 @@ class Gstr1Report(object): taxable_value = 0 for item_code, net_amount in self.invoice_items.get(invoice).items(): if item_code in items: - if self.item_tax_rate.get(invoice) and tax_rate == self.item_tax_rate.get(invoice, {}).get(item_code): + if self.item_tax_rate.get(invoice) and tax_rate in self.item_tax_rate.get(invoice, {}).get(item_code): taxable_value += abs(net_amount) elif not self.item_tax_rate.get(invoice): taxable_value += abs(net_amount) @@ -208,7 +208,8 @@ class Gstr1Report(object): if item_tax_rate: for account, rate in item_tax_rate.items(): - self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, rate) + tax_rate_dict = self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, []) + tax_rate_dict.append(rate) def get_items_based_on_tax_rate(self): self.tax_details = frappe.db.sql(""" From 50f4fc48a583851bd1e8314246258f8ba5173098 Mon Sep 17 00:00:00 2001 From: deepeshgarg007 Date: Thu, 20 Jun 2019 15:53:14 +0530 Subject: [PATCH 4/5] fix: GSTR report fixes --- erpnext/regional/report/gstr_1/gstr_1.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py index accbff760a9..815a4e4b828 100644 --- a/erpnext/regional/report/gstr_1/gstr_1.py +++ b/erpnext/regional/report/gstr_1/gstr_1.py @@ -204,7 +204,10 @@ class Gstr1Report(object): sum(i.get('base_net_amount', 0) for i in items if i.item_code == d.item_code and i.parent == d.parent)) - item_tax_rate = json.loads(d.item_tax_rate) + item_tax_rate = {} + + if d.item_tax_rate: + item_tax_rate = json.loads(d.item_tax_rate) if item_tax_rate: for account, rate in item_tax_rate.items(): From 6ef38ebf34434c1748b0d6182ed9fe88f8b436bb Mon Sep 17 00:00:00 2001 From: deepeshgarg007 Date: Thu, 20 Jun 2019 15:55:09 +0530 Subject: [PATCH 5/5] fix: GSTR report fixes --- erpnext/regional/report/gstr_1/gstr_1.py | 1 - 1 file changed, 1 deletion(-) diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py index 815a4e4b828..3a8149d1cfe 100644 --- a/erpnext/regional/report/gstr_1/gstr_1.py +++ b/erpnext/regional/report/gstr_1/gstr_1.py @@ -209,7 +209,6 @@ class Gstr1Report(object): if d.item_tax_rate: item_tax_rate = json.loads(d.item_tax_rate) - if item_tax_rate: for account, rate in item_tax_rate.items(): tax_rate_dict = self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, []) tax_rate_dict.append(rate)