From e69849d3334c5a2451c7698e2eb87bc2c74a135b Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Sat, 9 Apr 2022 16:28:25 +0530 Subject: [PATCH] fix(pos): cannot change paid amount in pos payments (#30661) --- erpnext/selling/page/point_of_sale/pos_controller.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/erpnext/selling/page/point_of_sale/pos_controller.js b/erpnext/selling/page/point_of_sale/pos_controller.js index 6974bed4f1f5..65e0cbb7a5c9 100644 --- a/erpnext/selling/page/point_of_sale/pos_controller.js +++ b/erpnext/selling/page/point_of_sale/pos_controller.js @@ -721,11 +721,14 @@ erpnext.PointOfSale.Controller = class { async save_and_checkout() { if (this.frm.is_dirty()) { + let save_error = false; + await this.frm.save(null, null, null, () => save_error = true); // only move to payment section if save is successful - frappe.route_hooks.after_save = () => this.payment.checkout(); - return this.frm.save( - null, null, null, () => this.cart.toggle_checkout_btn(true) // show checkout button on error - ); + !save_error && this.payment.checkout(); + // show checkout button on error + save_error && setTimeout(() => { + this.cart.toggle_checkout_btn(true); + }, 300); // wait for save to finish } else { this.payment.checkout(); }