fix: 全支付接口入口拦截小汐支付宝,微信支付路径不动
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -126,6 +126,17 @@ class YajinGoumai(APIView):
|
||||
'message': '充值金额必须在1-10000元之间'
|
||||
}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
pay_method = (request.data.get('pay_method') or request.data.get('payMethod') or 'wechat').lower()
|
||||
from jituan.services.club_write import resolve_club_id_for_write
|
||||
from jituan.services.alipay_pay import alipay_pay_method_block_reason
|
||||
pay_club = resolve_club_id_for_write(request, request.user)
|
||||
_alipay_block = alipay_pay_method_block_reason(pay_method, pay_club)
|
||||
if _alipay_block:
|
||||
return Response({
|
||||
'code': 400,
|
||||
'message': _alipay_block,
|
||||
}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
# 3. 生成订单ID(使用你提供的算法,前缀改为CzYJ)
|
||||
timestamp_ms = int(time.time() * 1000)
|
||||
timestamp_ns = int(time.time_ns() // 1000) % 1000000
|
||||
@@ -141,13 +152,12 @@ class YajinGoumai(APIView):
|
||||
jine=jine,
|
||||
leixing=2, # 充值类型:2=押金
|
||||
shuoming=settings.YAJIN_PAY_DESCRIPTION,
|
||||
club_id=resolve_club_id_for_write(request, request.user),
|
||||
club_id=pay_club,
|
||||
)
|
||||
|
||||
logger.info(f"创建押金充值订单: 用户{request.user.UserUID}, 订单{dingdanid}, 金额{jine}元")
|
||||
|
||||
# 5. 生成支付参数(支持支付宝/微信)
|
||||
pay_method = (request.data.get('pay_method') or request.data.get('payMethod') or 'wechat').lower()
|
||||
if pay_method == 'alipay':
|
||||
try:
|
||||
from jituan.services.alipay_pay import generate_alipay_czjilu_pay_params
|
||||
@@ -155,7 +165,7 @@ class YajinGoumai(APIView):
|
||||
dingdanid=dingdanid,
|
||||
jine=jine,
|
||||
subject=settings.YAJIN_PAY_DESCRIPTION,
|
||||
club_id=resolve_club_id_for_write(request, request.user),
|
||||
club_id=pay_club,
|
||||
)
|
||||
except Exception as e:
|
||||
chongzhi_jilu.delete()
|
||||
@@ -166,7 +176,6 @@ class YajinGoumai(APIView):
|
||||
}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
|
||||
else:
|
||||
try:
|
||||
pay_club = resolve_club_id_for_write(request, request.user)
|
||||
pay_openid, _ = get_payment_openid(request, club_id=pay_club)
|
||||
if not pay_openid:
|
||||
chongzhi_jilu.delete()
|
||||
|
||||
Reference in New Issue
Block a user