瀏覽代碼

[minor] wait for razorpay to complete the payment

version-14
Rushabh Mehta 8 年之前
父節點
當前提交
290897f849
共有 2 個檔案被更改,包括 16 行新增7 行删除
  1. +7
    -2
      frappe/integrations/razorpay.py
  2. +9
    -5
      frappe/templates/pages/integrations/razorpay_checkout.py

+ 7
- 2
frappe/integrations/razorpay.py 查看文件

@@ -163,8 +163,13 @@ class Controller(IntegrationController):

if self.flags.status_changed_to == "Authorized":
if self.data.reference_doctype and self.data.reference_docname:
custom_redirect_to = frappe.get_doc(self.data.reference_doctype,
self.data.reference_docname).run_method("on_payment_authorized", self.flags.status_changed_to)
custom_redirect_to = None
try:
custom_redirect_to = frappe.get_doc(self.data.reference_doctype,
self.data.reference_docname).run_method("on_payment_authorized", self.flags.status_changed_to)
except Exception:
frappe.log_error(frappe.get_traceback())

if custom_redirect_to:
redirect_to = custom_redirect_to



+ 9
- 5
frappe/templates/pages/integrations/razorpay_checkout.py 查看文件

@@ -3,8 +3,8 @@
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.utils import get_url, flt
import json, urllib
from frappe.utils import flt
import json

from frappe.integrations.razorpay import Controller

@@ -18,8 +18,6 @@ def get_context(context):
context.no_cache = 1
context.api_key = Controller().get_settings().api_key

installed_apps = frappe.get_installed_apps()

# all these keys exist in form_dict
if not (set(expected_keys) - set(frappe.form_dict.keys())):
for key in expected_keys:
@@ -45,4 +43,10 @@ def make_payment(razorpay_payment_id, options, reference_doctype, reference_docn
"reference_doctype": reference_doctype
})

return Controller().create_request(data)
# let razorpay commit its payments!
import time
time.sleep(0.5)

data = Controller().create_request(data)
frappe.db.commit()
return data

Loading…
取消
儲存