On change of item rate, set margin amount on price list rate, instead of margin percentage (#8988)
This commit is contained in:
parent
f8b412ba98
commit
e72c98dafb
@ -15,10 +15,10 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
|
||||
// if rate is greater than price_list_rate, set margin
|
||||
// or set discount
|
||||
item.discount_percentage = 0;
|
||||
item.margin_type = 'Percentage';
|
||||
item.margin_rate_or_amount = flt(Math.abs(1 - item.rate / item.price_list_rate) * 100.0,
|
||||
precision("discount_percentage", item));
|
||||
item.rate_with_margin = item.rate;
|
||||
item.margin_type = 'Amount';
|
||||
item.margin_rate_or_amount = flt(item.rate - item.price_list_rate,
|
||||
precision("margin_rate_or_amount", item));
|
||||
item.rate_with_margin = item.rate;
|
||||
} else {
|
||||
item.discount_percentage = flt((1 - item.rate / item.price_list_rate) * 100.0,
|
||||
precision("discount_percentage", item));
|
||||
|
@ -348,9 +348,13 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({
|
||||
margin_type: function(doc, cdt, cdn){
|
||||
// calculate the revised total margin and rate on margin type changes
|
||||
item = locals[cdt][cdn];
|
||||
this.apply_pricing_rule_on_item(item, doc,cdt, cdn)
|
||||
this.calculate_taxes_and_totals();
|
||||
cur_frm.refresh_fields();
|
||||
if(!item.margin_type) {
|
||||
frappe.model.set_value(cdt, cdn, "margin_rate_or_amount", 0);
|
||||
} else {
|
||||
this.apply_pricing_rule_on_item(item, doc,cdt, cdn)
|
||||
this.calculate_taxes_and_totals();
|
||||
cur_frm.refresh_fields();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user