fix(india): e-invoice generation for registered composition gst category type (#30814) (#30877)

This commit is contained in:
mergify[bot]
2022-05-02 22:16:43 +05:30
committed by GitHub
parent 6aab9ca427
commit 246869dd28
2 changed files with 8 additions and 4 deletions

View File

@@ -58,6 +58,7 @@ def validate_eligibility(doc):
invalid_company = not frappe.db.get_value("E Invoice User", {"company": doc.get("company")}) invalid_company = not frappe.db.get_value("E Invoice User", {"company": doc.get("company")})
invalid_supply_type = doc.get("gst_category") not in [ invalid_supply_type = doc.get("gst_category") not in [
"Registered Regular", "Registered Regular",
"Registered Composition",
"SEZ", "SEZ",
"Overseas", "Overseas",
"Deemed Export", "Deemed Export",
@@ -125,7 +126,9 @@ def read_json(name):
def get_transaction_details(invoice): def get_transaction_details(invoice):
supply_type = "" supply_type = ""
if invoice.gst_category == "Registered Regular": if (
invoice.gst_category == "Registered Regular" or invoice.gst_category == "Registered Composition"
):
supply_type = "B2B" supply_type = "B2B"
elif invoice.gst_category == "SEZ": elif invoice.gst_category == "SEZ":
supply_type = "SEZWOP" supply_type = "SEZWOP"
@@ -135,14 +138,15 @@ def get_transaction_details(invoice):
supply_type = "DEXP" supply_type = "DEXP"
if not supply_type: if not supply_type:
rr, sez, overseas, export = ( rr, rc, sez, overseas, export = (
bold("Registered Regular"), bold("Registered Regular"),
bold("Registered Composition"),
bold("SEZ"), bold("SEZ"),
bold("Overseas"), bold("Overseas"),
bold("Deemed Export"), bold("Deemed Export"),
) )
frappe.throw( frappe.throw(
_("GST category should be one of {}, {}, {}, {}").format(rr, sez, overseas, export), _("GST category should be one of {}, {}, {}, {}, {}").format(rr, rc, sez, overseas, export),
title=_("Invalid Supply Type"), title=_("Invalid Supply Type"),
) )

View File

@@ -714,7 +714,7 @@ def get_custom_fields():
insert_after="customer", insert_after="customer",
no_copy=1, no_copy=1,
print_hide=1, print_hide=1,
depends_on='eval:in_list(["Registered Regular", "SEZ", "Overseas", "Deemed Export"], doc.gst_category) && doc.irn_cancelled === 0', depends_on='eval:in_list(["Registered Regular", "Registered Composition", "SEZ", "Overseas", "Deemed Export"], doc.gst_category) && doc.irn_cancelled === 0',
), ),
dict( dict(
fieldname="irn_cancelled", fieldname="irn_cancelled",