Merge pull request #9690 from rmehta/additional-discount-fix

[fix] reset flag after promise
This commit is contained in:
Nabin Hait 2017-07-07 13:26:14 +05:30 committed by GitHub
commit 4e21f11864

View File

@ -63,37 +63,32 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
}); });
frappe.ui.form.on(this.frm.doctype, "additional_discount_percentage", function(frm) { frappe.ui.form.on(this.frm.doctype, "additional_discount_percentage", function(frm) {
if (frm.via_discount_amount) {
return;
}
if(!frm.doc.apply_discount_on) { if(!frm.doc.apply_discount_on) {
frappe.msgprint(__("Please set 'Apply Additional Discount On'")); frappe.msgprint(__("Please set 'Apply Additional Discount On'"));
return return;
} }
frm.via_discount_percentage = true; frm.via_discount_percentage = true;
if(frm.doc.additional_discount_percentage && frm.doc.discount_amount) { if(frm.doc.additional_discount_percentage && frm.doc.discount_amount) {
// Reset discount amount and net / grand total // Reset discount amount and net / grand total
frm.set_value("discount_amount", 0); frm.doc.discount_amount = 0;
frm.cscript.calculate_taxes_and_totals();
} }
var total = flt(frm.doc[frappe.model.scrub(frm.doc.apply_discount_on)]); var total = flt(frm.doc[frappe.model.scrub(frm.doc.apply_discount_on)]);
var discount_amount = flt(total*flt(frm.doc.additional_discount_percentage) / 100, var discount_amount = flt(total*flt(frm.doc.additional_discount_percentage) / 100,
precision("discount_amount")); precision("discount_amount"));
frm.set_value("discount_amount", discount_amount); frm.set_value("discount_amount", discount_amount)
delete frm.via_discount_percentage; .then(() => delete frm.via_discount_percentage);
}); });
frappe.ui.form.on(this.frm.doctype, "discount_amount", function(frm) { frappe.ui.form.on(this.frm.doctype, "discount_amount", function(frm) {
frm.cscript.set_dynamic_labels(); frm.cscript.set_dynamic_labels();
if (!frm.via_discount_percentage) { if (!frm.via_discount_percentage) {
frm.via_discount_amount = true; frm.doc.additional_discount_percentage = 0;
frm.set_value("additional_discount_percentage", 0);
delete frm.via_discount_amount;
} }
frm.cscript.calculate_taxes_and_totals(); frm.cscript.calculate_taxes_and_totals();