From fe054511c8da9f40de5c6ef29d6a80dd68d1979f Mon Sep 17 00:00:00 2001 From: Saqib Ansari Date: Tue, 29 Sep 2020 18:39:35 +0530 Subject: [PATCH] feat: make IRN field on regional setup --- .../doctype/e_invoice_settings/e_invoice_settings.py | 3 +++ erpnext/regional/india/setup.py | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/erpnext/regional/doctype/e_invoice_settings/e_invoice_settings.py b/erpnext/regional/doctype/e_invoice_settings/e_invoice_settings.py index 1d86208347d..cdfe89be307 100644 --- a/erpnext/regional/doctype/e_invoice_settings/e_invoice_settings.py +++ b/erpnext/regional/doctype/e_invoice_settings/e_invoice_settings.py @@ -7,6 +7,7 @@ import frappe from frappe import _ from frappe.utils.data import cstr from frappe.model.document import Document +from frappe.custom.doctype.property_setter.property_setter import make_property_setter class EInvoiceSettings(Document): def validate(self): @@ -19,6 +20,8 @@ class EInvoiceSettings(Document): if not self.public_key or self.has_value_changed('public_key_file'): self.public_key = self.read_key_file() + make_property_setter("Sales Invoice", "irn", "reqd", self.enable, "Data") + def read_key_file(self): key_file = frappe.get_doc('File', dict(attached_to_name=self.doctype, attached_to_field='public_key_file')) with open(key_file.get_full_path(), 'rb') as f: diff --git a/erpnext/regional/india/setup.py b/erpnext/regional/india/setup.py index 77a466fdff7..a66298d270f 100644 --- a/erpnext/regional/india/setup.py +++ b/erpnext/regional/india/setup.py @@ -376,6 +376,10 @@ def make_custom_fields(update=True): } ] + si_einvoice_fields = [ + dict(fieldname='irn', label='IRN', fieldtyp='Data', insert_after='customer') + ] + custom_fields = { 'Address': [ dict(fieldname='gstin', label='Party GSTIN', fieldtype='Data', @@ -388,7 +392,7 @@ def make_custom_fields(update=True): 'Purchase Invoice': purchase_invoice_gst_category + invoice_gst_fields + purchase_invoice_itc_fields + purchase_invoice_gst_fields, 'Purchase Order': purchase_invoice_gst_fields, 'Purchase Receipt': purchase_invoice_gst_fields, - 'Sales Invoice': sales_invoice_gst_category + invoice_gst_fields + sales_invoice_shipping_fields + sales_invoice_gst_fields + si_ewaybill_fields, + 'Sales Invoice': sales_invoice_gst_category + invoice_gst_fields + sales_invoice_shipping_fields + sales_invoice_gst_fields + si_ewaybill_fields + si_einvoice_fields, 'Delivery Note': sales_invoice_gst_fields + ewaybill_fields + sales_invoice_shipping_fields, 'Sales Order': sales_invoice_gst_fields, 'Tax Category': inter_state_gst_field,