mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-01 11:19:09 +00:00
Merge pull request #44481 from frappe/mergify/bp/version-15-hotfix/pr-44450
fix: calculate submitted payment entry amount for grand total (backport #44450)
This commit is contained in:
@@ -778,6 +778,8 @@ def get_existing_paid_amount(doctype, name):
|
|||||||
.where(PL.against_voucher_type.eq(doctype))
|
.where(PL.against_voucher_type.eq(doctype))
|
||||||
.where(PL.against_voucher_no.eq(name))
|
.where(PL.against_voucher_no.eq(name))
|
||||||
.where(PL.amount < 0)
|
.where(PL.amount < 0)
|
||||||
|
.where(PL.delinked == 0)
|
||||||
|
.where(PER.docstatus == 1)
|
||||||
.where(PER.payment_request.isnull())
|
.where(PER.payment_request.isnull())
|
||||||
)
|
)
|
||||||
response = query.run()
|
response = query.run()
|
||||||
|
|||||||
@@ -543,3 +543,30 @@ class TestPaymentRequest(FrappeTestCase):
|
|||||||
pr = make_payment_request(dt="Sales Invoice", dn=si.name, mute_email=1)
|
pr = make_payment_request(dt="Sales Invoice", dn=si.name, mute_email=1)
|
||||||
|
|
||||||
self.assertEqual(pr.grand_total, si.outstanding_amount)
|
self.assertEqual(pr.grand_total, si.outstanding_amount)
|
||||||
|
|
||||||
|
|
||||||
|
def test_partial_paid_invoice_with_submitted_payment_entry(self):
|
||||||
|
pi = make_purchase_invoice(currency="INR", qty=1, rate=5000)
|
||||||
|
pi.save()
|
||||||
|
pi.submit()
|
||||||
|
|
||||||
|
pe = get_payment_entry("Purchase Invoice", pi.name, bank_account="_Test Bank - _TC")
|
||||||
|
pe.reference_no = "PURINV0001"
|
||||||
|
pe.reference_date = frappe.utils.nowdate()
|
||||||
|
pe.paid_amount = 2500
|
||||||
|
pe.references[0].allocated_amount = 2500
|
||||||
|
pe.save()
|
||||||
|
pe.submit()
|
||||||
|
pe.cancel()
|
||||||
|
|
||||||
|
pe = get_payment_entry("Purchase Invoice", pi.name, bank_account="_Test Bank - _TC")
|
||||||
|
pe.reference_no = "PURINV0002"
|
||||||
|
pe.reference_date = frappe.utils.nowdate()
|
||||||
|
pe.paid_amount = 2500
|
||||||
|
pe.references[0].allocated_amount = 2500
|
||||||
|
pe.save()
|
||||||
|
pe.submit()
|
||||||
|
|
||||||
|
pi.load_from_db()
|
||||||
|
pr = make_payment_request(dt="Purchase Invoice", dn=pi.name, mute_email=1)
|
||||||
|
self.assertEqual(pr.grand_total, pi.outstanding_amount)
|
||||||
|
|||||||
Reference in New Issue
Block a user