fixed: fucha接口硬编码了微信查询
This commit is contained in:
@@ -514,6 +514,10 @@ class PaymentVerifyView(APIView):
|
||||
|
||||
# ---------- 5. 如果状态为9,则主动查询微信支付状态 ----------
|
||||
if dingdan.Status == 9:
|
||||
# 支付宝订单:异步回调会更新状态,这里返回支付中
|
||||
if cache.get(f'alipay_pay_url_{dingdanid}'):
|
||||
return Response({'code': 1, 'msg': '支付中', 'data': {'zhuangtai': 9}})
|
||||
|
||||
# 使用分布式锁防止并发处理同一订单
|
||||
lock_key = f"payment_verify_lock_{dingdanid}"
|
||||
if not cache.add(lock_key, "locked", timeout=10):
|
||||
@@ -1084,7 +1088,7 @@ class CreateOrderView(APIView):
|
||||
def generate_alipay_pay_params(self, dingdanid, jine, subject, club_id=None):
|
||||
"""
|
||||
生成支付宝 wap.pay 跳转 URL,存入 cache 供中转页取用。
|
||||
前端只需传订单号构造短 URL,避免 web-view src URL 过长被拒。
|
||||
同时返回 pay_url 供前端直接加载(绕过中转页跳转限制)。
|
||||
"""
|
||||
try:
|
||||
from jituan.services.alipay_pay import build_wap_pay_url
|
||||
@@ -1094,10 +1098,11 @@ class CreateOrderView(APIView):
|
||||
subject=subject,
|
||||
club_id=club_id,
|
||||
)
|
||||
# 存入 cache,30 分钟过期(与支付宝订单超时一致)
|
||||
# 存入 cache,30 分钟过期(供中转页/查询接口判断支付方式)
|
||||
cache_key = f'alipay_pay_url_{dingdanid}'
|
||||
cache.set(cache_key, pay_url, 60 * 30)
|
||||
return {
|
||||
'pay_url': pay_url,
|
||||
'pay_method': 'alipay',
|
||||
}
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user