1. 更换打手 /houtai/zxkfghds

问题:H5 传 dingdan_id,后端只读 OrderID → 400「参数不完整」
修复:同时接受 OrderID / dingdan_id;成功响应增加 new_dingdan_id(与 new_OrderID 一致)
2. 生成罚单 /houtai/htfksc、/houtai/kffkdssq
问题:前端传 beichufa_id、chufaliyou、fakuanjine、yingxiang_qiangdan,后端只认 PenalizedUserID、Reason、FineAmount 等
修复:在 backend/utils.py 增加 pick_penalty_create_params(),两套字段名都支持
3. 后台订单相关接口(orders/views.py)
剩余 10 处 只读 OrderID 的接口(换打手、退款、结单、罚单等)已统一兼容 dingdan_id
This commit is contained in:
XingQue
2026-06-19 23:23:02 +08:00
parent 1ce023552c
commit 157ac05632
3 changed files with 39 additions and 23 deletions

View File

@@ -48,6 +48,8 @@ from .utils import (
SHENFEN_PROFILE_MAP,
has_fadan_view_permission,
check_fadan_permission,
pick_order_id,
pick_penalty_create_params,
)
# models 集中导入
@@ -5831,13 +5833,10 @@ class FaKuanChuangJianView(APIView):
def post(self, request):
try:
username = request.data.get('username', '').strip()
PenalizedUserID = request.data.get('PenalizedUserID', '').strip()
PenalizedUserID, Reason, FineAmount, AffectsGrabbing = pick_penalty_create_params(request.data)
shenfen = request.data.get('shenfen')
Reason = request.data.get('Reason', '').strip()
FineAmount = request.data.get('FineAmount')
AffectsGrabbing = request.data.get('AffectsGrabbing', 1)
if not all([username, PenalizedUserID, shenfen, Reason, FineAmount]):
if not all([username, PenalizedUserID, shenfen, Reason, FineAmount is not None]):
return Response({'code': 400, 'msg': '参数不完整'})
try:
@@ -5930,12 +5929,10 @@ class FineApplyView(APIView):
def post(self, request):
try:
username = request.data.get('username', '').strip()
OrderID = request.data.get('OrderID', '').strip()
Reason = request.data.get('Reason', '').strip()
FineAmount = request.data.get('FineAmount')
AffectsGrabbing = request.data.get('AffectsGrabbing', 1)
OrderID = pick_order_id(request.data)
_, Reason, FineAmount, AffectsGrabbing = pick_penalty_create_params(request.data)
if not all([username, OrderID, Reason, FineAmount]):
if not all([username, OrderID, Reason, FineAmount is not None]):
return Response({'code': 400, 'msg': '参数不完整'})
try:
@@ -8044,7 +8041,7 @@ class ZxkfghdsView(APIView):
def post(self, request):
# ========== 1. 参数提取 ==========
username = request.data.get('username', '').strip()
OrderID = request.data.get('OrderID', '').strip()
OrderID = pick_order_id(request.data)
if not username or not OrderID:
logger.warning("更换打手参数不完整")
return Response({'code': 400, 'msg': '参数不完整'})
@@ -8234,6 +8231,7 @@ class ZxkfghdsView(APIView):
'msg': '更换成功',
'data': {
'new_OrderID': new_OrderID,
'new_dingdan_id': new_OrderID,
'new_lianjie': link_url,
}
})