Merge pull request #12739 from jay-parikh/hotfix
Enable/Disable Discount in POS using POS Profile #11748
This commit is contained in:
commit
cf6360d825
@ -254,6 +254,36 @@
|
|||||||
"set_only_once": 0,
|
"set_only_once": 0,
|
||||||
"unique": 0
|
"unique": 0
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"allow_bulk_edit": 0,
|
||||||
|
"allow_on_submit": 0,
|
||||||
|
"bold": 0,
|
||||||
|
"collapsible": 0,
|
||||||
|
"columns": 0,
|
||||||
|
"fieldname": "allow_user_to_edit_discount",
|
||||||
|
"fieldtype": "Check",
|
||||||
|
"hidden": 0,
|
||||||
|
"ignore_user_permissions": 0,
|
||||||
|
"ignore_xss_filter": 0,
|
||||||
|
"in_filter": 0,
|
||||||
|
"in_global_search": 0,
|
||||||
|
"in_list_view": 0,
|
||||||
|
"in_standard_filter": 0,
|
||||||
|
"label": "Allow user to edit Discount",
|
||||||
|
"length": 0,
|
||||||
|
"no_copy": 0,
|
||||||
|
"permlevel": 0,
|
||||||
|
"precision": "",
|
||||||
|
"print_hide": 0,
|
||||||
|
"print_hide_if_no_value": 0,
|
||||||
|
"read_only": 0,
|
||||||
|
"remember_last_selected_value": 0,
|
||||||
|
"report_hide": 0,
|
||||||
|
"reqd": 0,
|
||||||
|
"search_index": 0,
|
||||||
|
"set_only_once": 0,
|
||||||
|
"unique": 0
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
"allow_bulk_edit": 0,
|
||||||
"allow_on_submit": 0,
|
"allow_on_submit": 0,
|
||||||
@ -1476,7 +1506,7 @@
|
|||||||
"issingle": 0,
|
"issingle": 0,
|
||||||
"istable": 0,
|
"istable": 0,
|
||||||
"max_attachments": 0,
|
"max_attachments": 0,
|
||||||
"modified": "2018-01-03 17:30:45.198147",
|
"modified": "2018-01-31 19:33:11.765731",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Accounts",
|
"module": "Accounts",
|
||||||
"name": "POS Profile",
|
"name": "POS Profile",
|
||||||
|
@ -249,7 +249,8 @@ class SalesInvoice(SellingController):
|
|||||||
if pos:
|
if pos:
|
||||||
return {
|
return {
|
||||||
"print_format": pos.get("print_format_for_online"),
|
"print_format": pos.get("print_format_for_online"),
|
||||||
"allow_edit_rate": pos.get("allow_user_to_edit_rate")
|
"allow_edit_rate": pos.get("allow_user_to_edit_rate"),
|
||||||
|
"allow_edit_discount": pos.get("allow_user_to_edit_discount")
|
||||||
}
|
}
|
||||||
|
|
||||||
def update_time_sheet(self, sales_invoice):
|
def update_time_sheet(self, sales_invoice):
|
||||||
|
@ -464,6 +464,7 @@ erpnext.pos.PointOfSale = class PointOfSale {
|
|||||||
if (r.message) {
|
if (r.message) {
|
||||||
this.frm.meta.default_print_format = r.message.print_format || 'POS Invoice';
|
this.frm.meta.default_print_format = r.message.print_format || 'POS Invoice';
|
||||||
this.frm.allow_edit_rate = r.message.allow_edit_rate;
|
this.frm.allow_edit_rate = r.message.allow_edit_rate;
|
||||||
|
this.frm.allow_edit_discount = r.message.allow_edit_discount;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -553,9 +554,9 @@ class POSCart {
|
|||||||
<div class="taxes-and-totals">
|
<div class="taxes-and-totals">
|
||||||
${this.get_taxes_and_totals()}
|
${this.get_taxes_and_totals()}
|
||||||
</div>
|
</div>
|
||||||
<div class="discount-amount">
|
<div class="discount-amount">`+
|
||||||
${this.get_discount_amount()}
|
(!this.frm.allow_edit_discount ? `` : `${this.get_discount_amount()}`)+
|
||||||
</div>
|
`</div>
|
||||||
<div class="grand-total">
|
<div class="grand-total">
|
||||||
${this.get_grand_total()}
|
${this.get_grand_total()}
|
||||||
</div>
|
</div>
|
||||||
@ -584,6 +585,7 @@ class POSCart {
|
|||||||
this.numpad && this.numpad.reset_value();
|
this.numpad && this.numpad.reset_value();
|
||||||
this.customer_field.set_value("");
|
this.customer_field.set_value("");
|
||||||
|
|
||||||
|
this.$discount_amount.find('input:text').val('');
|
||||||
this.wrapper.find('.grand-total-value').text(
|
this.wrapper.find('.grand-total-value').text(
|
||||||
format_currency(this.frm.doc.grand_total, this.frm.currency));
|
format_currency(this.frm.doc.grand_total, this.frm.currency));
|
||||||
this.wrapper.find('.rounded-total-value').text(
|
this.wrapper.find('.rounded-total-value').text(
|
||||||
@ -714,6 +716,17 @@ class POSCart {
|
|||||||
this.customer_field.set_value(this.frm.doc.customer);
|
this.customer_field.set_value(this.frm.doc.customer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
disable_numpad_control() {
|
||||||
|
let disabled_btns = [];
|
||||||
|
if(!this.frm.allow_edit_rate) {
|
||||||
|
disabled_btns.push('Rate');
|
||||||
|
}
|
||||||
|
if(!this.frm.allow_edit_discount) {
|
||||||
|
disabled_btns.push('Disc');
|
||||||
|
}
|
||||||
|
return disabled_btns;
|
||||||
|
}
|
||||||
|
|
||||||
make_numpad() {
|
make_numpad() {
|
||||||
this.numpad = new NumberPad({
|
this.numpad = new NumberPad({
|
||||||
button_array: [
|
button_array: [
|
||||||
@ -728,7 +741,7 @@ class POSCart {
|
|||||||
disable_highlight: ['Qty', 'Disc', 'Rate', 'Pay'],
|
disable_highlight: ['Qty', 'Disc', 'Rate', 'Pay'],
|
||||||
reset_btns: ['Qty', 'Disc', 'Rate', 'Pay'],
|
reset_btns: ['Qty', 'Disc', 'Rate', 'Pay'],
|
||||||
del_btn: 'Del',
|
del_btn: 'Del',
|
||||||
disable_btns: !this.frm.allow_edit_rate ? ['Rate']: [],
|
disable_btns: this.disable_numpad_control(),
|
||||||
wrapper: this.wrapper.find('.number-pad-container'),
|
wrapper: this.wrapper.find('.number-pad-container'),
|
||||||
onclick: (btn_value) => {
|
onclick: (btn_value) => {
|
||||||
// on click
|
// on click
|
||||||
@ -1300,6 +1313,7 @@ class NumberPad {
|
|||||||
|
|
||||||
this.set_class();
|
this.set_class();
|
||||||
|
|
||||||
|
if(this.disable_btns) {
|
||||||
this.disable_btns.forEach((btn) => {
|
this.disable_btns.forEach((btn) => {
|
||||||
const $btn = this.get_btn(btn);
|
const $btn = this.get_btn(btn);
|
||||||
$btn.prop("disabled", true)
|
$btn.prop("disabled", true)
|
||||||
@ -1308,6 +1322,7 @@ class NumberPad {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
set_class() {
|
set_class() {
|
||||||
for (const btn in this.add_class) {
|
for (const btn in this.add_class) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user