Validate total advance against grand total considering write off amount
This commit is contained in:
parent
2d132e32aa
commit
8d8cba7faa
@ -404,11 +404,14 @@ class calculate_taxes_and_totals(object):
|
|||||||
self.doc.total_advance = flt(total_allocated_amount, self.doc.precision("total_advance"))
|
self.doc.total_advance = flt(total_allocated_amount, self.doc.precision("total_advance"))
|
||||||
|
|
||||||
if self.doc.party_account_currency == self.doc.currency:
|
if self.doc.party_account_currency == self.doc.currency:
|
||||||
invoice_total = self.doc.grand_total
|
invoice_total = flt(self.doc.grand_total - self.write_off_amount,
|
||||||
else:
|
|
||||||
invoice_total = flt(self.doc.grand_total * self.doc.conversion_rate,
|
|
||||||
self.doc.precision("grand_total"))
|
self.doc.precision("grand_total"))
|
||||||
|
else:
|
||||||
|
base_write_off_amount = flt(self.doc.write_off_amount * self.doc.conversion_rate,
|
||||||
|
self.doc.precision("base_write_off_amount"))
|
||||||
|
invoice_total = flt(self.doc.grand_total * self.doc.conversion_rate,
|
||||||
|
self.doc.precision("grand_total")) - base_write_off_amount
|
||||||
|
|
||||||
if invoice_total > 0 and self.doc.total_advance > invoice_total:
|
if invoice_total > 0 and self.doc.total_advance > invoice_total:
|
||||||
frappe.throw(_("Advance amount cannot be greater than {0} {1}")
|
frappe.throw(_("Advance amount cannot be greater than {0} {1}")
|
||||||
.format(self.doc.party_account_currency, invoice_total))
|
.format(self.doc.party_account_currency, invoice_total))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user