From ba1e64981444ca25be654e50969f3be5c623431f Mon Sep 17 00:00:00 2001 From: yumoqing Date: Fri, 17 Jul 2026 12:08:14 +0800 Subject: [PATCH] fix(transfer): expose PROVIDERS via ServerEnv, use env.PROVIDERS in transfer_check.dspy --- unipay/init.py | 1 + wwwroot/transfer_check.dspy | 13 +++---------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/unipay/init.py b/unipay/init.py index 4a3a001..ca23a3a 100644 --- a/unipay/init.py +++ b/unipay/init.py @@ -265,6 +265,7 @@ def load_unipay(): env.get_pay_fee = get_pay_fee env.sor_get_pay_fee = sor_get_pay_fee env.PaymentLog = PaymentLog + env.PROVIDERS = PROVIDERS add_startup(setup_callback_path) diff --git a/wwwroot/transfer_check.dspy b/wwwroot/transfer_check.dspy index f3e3ef0..2cc312f 100644 --- a/wwwroot/transfer_check.dspy +++ b/wwwroot/transfer_check.dspy @@ -1,9 +1,10 @@ """手动检查转账邮件并完成入账""" tcode = str(params_kw.tcode) +env = request._run_ns debug(f'transfer_check.dspy: tcode={tcode}') try: - provider = PROVIDERS.get('transfer') + provider = env.PROVIDERS.get('transfer') if provider is None: return {"widgettype": "Message", "options": {"timeout": 3, "title": "错误", "message": "转账渠道未初始化"}} @@ -31,7 +32,6 @@ try: if matched is None: return {"widgettype": "Message", "options": {"timeout": 3, "title": "未匹配", "message": f"暂未找到转账码 {tcode} 的到账邮件,请确认已转账并稍后重试"}} - env = request._run_ns db = DBPools() dbname = get_module_dbname('unipay') async with db.sqlorContext(dbname) as sor: @@ -64,11 +64,4 @@ try: except Exception as e: exception(f'transfer_check.dspy error: {e}') - return { - "widgettype": "Message", - "options": { - "timeout": 5, - "title": "错误", - "message": f"处理失败: {e}" - } - } + return {"widgettype": "Message", "options": {"timeout": 5, "title": "错误", "message": f"处理失败: {e}"}