fix: Validation msg fix in GSTR-1 report

This commit is contained in:
deepeshgarg007 2019-12-06 19:34:49 +05:30
parent cfbf895876
commit ad53649f41
2 changed files with 35 additions and 23 deletions

View File

@ -55,14 +55,25 @@ frappe.query_reports["GSTR-1"] = {
report.page.add_inner_button(__("Download as JSON"), function () {
var filters = report.get_values();
const args = {
cmd: 'erpnext.regional.report.gstr_1.gstr_1.get_json',
data: report.data,
report_name: report.report_name,
filters: filters
};
open_url_post(frappe.request.url, args);
frappe.call({
method: 'erpnext.regional.report.gstr_1.gstr_1.get_json',
args: {
data: report.data,
report_name: report.report_name,
filters: filters
},
callback: function(r) {
if (r.message) {
const args = {
cmd: 'erpnext.regional.report.gstr_1.gstr_1.download_json_file',
data: r.message.data,
report_name: r.message.report_name,
report_type: r.message.report_type
};
open_url_post(frappe.request.url, args);
}
}
})
});
}
}

View File

@ -532,16 +532,9 @@ class Gstr1Report(object):
self.columns = self.invoice_columns + self.tax_columns + self.other_columns
@frappe.whitelist()
def get_json():
data = frappe._dict(frappe.local.form_dict)
del data["cmd"]
if "csrf_token" in data:
del data["csrf_token"]
filters = json.loads(data["filters"])
report_data = json.loads(data["data"])
report_name = data["report_name"]
def get_json(filters, report_name, data):
filters = json.loads(filters)
report_data = json.loads(data)
gstin = get_company_gstin_number(filters["company"])
fp = "%02d%s" % (getdate(filters["to_date"]).month, getdate(filters["to_date"]).year)
@ -575,7 +568,11 @@ def get_json():
out = get_export_json(res)
gst_json["exp"] = out
download_json_file(report_name, filters["type_of_business"], gst_json)
return {
'report_name': report_name,
'report_type': filters['type_of_business'],
'data': gst_json
}
def get_b2b_json(res, gstin):
inv_type, out = {"Registered Regular": "R", "Deemed Export": "DE", "URD": "URD", "SEZ": "SEZ"}, []
@ -722,11 +719,15 @@ def get_company_gstin_number(company):
if gstin:
return gstin[0]["gstin"]
else:
frappe.throw(_("Please set valid GSTIN No. in Company Address"))
frappe.throw(_("Please set valid GSTIN No. in Company Address for company {0}".format(
frappe.bold(company)
)))
def download_json_file(filename, report_type, data):
@frappe.whitelist()
def download_json_file():
''' download json content in a file '''
frappe.response['filename'] = frappe.scrub("{0} {1}".format(filename, report_type)) + '.json'
frappe.response['filecontent'] = json.dumps(data)
data = frappe._dict(frappe.local.form_dict)
frappe.response['filename'] = frappe.scrub("{0} {1}".format(data['report_name'], data['report_type'])) + '.json'
frappe.response['filecontent'] = data['data']
frappe.response['content_type'] = 'application/json'
frappe.response['type'] = 'download'