[Fix] decimal button not working
diff --git a/erpnext/controllers/taxes_and_totals.py b/erpnext/controllers/taxes_and_totals.py
index 125f4fe..da803cf 100644
--- a/erpnext/controllers/taxes_and_totals.py
+++ b/erpnext/controllers/taxes_and_totals.py
@@ -471,7 +471,8 @@
def calculate_write_off_amount(self):
if flt(self.doc.change_amount) > 0:
- self.doc.write_off_amount = self.doc.grand_total - self.doc.paid_amount + self.doc.change_amount
+ self.doc.write_off_amount = flt(self.doc.grand_total - self.doc.paid_amount + self.doc.change_amount,
+ self.doc.precision("write_off_amount"))
self.doc.base_write_off_amount = flt(self.doc.write_off_amount * self.doc.conversion_rate,
self.doc.precision("base_write_off_amount"))
diff --git a/erpnext/public/js/payment/payments.js b/erpnext/public/js/payment/payments.js
index 6133fcf..23db61f 100644
--- a/erpnext/public/js/payment/payments.js
+++ b/erpnext/public/js/payment/payments.js
@@ -112,15 +112,15 @@
$(this.$body).find('.form-control').click(function(){
me.idx = $(this).attr("idx");
me.set_outstanding_amount();
- me.update_paid_amount();
+ me.update_paid_amount(true);
})
$(this.$body).find('.write_off_amount').change(function(){
- me.write_off_amount(flt($(this).val()));
+ me.write_off_amount(flt($(this).val()), precision("write_off_amount"));
})
$(this.$body).find('.change_amount').change(function(){
- me.change_amount(flt($(this).val()));
+ me.change_amount(flt($(this).val()), precision("change_amount"));
})
},
@@ -139,7 +139,7 @@
me.payment_val += $(this).text();
me.selected_mode.val(format_number(me.payment_val, 2))
me.idx = me.selected_mode.attr("idx")
- me.selected_mode.change()
+ me.update_paid_amount()
})
$(this.$body).find('.delete-btn').click(function(){
@@ -192,14 +192,14 @@
this.show_amounts()
},
- update_paid_amount: function() {
+ update_paid_amount: function(update_write_off) {
var me = this;
if(in_list(['change_amount', 'write_off_amount'], this.idx)){
value = me.selected_mode.val();
if(me.idx == 'change_amount'){
me.change_amount(value)
} else{
- if(value == 0) {
+ if(value == 0 && update_write_off) {
value = me.frm.doc.outstanding_amount;
}
me.write_off_amount(value)
@@ -224,9 +224,9 @@
show_amounts: function(){
var me = this;
- $(this.$body).find(".write_off_amount").val(flt(this.frm.doc.write_off_amount, precision("write_off_amount")));
+ $(this.$body).find(".write_off_amount").val(format_number(this.frm.doc.write_off_amount, precision("write_off_amount")));
$(this.$body).find('.paid_amount').text(format_currency(this.frm.doc.paid_amount, this.frm.doc.currency));
- $(this.$body).find('.change_amount').val(flt(this.frm.doc.change_amount, precision("change_amount")))
+ $(this.$body).find('.change_amount').val(format_number(this.frm.doc.change_amount, precision("change_amount")))
$(this.$body).find('.outstanding_amount').text(format_currency(this.frm.doc.outstanding_amount, this.frm.doc.currency))
this.update_invoice();
}