fix(pos): coupon code is applied even if ignore pricing rule is check

(cherry picked from commit 81514516f3)

# Conflicts:
#	erpnext/public/js/controllers/transaction.js
This commit is contained in:
Saqib Ansari
2022-02-25 15:18:06 +05:30
committed by mergify-bot
parent da4e43b8bc
commit 25c434fb02
2 changed files with 29 additions and 11 deletions

View File

@@ -2263,6 +2263,7 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
}
},
<<<<<<< HEAD
coupon_code: function() {
var me = this;
frappe.run_serially([
@@ -2271,6 +2272,20 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
() => this.frm.doc.ignore_pricing_rule=0,
() => me.apply_pricing_rule()
]);
=======
coupon_code() {
if (this.frm.doc.coupon_code || this.frm._last_coupon_code) {
// reset pricing rules if coupon code is set or is unset
const _ignore_pricing_rule = this.frm.doc.ignore_pricing_rule;
return frappe.run_serially([
() => this.frm.doc.ignore_pricing_rule=1,
() => this.frm.trigger('ignore_pricing_rule'),
() => this.frm.doc.ignore_pricing_rule=_ignore_pricing_rule,
() => this.frm.trigger('apply_pricing_rule'),
() => this.frm._last_coupon_code = this.frm.doc.coupon_code
]);
}
>>>>>>> 81514516f3 (fix(pos): coupon code is applied even if ignore pricing rule is check)
}
});

View File

@@ -170,17 +170,20 @@ erpnext.PointOfSale.Payment = class {
});
frappe.ui.form.on('POS Invoice', 'coupon_code', (frm) => {
if (!frm.doc.ignore_pricing_rule) {
if (frm.doc.coupon_code) {
frappe.run_serially([
() => frm.doc.ignore_pricing_rule=1,
() => frm.trigger('ignore_pricing_rule'),
() => frm.doc.ignore_pricing_rule=0,
() => frm.trigger('apply_pricing_rule'),
() => frm.save(),
() => this.update_totals_section(frm.doc)
]);
}
if (!frm.doc.ignore_pricing_rule && frm.doc.coupon_code) {
frappe.run_serially([
() => frm.doc.ignore_pricing_rule=1,
() => frm.trigger('ignore_pricing_rule'),
() => frm.doc.ignore_pricing_rule=0,
() => frm.trigger('apply_pricing_rule'),
() => frm.save(),
() => this.update_totals_section(frm.doc)
]);
} else if (frm.doc.ignore_pricing_rule && frm.doc.coupon_code) {
frappe.show_alert({
message: __("Ignore Pricing Rule is enabled. Cannot apply coupon code."),
indicator: "orange"
});
}
});