修正过早的键更新
This commit is contained in:
@@ -5856,24 +5856,24 @@ class FaKuanLieBiaoView(APIView):
|
||||
for r in records:
|
||||
results.append({
|
||||
'id': r.id,
|
||||
'PenalizedUserID': r.PenalizedUserID,
|
||||
'Identity': r.Identity,
|
||||
'Identity_text': dict(Penalty._meta.get_field('Identity').choices).get(r.Identity, ''),
|
||||
'ApplicantID': r.ApplicantID or '',
|
||||
'ApplicantIdentity': r.ApplicantIdentity,
|
||||
'Reason': r.Reason or '',
|
||||
'FineAmount': str(r.FineAmount),
|
||||
'RelatedOrderID': r.RelatedOrderID or '',
|
||||
'Status': r.Status,
|
||||
'AffectsGrabbing': r.AffectsGrabbing,
|
||||
'AppealReason': r.AppealReason or '',
|
||||
'RejectReason': r.RejectReason or '',
|
||||
'ProcessorID': r.ProcessorID or '',
|
||||
'ProcessorIdentity': r.ProcessorIdentity,
|
||||
'beichufa_id': r.PenalizedUserID,
|
||||
'shenfen': r.Identity,
|
||||
'shenfen_text': dict(Penalty._meta.get_field('Identity').choices).get(r.Identity, ''),
|
||||
'shenqing_chufa': r.ApplicantID or '',
|
||||
'shenqingren_shenfen': r.ApplicantIdentity,
|
||||
'chufaliyou': r.Reason or '',
|
||||
'fakuanjine': str(r.FineAmount),
|
||||
'guanliandingdan_id': r.RelatedOrderID or '',
|
||||
'zhuangtai': r.Status,
|
||||
'yingxiang_qiangdan': r.AffectsGrabbing,
|
||||
'shensuliyou': r.AppealReason or '',
|
||||
'bohuiliyou': r.RejectReason or '',
|
||||
'chulizhe': r.ProcessorID or '',
|
||||
'chulizhe_shenfen': r.ProcessorIdentity,
|
||||
'zhengju_tupian': zhengju_map.get(r.id, []),
|
||||
'shensu_tupian': shensu_map.get(r.id, []),
|
||||
'CreateTime': r.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if r.CreateTime else '',
|
||||
'UpdateTime': r.UpdateTime.strftime('%Y-%m-%d %H:%M:%S') if r.UpdateTime else '',
|
||||
'creat_time': r.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if r.CreateTime else '',
|
||||
'update_time': r.UpdateTime.strftime('%Y-%m-%d %H:%M:%S') if r.UpdateTime else '',
|
||||
})
|
||||
|
||||
return Response({
|
||||
@@ -7161,7 +7161,7 @@ class CwhqjtddsjView(APIView):
|
||||
'success_count': item['success_count'],
|
||||
'success_amount': float(item['success_amount'] or 0),
|
||||
'refund_count': item['refund_count'],
|
||||
'PlayerCommission': float(item['PlayerCommission_sum'] or 0),
|
||||
'dashou_fencheng': float(item['PlayerCommission_sum'] or 0),
|
||||
'dianpu_fenhong': float(item['dianpu_fenhong_sum'] or 0),
|
||||
'profit': round(total_profit, 2)
|
||||
})
|
||||
|
||||
165
orders/views.py
165
orders/views.py
@@ -443,7 +443,7 @@ class PaymentVerifyView(APIView):
|
||||
return Response({
|
||||
'code': 0,
|
||||
'msg': '订单状态正常',
|
||||
'data': {'dingdanid': dingdanid, 'Status': dingdan.Status}
|
||||
'data': {'dingdanid': dingdanid, 'zhuangtai': dingdan.Status}
|
||||
})
|
||||
|
||||
# ---------- 5. 如果状态为9,则主动查询微信支付状态 ----------
|
||||
@@ -466,11 +466,11 @@ class PaymentVerifyView(APIView):
|
||||
return Response({
|
||||
'code': 0,
|
||||
'msg': '支付成功',
|
||||
'data': {'dingdanid': dingdanid, 'Status': dingdan.Status}
|
||||
'data': {'dingdanid': dingdanid, 'zhuangtai': dingdan.Status}
|
||||
})
|
||||
elif trade_state in ['NOTPAY', 'USERPAYING']:
|
||||
# 用户尚未支付或支付中
|
||||
return Response({'code': 1, 'msg': '支付中', 'data': {'Status': 9}})
|
||||
return Response({'code': 1, 'msg': '支付中', 'data': {'zhuangtai': 9}})
|
||||
else:
|
||||
# 其他状态:CLOSED, REVOKED, PAYERROR 等,视为支付失败
|
||||
return Response({'code': 2, 'msg': '支付失败'})
|
||||
@@ -491,7 +491,7 @@ class PaymentVerifyView(APIView):
|
||||
8: '结算中',
|
||||
0: '订单已作废',
|
||||
}.get(dingdan.Status, '订单状态异常')
|
||||
return Response({'code': 3, 'msg': status_msg, 'data': {'Status': dingdan.Status}})
|
||||
return Response({'code': 3, 'msg': status_msg, 'data': {'zhuangtai': dingdan.Status}})
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"订单复查接口异常: {e}", exc_info=True)
|
||||
@@ -1091,11 +1091,11 @@ class DingdanHuoquView(APIView):
|
||||
for order in current_page_orders:
|
||||
order_data = {
|
||||
'dingdanId': order.OrderID,
|
||||
'Status': order.Status,
|
||||
'zhuangtai': order.Status,
|
||||
'jine': float(order.Amount) if order.Amount else 0.0,
|
||||
'ImageURL': order.ImageURL or '',
|
||||
'Description': order.Description or '',
|
||||
'Remark': order.Remark or '',
|
||||
'tupian_url': order.ImageURL or '',
|
||||
'jieshao': order.Description or '',
|
||||
'beizhu': order.Remark or '',
|
||||
'nicheng': order.Nickname or '',
|
||||
'chuangjianshijian': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S')
|
||||
}
|
||||
@@ -1212,9 +1212,9 @@ class DingdanXiangqingView(APIView):
|
||||
|
||||
# 5. 构建返回数据(字段名与前端对应)
|
||||
response_data = {
|
||||
'Status': zhuangtai, # 订单状态
|
||||
'zhuangtai': zhuangtai, # 订单状态
|
||||
'zhiding': zhiding_id, # 指定打手ID
|
||||
'PlayerID': jiedan_dashou_id, # 服务打手ID
|
||||
'jiedan_dashou_id': jiedan_dashou_id, # 服务打手ID
|
||||
'dashouliuyan': dashou_liuyan, # 打手留言
|
||||
'dashoujiaofu': dashoujiaofu_list # 打手交付图片列表
|
||||
}
|
||||
@@ -1545,13 +1545,13 @@ class DingdanXiangqingView2(APIView):
|
||||
fanche_cishu = biaoxian.fanche_cishu
|
||||
|
||||
data = {
|
||||
'Status': zhuangtai,
|
||||
'PlayerID': jiedan_dashou_id,
|
||||
'zhuangtai': zhuangtai,
|
||||
'jiedan_dashou_id': jiedan_dashou_id,
|
||||
'dashou_nicheng': dashou_nicheng,
|
||||
'dashou_touxiang': dashou_touxiang,
|
||||
'dashouliuyan': dashou_liuyan,
|
||||
'dashoujiaofu': dashoujiaofu_list,
|
||||
'UpdateTime': update_time,
|
||||
'update_time': update_time,
|
||||
'jiedan_time': jiedan_time,
|
||||
'tijiao_time': tijiao_time,
|
||||
'laoban_pingjia': laoban_pingjia,
|
||||
@@ -1787,9 +1787,9 @@ class ShangpinLeixingView(APIView):
|
||||
for sp in shangpin_queryset:
|
||||
item = {
|
||||
'id': sp.id,
|
||||
'GrabRequirement': sp.yaoqiuleixing,
|
||||
'MembershipID': sp.huiyuan_id,
|
||||
'Description': sp.jieshao,
|
||||
'yaoqiuleixing': sp.yaoqiuleixing,
|
||||
'huiyuan_id': sp.huiyuan_id,
|
||||
'jieshao': sp.jieshao,
|
||||
# 当前类型所属板块的称号列表(无板块则为空数组)
|
||||
'chenghaoList': bankuai_chenghao_map.get(sp.bankuai_id, [])
|
||||
}
|
||||
@@ -2119,16 +2119,16 @@ class ShangjiaDingdanHuoquView(APIView):
|
||||
for shangjia_order in current_page_orders:
|
||||
order = shangjia_order.Order
|
||||
order_data = {
|
||||
'OrderID': order.OrderID,
|
||||
'Status': order.Status,
|
||||
'dingdan_id': order.OrderID,
|
||||
'zhuangtai': order.Status,
|
||||
'jine': float(order.Amount) if order.Amount else 0.0,
|
||||
'Description': order.Description or '',
|
||||
'Remark': order.Remark or '',
|
||||
'jieshao': order.Description or '',
|
||||
'beizhu': order.Remark or '',
|
||||
'nicheng': order.Nickname or '',
|
||||
'ProductTypeID': order.ProductTypeID, # 🆕 返回商品类型ID
|
||||
'ImageURL': order.ImageURL or '', # 🆕 返回商品图片
|
||||
'jiedan_dashou_id': order.PlayerID or '', # 🆕 返回打手ID
|
||||
'CreateTime': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else ''
|
||||
'shangpin_leixing_id': order.ProductTypeID, # 返回商品类型ID
|
||||
'tupian_url': order.ImageURL or '', # 返回商品图片
|
||||
'jiedan_dashou_id': order.PlayerID or '', # 返回打手ID
|
||||
'creat_time': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else ''
|
||||
}
|
||||
order_list.append(order_data)
|
||||
|
||||
@@ -2242,12 +2242,12 @@ class ShangjiaDingdanXiangqingView(APIView):
|
||||
'chufaliyou': fadan_obj.Reason or '',
|
||||
'fakuanjine': float(fadan_obj.FineAmount) if fadan_obj.FineAmount else 0.0,
|
||||
'yingxiang_qiangdan': fadan_obj.AffectsGrabbing,
|
||||
'Status': fadan_obj.Status,
|
||||
'zhuangtai': fadan_obj.Status,
|
||||
'shensuliyou': fadan_obj.AppealReason or '',
|
||||
'tongyi_chufaliyou': fadan_obj.ApproveReason or '',
|
||||
'bohuiliyou': fadan_obj.RejectReason or '',
|
||||
'CreateTime': fadan_obj.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if fadan_obj.CreateTime else '',
|
||||
'UpdateTime': fadan_obj.UpdateTime.strftime('%Y-%m-%d %H:%M:%S') if fadan_obj.UpdateTime else '',
|
||||
'creat_time': fadan_obj.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if fadan_obj.CreateTime else '',
|
||||
'update_time': fadan_obj.UpdateTime.strftime('%Y-%m-%d %H:%M:%S') if fadan_obj.UpdateTime else '',
|
||||
}
|
||||
|
||||
# 7. 商家自己的分红利率(用于罚款分红计算)
|
||||
@@ -2279,13 +2279,13 @@ class ShangjiaDingdanXiangqingView(APIView):
|
||||
# 9. 构建返回数据
|
||||
response_data = {
|
||||
# 基础订单字段
|
||||
'OrderID': order.OrderID,
|
||||
'Status': order.Status or 0,
|
||||
'dingdan_id': order.OrderID,
|
||||
'zhuangtai': order.Status or 0,
|
||||
'jine': float(order.Amount) if order.Amount else 0.0,
|
||||
'Description': order.Description or '',
|
||||
'Remark': order.Remark or '',
|
||||
'jieshao': order.Description or '',
|
||||
'beizhu': order.Remark or '',
|
||||
'nicheng': order.Nickname or '',
|
||||
'CreateTime': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else '',
|
||||
'creat_time': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else '',
|
||||
|
||||
# 打手信息
|
||||
'dashou_yonghuid': dashou_yonghuid,
|
||||
@@ -2294,7 +2294,7 @@ class ShangjiaDingdanXiangqingView(APIView):
|
||||
|
||||
# 服务详情
|
||||
'fuwudashou_id': dashou_yonghuid, # 保留旧字段兼容
|
||||
'PlayerRemark': order.PlayerRemark or '',
|
||||
'dashou_liuyan': order.PlayerRemark or '',
|
||||
'dashou_jiaofu': dashou_jiaofu,
|
||||
|
||||
# 商家扩展字段(旧)
|
||||
@@ -2498,10 +2498,10 @@ class ShangjiaJiesuanView(APIView):
|
||||
'code': 0,
|
||||
'msg': '结单成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'new_zhuangtai': 3,
|
||||
'jine': float(jine),
|
||||
'PlayerCommission': float(dashou_fencheng),
|
||||
'dashou_fencheng': float(dashou_fencheng),
|
||||
'jiedan_dashou_id': jiedan_dashou_id,
|
||||
'pingfen': pingfen,
|
||||
'liuyan': liuyan
|
||||
@@ -2644,7 +2644,7 @@ class ShangjiaChexiaoView(APIView):
|
||||
'code': 0,
|
||||
'msg': '撤销成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'new_zhuangtai': 5,
|
||||
'tuikuan_liyou': chexiao_liyou,
|
||||
'jine': float(dingdan.Amount) if dingdan.Amount else 0.0
|
||||
@@ -2783,7 +2783,7 @@ class ShangjiaTuikuanShenqingView(APIView):
|
||||
'code': 0,
|
||||
'msg': '退款申请提交成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'new_zhuangtai': 4,
|
||||
'tuikuan_liyou': tuikuan_liyou,
|
||||
'jine': float(dingdan.Amount) if dingdan.Amount else 0.0,
|
||||
@@ -2943,12 +2943,12 @@ class ShangjiaChufaShenqingView(APIView):
|
||||
'code': 0,
|
||||
'msg': '处罚申请提交成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'dashou_id': dashou_id,
|
||||
'chufa_liyou': chufa_liyou,
|
||||
'sqzhuangtai': 0,
|
||||
'jifen': 5,
|
||||
'tupian_count': len(chufa_tupian_urls) if chufa_tupian_urls else 0 # 🔴 返回图片数量
|
||||
'tupian_count': len(chufa_tupian_urls) if chufa_tupian_urls else 0 # 返回图片数量
|
||||
}
|
||||
}, status=status.HTTP_200_OK)
|
||||
|
||||
@@ -3140,22 +3140,21 @@ class DashouDingdanHuoquView(APIView):
|
||||
zid = order.get('AssignedID')
|
||||
info = zhiding_info.get(zid, {})
|
||||
formatted_list.append({
|
||||
'OrderID': order['OrderID'],
|
||||
'Status': order['Status'],
|
||||
'dingdan_id': order['OrderID'],
|
||||
'zhuangtai': order['Status'],
|
||||
'pingtai': order['Platform'],
|
||||
'Platform': order['Platform'],
|
||||
'PlayerCommission': float(order['PlayerCommission']) if order['PlayerCommission'] else 0.0,
|
||||
'AssignedID': order['AssignedID'] or '',
|
||||
'ProductTypeID': order['ProductTypeID'] or 0,
|
||||
'ImageURL': order['ImageURL'] or '',
|
||||
'GrabRequirement': order['GrabRequirement'] or 0,
|
||||
'MembershipID': order['MembershipID'] or '',
|
||||
'dashou_fencheng': float(order['PlayerCommission']) if order['PlayerCommission'] else 0.0,
|
||||
'zhiding_id': order['AssignedID'] or '',
|
||||
'shangpin_leixing_id': order['ProductTypeID'] or 0,
|
||||
'tupian_url': order['ImageURL'] or '',
|
||||
'yaoqiuleixing': order['GrabRequirement'] or 0,
|
||||
'huiyuan_id': order['MembershipID'] or '',
|
||||
'yajin': float(order['CommissionReq']) if order['CommissionReq'] else 0.0,
|
||||
'CommissionReq': float(order['CommissionReq']) if order['CommissionReq'] else 0.0,
|
||||
'Description': order['Description'] or '',
|
||||
'Remark': order['Remark'] or '',
|
||||
'yongjin': float(order['CommissionReq']) if order['CommissionReq'] else 0.0,
|
||||
'jieshao': order['Description'] or '',
|
||||
'beizhu': order['Remark'] or '',
|
||||
'creat_time': order['CreateTime'].strftime('%Y-%m-%d %H:%M:%S') if order['CreateTime'] else '',
|
||||
'MerchantNickname': order['MerchantNickname'] or '',
|
||||
'shangjia_nicheng': order['MerchantNickname'] or '',
|
||||
'zhiding_uid': order['AssignedID'] or '',
|
||||
'zhiding_avatar': info.get('avatar', ''),
|
||||
'zhiding_nicheng': info.get('nicheng', ''),
|
||||
@@ -3607,7 +3606,7 @@ class QiangdanView(APIView):
|
||||
'code': 200,
|
||||
'msg': '抢单成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'chat_established': chat_success
|
||||
}
|
||||
})
|
||||
@@ -3771,13 +3770,13 @@ class DashouDingdanHuoquView1(APIView):
|
||||
order_list = []
|
||||
for order in current_page_orders:
|
||||
order_data = {
|
||||
'OrderID': order.OrderID,
|
||||
'Status': order.Status,
|
||||
'dingdan_id': order.OrderID,
|
||||
'zhuangtai': order.Status,
|
||||
'jine': float(order.PlayerCommission) if order.PlayerCommission else 0.0,
|
||||
'Description': order.Description or '',
|
||||
'ImageURL': order.ImageURL or '',
|
||||
'jieshao': order.Description or '',
|
||||
'tupian_url': order.ImageURL or '',
|
||||
'nicheng': order.Nickname or '',
|
||||
'CreateTime': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else ''
|
||||
'creat_time': order.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if order.CreateTime else ''
|
||||
}
|
||||
order_list.append(order_data)
|
||||
|
||||
@@ -4104,10 +4103,10 @@ class ShangjiaCOSZhengshuView(APIView):
|
||||
'region': settings.COS_REGION,
|
||||
# 🔴【修改】商家专用上传目录
|
||||
'upload_dir': 'a_long/chfajltp/sjzjtp/',
|
||||
# 🔴【新增】返回商家ID和订单ID,便于前端生成文件名
|
||||
'OrderID': dingdan_id,
|
||||
'MerchantID': shangjia_id,
|
||||
# 🔴【新增】可选:返回商家昵称,便于前端显示
|
||||
# 返回商家ID和订单ID,便于前端生成文件名
|
||||
'dingdan_id': dingdan_id,
|
||||
'shangjia_id': shangjia_id,
|
||||
# 返回商家昵称,便于前端显示
|
||||
'shangjia_nicheng': shangjia_profile.nicheng if hasattr(shangjia_profile, 'nicheng') else ''
|
||||
}
|
||||
|
||||
@@ -4238,7 +4237,7 @@ class DashouTijiaoView(APIView):
|
||||
'code': 0,
|
||||
'msg': '订单提交成功',
|
||||
'data': {
|
||||
'OrderID': dingdan_id,
|
||||
'dingdan_id': dingdan_id,
|
||||
'new_zhuangtai': 8, # 新的订单状态
|
||||
'dashou_zhuangtai': 1 # 打手新的状态
|
||||
}
|
||||
@@ -4302,16 +4301,16 @@ class DashouDingdanXiangqingView(APIView):
|
||||
|
||||
# 5. 构建基础订单数据
|
||||
dingdan_data = {
|
||||
'OrderID': dingdan.OrderID,
|
||||
'Status': dingdan.Status,
|
||||
'dingdan_id': dingdan.OrderID,
|
||||
'zhuangtai': dingdan.Status,
|
||||
'jine': float(dingdan.PlayerCommission) if dingdan.PlayerCommission else 0.0,
|
||||
'Description': dingdan.Description or '',
|
||||
'ImageURL': dingdan.ImageURL or '',
|
||||
'jieshao': dingdan.Description or '',
|
||||
'tupian_url': dingdan.ImageURL or '',
|
||||
'nicheng': dingdan.Nickname or '',
|
||||
'Remark': dingdan.Remark or '',
|
||||
'CreateTime': dingdan.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if dingdan.CreateTime else '',
|
||||
'beizhu': dingdan.Remark or '',
|
||||
'creat_time': dingdan.CreateTime.strftime('%Y-%m-%d %H:%M:%S') if dingdan.CreateTime else '',
|
||||
'tuikuan_liyou':dingdan.RefundReason or '',
|
||||
'PlayerRemark': dingdan.PlayerRemark or '',
|
||||
'dashou_liuyan': dingdan.PlayerRemark or '',
|
||||
'fuwudashou_id': dingdan.PlayerID or '',
|
||||
'fadanpingtai': dingdan.Platform or ''
|
||||
}
|
||||
@@ -4334,7 +4333,7 @@ class DashouDingdanXiangqingView(APIView):
|
||||
try:
|
||||
shangjia_kuozhan = dingdan.shangjia_kuozhan
|
||||
shangjia_info = {
|
||||
'MerchantID': shangjia_kuozhan.MerchantID or '',
|
||||
'shangjia_id': shangjia_kuozhan.MerchantID or '',
|
||||
'shangjia_nicheng': shangjia_kuozhan.MerchantNickname or '',
|
||||
'shangjia_liuyan': shangjia_kuozhan.MerchantReview or '',
|
||||
#'tuikuan_liyou': '',
|
||||
@@ -4346,7 +4345,7 @@ class DashouDingdanXiangqingView(APIView):
|
||||
except MerchantOrderExt.DoesNotExist:
|
||||
# 没有商家扩展信息,返回空值
|
||||
shangjia_info = {
|
||||
'MerchantID': '',
|
||||
'shangjia_id': '',
|
||||
'shangjia_nicheng': '',
|
||||
'shangjia_liuyan': '',
|
||||
'tuikuan_liyou': '',
|
||||
@@ -4465,20 +4464,20 @@ class AdGetDingdanXiangQing(APIView):
|
||||
# 7. 构建返回数据 - 主表字段
|
||||
response_data = {
|
||||
# 基础信息字段
|
||||
'OrderID': dingdan_obj.OrderID or '',
|
||||
'Description': dingdan_obj.Description or '',
|
||||
'Status': dingdan_obj.Status or 0,
|
||||
'dingdan_id': dingdan_obj.OrderID or '',
|
||||
'jieshao': dingdan_obj.Description or '',
|
||||
'zhuangtai': dingdan_obj.Status or 0,
|
||||
'leixing': dingdan_obj.ProductTypeID or 0, # 前端需要 leixing,对应 leixing_id
|
||||
'fadanpingtai': dingdan_obj.Platform or 0, # 前端需要 fadanpingtai,对应 fadan_pingtai
|
||||
'jiage': float(dingdan_obj.Amount) if dingdan_obj.Amount else 0.00, # 前端需要 jiage,对应 jine
|
||||
'tupian_url': dingdan_obj.ImageURL or '', # 前端需要 tupian_url,对应 tupian
|
||||
'Remark': dingdan_obj.Remark or '',
|
||||
'beizhu': dingdan_obj.Remark or '',
|
||||
|
||||
# 服务信息字段
|
||||
'jiedan_dashou_id': dingdan_obj.PlayerID or '',
|
||||
'PlayerCommission': float(dingdan_obj.PlayerCommission) if dingdan_obj.PlayerCommission else 0.00,
|
||||
'AssignedID': dingdan_obj.AssignedID or '',
|
||||
'PlayerRemark': dingdan_obj.PlayerRemark or '',
|
||||
'dashou_fencheng': float(dingdan_obj.PlayerCommission) if dingdan_obj.PlayerCommission else 0.00,
|
||||
'zhiding_id': dingdan_obj.AssignedID or '',
|
||||
'dashou_liuyan': dingdan_obj.PlayerRemark or '',
|
||||
|
||||
# 时间字段
|
||||
'chuangjianshijian': dingdan_obj.CreateTime.strftime(
|
||||
@@ -4516,8 +4515,8 @@ class AdGetDingdanXiangQing(APIView):
|
||||
shangjia_kuozhan = dingdan_obj.shangjia_kuozhan
|
||||
|
||||
response_data.update({
|
||||
'MerchantID': shangjia_kuozhan.MerchantID or '',
|
||||
'MerchantNickname': shangjia_kuozhan.MerchantNickname or '',
|
||||
'shangjia_id': shangjia_kuozhan.MerchantID or '',
|
||||
'shangjia_nicheng': shangjia_kuozhan.MerchantNickname or '',
|
||||
'shangjia_pingjia': shangjia_kuozhan.MerchantReview or '',
|
||||
'cfliyou': shangjia_kuozhan.PenaltyReason or '', # 商家处罚理由
|
||||
'bhliyou': shangjia_kuozhan.RejectReason or '', # 驳回理由
|
||||
@@ -4525,8 +4524,8 @@ class AdGetDingdanXiangQing(APIView):
|
||||
except MerchantOrderExt.DoesNotExist:
|
||||
# 扩展表不存在,返回空值
|
||||
response_data.update({
|
||||
'MerchantID': '',
|
||||
'MerchantNickname': '',
|
||||
'shangjia_id': '',
|
||||
'shangjia_nicheng': '',
|
||||
'shangjia_pingjia': '',
|
||||
'cfliyou': '',
|
||||
'bhliyou': '',
|
||||
|
||||
@@ -34,6 +34,12 @@ ROLE_CONFIG = {
|
||||
'sort_field': 'CompletedAmount',
|
||||
'fields': ('AcceptedOrderTotal', 'CompletedOrderTotal', 'AcceptedAmount', 'CompletedAmount'),
|
||||
'int_fields': frozenset({'AcceptedOrderTotal', 'CompletedOrderTotal'}),
|
||||
'response_field_map': {
|
||||
'AcceptedOrderTotal': 'jiedan_zongliang',
|
||||
'CompletedOrderTotal': 'chengjiao_zongliang',
|
||||
'AcceptedAmount': 'jiedan_zonge',
|
||||
'CompletedAmount': 'chengjiao_zonge',
|
||||
},
|
||||
},
|
||||
'guanshi': {
|
||||
'model': ManagerDailyStats,
|
||||
@@ -41,6 +47,11 @@ ROLE_CONFIG = {
|
||||
'sort_field': 'TotalIncome',
|
||||
'fields': ('InvitedPlayerCount', 'RechargedPlayerCount', 'TotalIncome'),
|
||||
'int_fields': frozenset({'InvitedPlayerCount', 'RechargedPlayerCount'}),
|
||||
'response_field_map': {
|
||||
'InvitedPlayerCount': 'yaoqing_dashou_shu',
|
||||
'RechargedPlayerCount': 'chongzhi_dashou_shu',
|
||||
'TotalIncome': 'shouru_zonge',
|
||||
},
|
||||
},
|
||||
'zuzhang': {
|
||||
'model': LeaderDailyStats,
|
||||
@@ -48,6 +59,11 @@ ROLE_CONFIG = {
|
||||
'sort_field': 'TotalIncome',
|
||||
'fields': ('InvitedManagerCount', 'CommissionAmount', 'TotalIncome'),
|
||||
'int_fields': frozenset({'InvitedManagerCount'}),
|
||||
'response_field_map': {
|
||||
'InvitedManagerCount': 'yaoqing_guanshi_shu',
|
||||
'CommissionAmount': 'fenyong_jine',
|
||||
'TotalIncome': 'shouru_zonge',
|
||||
},
|
||||
},
|
||||
'shangjia': {
|
||||
'model': MerchantDailyStats,
|
||||
@@ -55,6 +71,12 @@ ROLE_CONFIG = {
|
||||
'sort_field': 'SettledAmount',
|
||||
'fields': ('AssignedOrderCount', 'AssignedAmount', 'SettledOrderCount', 'SettledAmount'),
|
||||
'int_fields': frozenset({'AssignedOrderCount', 'SettledOrderCount'}),
|
||||
'response_field_map': {
|
||||
'AssignedOrderCount': 'paifa_dingdan_shu',
|
||||
'AssignedAmount': 'paifa_jine',
|
||||
'SettledOrderCount': 'jiesuan_dingdan_shu',
|
||||
'SettledAmount': 'jiesuan_jine',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -186,6 +208,7 @@ class PhbHqsjView(APIView):
|
||||
id_field = cfg['id_field']
|
||||
|
||||
result_list = []
|
||||
response_field_map = cfg.get('response_field_map', {})
|
||||
for idx, row in enumerate(rows):
|
||||
yonghuid = row[id_field]
|
||||
item = {
|
||||
@@ -195,7 +218,8 @@ class PhbHqsjView(APIView):
|
||||
'touxiang': avatar_map.get(yonghuid, '') or '',
|
||||
}
|
||||
for field in cfg['fields']:
|
||||
item[field] = _fmt_value(row.get(field), field in int_fields)
|
||||
response_key = response_field_map.get(field, field)
|
||||
item[response_key] = _fmt_value(row.get(field), field in int_fields)
|
||||
result_list.append(item)
|
||||
|
||||
return Response({
|
||||
|
||||
Reference in New Issue
Block a user