30 lines
643 B
Plaintext
30 lines
643 B
Plaintext
import urllib.parse
|
|
params_kw.amount = float(params_kw.amount)
|
|
debug(f'recharge.dspy: {params_kw=}')
|
|
try:
|
|
code_url = await create_payment(request, params_kw)
|
|
if params_kw.provider == 'transfer':
|
|
return {
|
|
"widgettype":"urlwidget",
|
|
"mode":"replace",
|
|
"target":"app.sage_main_content",
|
|
"options":{"url": code_url}
|
|
}
|
|
qr_url = entire_url('/unipay/qr.dspy?data=') + urllib.parse.quote(code_url, safe='')
|
|
return {
|
|
"widgettype":"NewWindow",
|
|
"options":{
|
|
"url": qr_url,
|
|
"height": "340",
|
|
"width":"340"
|
|
}
|
|
}
|
|
except Exception as e:
|
|
return {
|
|
"widgettype":"Text",
|
|
"options":{
|
|
"width":"100%",
|
|
"text":f"{e}"
|
|
}
|
|
}
|