From e5eb618a917d380a7daa25d367086c5a11962512 Mon Sep 17 00:00:00 2001 From: Subin Tom <36098155+nemesis189@users.noreply.github.com> Date: Fri, 3 Sep 2021 12:30:57 +0530 Subject: [PATCH] fix: braintree payment processed twice (#27300) (cherry picked from commit 798b464ee3b9473774dd554ed5ad572a4d990e26) # Conflicts: # erpnext/accounts/doctype/payment_request/payment_request.py # erpnext/hooks.py --- .../doctype/payment_request/payment_request.py | 10 ++++++++++ erpnext/hooks.py | 8 ++++++++ 2 files changed, 18 insertions(+) diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py index 178cd855061..f32395204a2 100644 --- a/erpnext/accounts/doctype/payment_request/payment_request.py +++ b/erpnext/accounts/doctype/payment_request/payment_request.py @@ -660,6 +660,7 @@ def make_payment_order(source_name, target_doc=None): return doclist +<<<<<<< HEAD def validate_payment(doc, method=None): if doc.reference_doctype != "Payment Request" or ( @@ -672,3 +673,12 @@ def validate_payment(doc, method=None): doc.reference_docname ) ) +======= +def validate_payment(doc, method=""): + if not frappe.db.has_column(doc.reference_doctype, 'status'): + return + + status = frappe.db.get_value(doc.reference_doctype, doc.reference_docname, 'status') + if status == 'Paid': + frappe.throw(_("The Payment Request {0} is already paid, cannot process payment twice").format(doc.reference_docname)) +>>>>>>> 798b464ee3 (fix: braintree payment processed twice (#27300)) diff --git a/erpnext/hooks.py b/erpnext/hooks.py index 651e6a0ac22..22c47f29e77 100644 --- a/erpnext/hooks.py +++ b/erpnext/hooks.py @@ -438,6 +438,7 @@ doc_events = { "validate": ["erpnext.erpnext_integrations.taxjar_integration.set_sales_tax"] }, "Company": { +<<<<<<< HEAD "on_trash": [ "erpnext.regional.india.utils.delete_gst_settings_for_company", "erpnext.regional.saudi_arabia.utils.delete_vat_settings_for_company", @@ -446,6 +447,13 @@ doc_events = { "Integration Request": { "validate": "erpnext.accounts.doctype.payment_request.payment_request.validate_payment" }, +======= + "on_trash": "erpnext.regional.india.utils.delete_gst_settings_for_company" + }, + "Integration Request": { + "validate": "erpnext.accounts.doctype.payment_request.payment_request.validate_payment" + } +>>>>>>> 798b464ee3 (fix: braintree payment processed twice (#27300)) } # On cancel event Payment Entry will be exempted and all linked submittable doctype will get cancelled.