fix: merge conflict

This commit is contained in:
Nabin Hait 2021-07-22 17:11:20 +05:30
commit 595c7a6e61
3 changed files with 54 additions and 59 deletions

View File

@ -5,7 +5,7 @@ import frappe
from erpnext.hooks import regional_overrides from erpnext.hooks import regional_overrides
from frappe.utils import getdate from frappe.utils import getdate
__version__ = '13.7.0' __version__ = '13.7.1'
def get_default_company(user=None): def get_default_company(user=None):
'''Get default company for user''' '''Get default company for user'''

View File

@ -65,7 +65,7 @@ erpnext.taxes_and_totals = class TaxesAndTotals extends erpnext.payments {
this.frm.refresh_fields(); this.frm.refresh_fields();
} }
calculate_discount_amount(){ calculate_discount_amount() {
if (frappe.meta.get_docfield(this.frm.doc.doctype, "discount_amount")) { if (frappe.meta.get_docfield(this.frm.doc.doctype, "discount_amount")) {
this.calculate_item_values(); this.calculate_item_values();
this.calculate_net_total(); this.calculate_net_total();
@ -75,19 +75,16 @@ erpnext.taxes_and_totals = class TaxesAndTotals extends erpnext.payments {
} }
_calculate_taxes_and_totals() { _calculate_taxes_and_totals() {
frappe.run_serially([ this.validate_conversion_rate();
() => this.validate_conversion_rate(), this.calculate_item_values();
() => this.calculate_item_values(), this.initialize_taxes();
() => this.update_item_tax_map(), this.determine_exclusive_rate();
() => this.initialize_taxes(), this.calculate_net_total();
() => this.determine_exclusive_rate(), this.calculate_taxes();
() => this.calculate_net_total(), this.manipulate_grand_total_for_inclusive_tax();
() => this.calculate_taxes(), this.calculate_totals();
() => this.manipulate_grand_total_for_inclusive_tax(), this._cleanup();
() => this.calculate_totals(), },
() => this._cleanup()
]);
}
validate_conversion_rate() { validate_conversion_rate() {
this.frm.doc.conversion_rate = flt(this.frm.doc.conversion_rate, (cur_frm) ? precision("conversion_rate") : 9); this.frm.doc.conversion_rate = flt(this.frm.doc.conversion_rate, (cur_frm) ? precision("conversion_rate") : 9);
@ -270,46 +267,6 @@ erpnext.taxes_and_totals = class TaxesAndTotals extends erpnext.payments {
frappe.model.round_floats_in(this.frm.doc, ["total", "base_total", "net_total", "base_net_total"]); frappe.model.round_floats_in(this.frm.doc, ["total", "base_total", "net_total", "base_net_total"]);
} }
update_item_tax_map() {
let me = this;
let item_codes = [];
let item_rates = {};
let item_tax_templates = {};
$.each(this.frm.doc.items || [], function(i, item) {
if (item.item_code) {
// Use combination of name and item code in case same item is added multiple times
item_codes.push([item.item_code, item.name]);
item_rates[item.name] = item.net_rate;
item_tax_templates[item.name] = item.item_tax_template;
}
});
if (item_codes.length) {
return this.frm.call({
method: "erpnext.stock.get_item_details.get_item_tax_info",
args: {
company: me.frm.doc.company,
tax_category: cstr(me.frm.doc.tax_category),
item_codes: item_codes,
item_rates: item_rates,
item_tax_templates: item_tax_templates
},
callback: function(r) {
if (!r.exc) {
$.each(me.frm.doc.items || [], function(i, item) {
if (item.name && r.message.hasOwnProperty(item.name) && r.message[item.name].item_tax_template) {
item.item_tax_template = r.message[item.name].item_tax_template;
item.item_tax_rate = r.message[item.name].item_tax_rate;
me.add_taxes_from_item_tax_template(item.item_tax_rate);
}
});
}
}
});
}
}
add_taxes_from_item_tax_template(item_tax_map) { add_taxes_from_item_tax_template(item_tax_map) {
let me = this; let me = this;
@ -634,8 +591,6 @@ erpnext.taxes_and_totals = class TaxesAndTotals extends erpnext.payments {
tax.item_wise_tax_detail = JSON.stringify(tax.item_wise_tax_detail); tax.item_wise_tax_detail = JSON.stringify(tax.item_wise_tax_detail);
}); });
} }
this.frm.refresh_fields();
} }
set_discount_amount() { set_discount_amount() {

View File

@ -846,9 +846,9 @@ erpnext.TransactionController = class TransactionController extends erpnext.taxe
frappe.run_serially([ frappe.run_serially([
() => me.frm.script_manager.trigger("currency"), () => me.frm.script_manager.trigger("currency"),
() => me.update_item_tax_map(),
() => me.apply_default_taxes(), () => me.apply_default_taxes(),
() => me.apply_pricing_rule(), () => me.apply_pricing_rule()
() => me.calculate_taxes_and_totals()
]); ]);
} }
} }
@ -1807,6 +1807,46 @@ erpnext.TransactionController = class TransactionController extends erpnext.taxe
]); ]);
} }
update_item_tax_map() {
let me = this;
let item_codes = [];
let item_rates = {};
let item_tax_templates = {};
$.each(this.frm.doc.items || [], function(i, item) {
if (item.item_code) {
// Use combination of name and item code in case same item is added multiple times
item_codes.push([item.item_code, item.name]);
item_rates[item.name] = item.net_rate;
item_tax_templates[item.name] = item.item_tax_template;
}
});
if (item_codes.length) {
return this.frm.call({
method: "erpnext.stock.get_item_details.get_item_tax_info",
args: {
company: me.frm.doc.company,
tax_category: cstr(me.frm.doc.tax_category),
item_codes: item_codes,
item_rates: item_rates,
item_tax_templates: item_tax_templates
},
callback: function(r) {
if (!r.exc) {
$.each(me.frm.doc.items || [], function(i, item) {
if (item.name && r.message.hasOwnProperty(item.name) && r.message[item.name].item_tax_template) {
item.item_tax_template = r.message[item.name].item_tax_template;
item.item_tax_rate = r.message[item.name].item_tax_rate;
me.add_taxes_from_item_tax_template(item.item_tax_rate);
}
});
}
}
});
}
}
item_tax_template(doc, cdt, cdn) { item_tax_template(doc, cdt, cdn) {
var me = this; var me = this;
if(me.frm.updating_party_details) return; if(me.frm.updating_party_details) return;