blob: 3c156479c58a7fb2fe5e24419a58b90c1ef513ba [file] [log] [blame]
Deepesh Garg6e2c13f2019-12-10 15:55:05 +05301erpnext.setup_auto_gst_taxation = (doctype) => {
2 frappe.ui.form.on(doctype, {
3 company_address: function(frm) {
4 frm.trigger('get_tax_template');
5 },
6 shipping_address: function(frm) {
7 frm.trigger('get_tax_template');
8 },
Deepesh Gargcebf8032020-09-01 16:15:28 +05309 supplier_address: function(frm) {
10 frm.trigger('get_tax_template');
11 },
Deepesh Garg6e2c13f2019-12-10 15:55:05 +053012 tax_category: function(frm) {
13 frm.trigger('get_tax_template');
14 },
15 get_tax_template: function(frm) {
Marica0c818922020-08-05 16:47:41 +053016 if (!frm.doc.company) return;
17
Deepesh Garg6e2c13f2019-12-10 15:55:05 +053018 let party_details = {
19 'shipping_address': frm.doc.shipping_address || '',
20 'shipping_address_name': frm.doc.shipping_address_name || '',
21 'customer_address': frm.doc.customer_address || '',
22 'customer': frm.doc.customer,
23 'supplier': frm.doc.supplier,
24 'supplier_gstin': frm.doc.supplier_gstin,
25 'company_gstin': frm.doc.company_gstin,
26 'tax_category': frm.doc.tax_category
27 };
28
29 frappe.call({
30 method: 'erpnext.regional.india.utils.get_regional_address_details',
31 args: {
32 party_details: JSON.stringify(party_details),
33 doctype: frm.doc.doctype,
pateljannat1d5d8632020-11-19 20:11:45 +053034 company: frm.doc.company
Deepesh Garg6e2c13f2019-12-10 15:55:05 +053035 },
36 callback: function(r) {
37 if(r.message) {
38 frm.set_value('taxes_and_charges', r.message.taxes_and_charges);
pateljannat8c9b60e2020-11-18 12:51:13 +053039 frm.set_value('place_of_supply', r.message.place_of_supply);
Deepesh Garg15ff6a52020-02-18 12:28:41 +053040 } else if (frm.doc.is_internal_supplier || frm.doc.is_internal_customer) {
41 frm.set_value('taxes_and_charges', '');
42 frm.set_value('taxes', []);
Deepesh Garg6e2c13f2019-12-10 15:55:05 +053043 }
44 }
45 });
46 }
47 });
48};
49