fix: 统一付呗/微信直连官方查单确认,轮询幂等入账

复查与充值轮询按通道查官方单:付呗单查付呗、直连查微信;履约仍幂等防多加,未完成返回业务码便于继续轮询。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
XingQue
2026-07-21 20:57:36 +08:00
parent b19430213a
commit dacd55bb1e
9 changed files with 185 additions and 125 deletions

View File

@@ -637,7 +637,7 @@ class ShangjiaChenggong(APIView):
return Response({
'code': 400,
'message': '订单尚未支付完成'
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
# 4. 检查订单状态是否为已支付3
if order.zhuangtai != 3:
@@ -645,7 +645,7 @@ class ShangjiaChenggong(APIView):
return Response({
'code': 400,
'message': '订单尚未支付完成'
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
# 5. 获取商家余额(通过反向查询)
try:

View File

@@ -645,13 +645,13 @@ class HuiyuanLunxun(APIView):
return Response({
'code': 400,
'message': str(exc),
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
if order.zhuangtai != 3:
return Response({
'code': 400,
'message': '会员订单尚未支付完成'
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
from jituan.services.member_recharge import repair_member_entitlement_if_paid
repair_member_entitlement_if_paid(dingdanid)

View File

@@ -603,14 +603,14 @@ class JifenLunxun(APIView):
return Response({
'code': 400,
'message': str(exc),
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
if order.zhuangtai != 3:
logger.info(f"积分订单{dingdanid}尚未支付完成,当前状态: {order.zhuangtai}")
return Response({
'code': 400,
'message': '积分订单尚未支付完成'
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
# 5. 获取打手积分(通过反向查询)
try:

View File

@@ -609,14 +609,14 @@ class YajinLunxun(APIView):
return Response({
'code': 400,
'message': str(exc),
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
if order.zhuangtai != 3:
logger.info(f"订单{dingdanid}尚未支付完成,当前状态: {order.zhuangtai}")
return Response({
'code': 400,
'message': '订单尚未支付完成'
}, status=status.HTTP_400_BAD_REQUEST)
}, status=status.HTTP_200_OK)
# 4. 获取打手押金(通过反向查询,最快捷的方式)
try: