From 33b54c50eaf44f1ba38e44b4e22a40f3d83e4df7 Mon Sep 17 00:00:00 2001 From: Sagar Vora Date: Sun, 19 Jun 2022 23:18:04 +0530 Subject: [PATCH] chore: remove ITC patch --- erpnext/patches.txt | 1 - .../create_itc_reversal_custom_fields.py | 167 ------------------ 2 files changed, 168 deletions(-) delete mode 100644 erpnext/patches/v12_0/create_itc_reversal_custom_fields.py diff --git a/erpnext/patches.txt b/erpnext/patches.txt index aab33aabf1..538833f7f1 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -192,7 +192,6 @@ erpnext.patches.v13_0.delete_old_sales_reports execute:frappe.delete_doc_if_exists("DocType", "Bank Reconciliation") erpnext.patches.v13_0.move_doctype_reports_and_notification_from_hr_to_payroll #22-06-2020 erpnext.patches.v13_0.move_payroll_setting_separately_from_hr_settings #22-06-2020 -erpnext.patches.v12_0.create_itc_reversal_custom_fields execute:frappe.reload_doc("regional", "doctype", "e_invoice_settings") erpnext.patches.v13_0.check_is_income_tax_component #22-06-2020 erpnext.patches.v13_0.loyalty_points_entry_for_pos_invoice #22-07-2020 diff --git a/erpnext/patches/v12_0/create_itc_reversal_custom_fields.py b/erpnext/patches/v12_0/create_itc_reversal_custom_fields.py deleted file mode 100644 index 906baf22cc..0000000000 --- a/erpnext/patches/v12_0/create_itc_reversal_custom_fields.py +++ /dev/null @@ -1,167 +0,0 @@ -import frappe -from frappe.custom.doctype.custom_field.custom_field import create_custom_fields -from frappe.custom.doctype.property_setter.property_setter import make_property_setter - -from erpnext.regional.india.utils import get_gst_accounts - - -def execute(): - company = frappe.get_all("Company", filters={"country": "India"}, fields=["name"]) - if not company: - return - - frappe.reload_doc("regional", "doctype", "gst_settings") - frappe.reload_doc("accounts", "doctype", "gst_account") - - journal_entry_types = frappe.get_meta("Journal Entry").get_options("voucher_type").split("\n") + [ - "Reversal Of ITC" - ] - make_property_setter( - "Journal Entry", "voucher_type", "options", "\n".join(journal_entry_types), "" - ) - - custom_fields = { - "Journal Entry": [ - dict( - fieldname="reversal_type", - label="Reversal Type", - fieldtype="Select", - insert_after="voucher_type", - print_hide=1, - options="As per rules 42 & 43 of CGST Rules\nOthers", - depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - mandatory_depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - ), - dict( - fieldname="company_address", - label="Company Address", - fieldtype="Link", - options="Address", - insert_after="reversal_type", - print_hide=1, - depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - mandatory_depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - ), - dict( - fieldname="company_gstin", - label="Company GSTIN", - fieldtype="Data", - read_only=1, - insert_after="company_address", - print_hide=1, - fetch_from="company_address.gstin", - depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - mandatory_depends_on="eval:doc.voucher_type=='Reversal Of ITC'", - ), - ], - "Purchase Invoice": [ - dict( - fieldname="eligibility_for_itc", - label="Eligibility For ITC", - fieldtype="Select", - insert_after="reason_for_issuing_document", - print_hide=1, - options="Input Service Distributor\nImport Of Service\nImport Of Capital Goods\nITC on Reverse Charge\nIneligible As Per Section 17(5)\nIneligible Others\nAll Other ITC", - default="All Other ITC", - ) - ], - "Purchase Invoice Item": [ - dict( - fieldname="taxable_value", - label="Taxable Value", - fieldtype="Currency", - insert_after="base_net_amount", - hidden=1, - options="Company:company:default_currency", - print_hide=1, - ) - ], - } - - create_custom_fields(custom_fields, update=True) - - # Patch ITC Availed fields from Data to Currency - # Patch Availed ITC for current fiscal_year - - gst_accounts = get_gst_accounts(only_non_reverse_charge=1) - - frappe.db.sql( - """ - UPDATE `tabCustom Field` SET fieldtype='Currency', options='Company:company:default_currency' - WHERE dt = 'Purchase Invoice' and fieldname in ('itc_integrated_tax', 'itc_state_tax', 'itc_central_tax', - 'itc_cess_amount') - """ - ) - - frappe.db.sql( - """UPDATE `tabPurchase Invoice` set itc_integrated_tax = '0' - WHERE trim(coalesce(itc_integrated_tax, '')) = '' """ - ) - - frappe.db.sql( - """UPDATE `tabPurchase Invoice` set itc_state_tax = '0' - WHERE trim(coalesce(itc_state_tax, '')) = '' """ - ) - - frappe.db.sql( - """UPDATE `tabPurchase Invoice` set itc_central_tax = '0' - WHERE trim(coalesce(itc_central_tax, '')) = '' """ - ) - - frappe.db.sql( - """UPDATE `tabPurchase Invoice` set itc_cess_amount = '0' - WHERE trim(coalesce(itc_cess_amount, '')) = '' """ - ) - - # Get purchase invoices - invoices = frappe.get_all( - "Purchase Invoice", - {"posting_date": (">=", "2021-04-01"), "eligibility_for_itc": ("!=", "Ineligible")}, - ["name"], - ) - - amount_map = {} - - if invoices: - invoice_list = set([d.name for d in invoices]) - - # Get GST applied - amounts = frappe.db.sql( - """ - SELECT parent, account_head, sum(base_tax_amount_after_discount_amount) as amount - FROM `tabPurchase Taxes and Charges` - where parent in %s - GROUP BY parent, account_head - """, - (invoice_list), - as_dict=1, - ) - - for d in amounts: - amount_map.setdefault( - d.parent, - {"itc_integrated_tax": 0, "itc_state_tax": 0, "itc_central_tax": 0, "itc_cess_amount": 0}, - ) - if not gst_accounts: - continue - - if d.account_head in gst_accounts.get("igst_account"): - amount_map[d.parent]["itc_integrated_tax"] += d.amount - if d.account_head in gst_accounts.get("cgst_account"): - amount_map[d.parent]["itc_central_tax"] += d.amount - if d.account_head in gst_accounts.get("sgst_account"): - amount_map[d.parent]["itc_state_tax"] += d.amount - if d.account_head in gst_accounts.get("cess_account"): - amount_map[d.parent]["itc_cess_amount"] += d.amount - - for invoice, values in amount_map.items(): - frappe.db.set_value( - "Purchase Invoice", - invoice, - { - "itc_integrated_tax": values.get("itc_integrated_tax"), - "itc_central_tax": values.get("itc_central_tax"), - "itc_state_tax": values["itc_state_tax"], - "itc_cess_amount": values["itc_cess_amount"], - }, - )