mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-09 16:21:19 +00:00
fix: removed bug of set_advance_payment_status
This commit is contained in:
@@ -192,6 +192,7 @@ class PaymentEntry(AccountsController):
|
||||
self.update_payment_schedule()
|
||||
self.set_payment_req_outstanding_amount()
|
||||
self.set_payment_req_status()
|
||||
self.set_reference_advance_payment_status()
|
||||
self.set_status()
|
||||
|
||||
def set_liability_account(self):
|
||||
@@ -268,6 +269,7 @@ class PaymentEntry(AccountsController):
|
||||
self.update_payment_schedule(cancel=1)
|
||||
self.set_payment_req_outstanding_amount(cancel=True)
|
||||
self.set_payment_req_status()
|
||||
self.set_reference_advance_payment_status()
|
||||
self.set_status()
|
||||
|
||||
def set_payment_req_outstanding_amount(self, cancel=False):
|
||||
@@ -282,6 +284,18 @@ class PaymentEntry(AccountsController):
|
||||
|
||||
update_payment_req_status(self, None)
|
||||
|
||||
# todo: need to optimize
|
||||
def set_reference_advance_payment_status(self):
|
||||
advance_payment_doctypes = frappe.get_hooks("advance_payment_receivable_doctypes") + frappe.get_hooks(
|
||||
"advance_payment_payable_doctypes"
|
||||
)
|
||||
|
||||
for ref in self.get("references"):
|
||||
ref_doc = frappe.get_doc(ref.reference_doctype, ref.reference_name)
|
||||
if ref.reference_doctype in advance_payment_doctypes:
|
||||
# set advance payment status
|
||||
ref_doc.set_advance_payment_status()
|
||||
|
||||
def update_outstanding_amounts(self):
|
||||
self.set_missing_ref_details(force=True)
|
||||
|
||||
@@ -1744,7 +1758,7 @@ class PaymentEntry(AccountsController):
|
||||
|
||||
frappe.msgprint(msg=msg, alert=True, indicator="orange")
|
||||
|
||||
# todo: can be optimized
|
||||
# todo: can be optimize
|
||||
@frappe.whitelist()
|
||||
def set_matched_payment_requests(self):
|
||||
if not self.references:
|
||||
@@ -1799,7 +1813,7 @@ class PaymentEntry(AccountsController):
|
||||
)
|
||||
|
||||
|
||||
# todo: can be optimized
|
||||
# todo: can be optimize
|
||||
def get_matched_payment_request(reference_doctype, reference_name, outstanding_amount):
|
||||
payment_requests = frappe.get_all(
|
||||
doctype="Payment Request",
|
||||
|
||||
@@ -154,15 +154,6 @@ class PaymentRequest(Document):
|
||||
).format(self.grand_total, amount)
|
||||
)
|
||||
|
||||
def on_change(self):
|
||||
ref_doc = frappe.get_doc(self.reference_doctype, self.reference_name)
|
||||
advance_payment_doctypes = frappe.get_hooks("advance_payment_receivable_doctypes") + frappe.get_hooks(
|
||||
"advance_payment_payable_doctypes"
|
||||
)
|
||||
if self.reference_doctype in advance_payment_doctypes:
|
||||
# set advance payment status
|
||||
ref_doc.set_advance_payment_status()
|
||||
|
||||
def before_submit(self):
|
||||
self.outstanding_amount = self.grand_total
|
||||
|
||||
@@ -180,6 +171,9 @@ class PaymentRequest(Document):
|
||||
self.send_email()
|
||||
self.make_communication_entry()
|
||||
|
||||
def on_submit(self):
|
||||
self.update_reference_advance_payment_status()
|
||||
|
||||
def request_phone_payment(self):
|
||||
controller = _get_payment_gateway_controller(self.payment_gateway)
|
||||
request_amount = self.get_request_amount()
|
||||
@@ -217,6 +211,7 @@ class PaymentRequest(Document):
|
||||
def on_cancel(self):
|
||||
self.check_if_payment_entry_exists()
|
||||
self.set_as_cancelled()
|
||||
self.update_reference_advance_payment_status()
|
||||
|
||||
def make_invoice(self):
|
||||
from erpnext.selling.doctype.sales_order.sales_order import make_sales_invoice
|
||||
@@ -424,6 +419,15 @@ class PaymentRequest(Document):
|
||||
|
||||
return create_stripe_subscription(gateway_controller, data)
|
||||
|
||||
def update_reference_advance_payment_status(self):
|
||||
ref_doc = frappe.get_doc(self.reference_doctype, self.reference_name)
|
||||
advance_payment_doctypes = frappe.get_hooks("advance_payment_receivable_doctypes") + frappe.get_hooks(
|
||||
"advance_payment_payable_doctypes"
|
||||
)
|
||||
if self.reference_doctype in advance_payment_doctypes:
|
||||
# set advance payment status
|
||||
ref_doc.set_advance_payment_status()
|
||||
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def make_payment_request(**args):
|
||||
|
||||
@@ -1943,6 +1943,8 @@ class AccountsController(TransactionBase):
|
||||
|
||||
self.set_advance_payment_status()
|
||||
|
||||
# todo: need to optimize
|
||||
# todo: modularize
|
||||
def set_advance_payment_status(self):
|
||||
from erpnext.accounts.doctype.payment_request.payment_request import (
|
||||
get_existing_payment_request_amount as get_paid_amount,
|
||||
|
||||
Reference in New Issue
Block a user