feat: 抢单池/组队角标计数多接口附加字段(兼容旧客户端)
This commit is contained in:
@@ -382,6 +382,13 @@ class DashouDingdanHuoquView(APIView):
|
||||
|
||||
has_more = (page * page_size) < total
|
||||
|
||||
badge = {}
|
||||
try:
|
||||
from orders.services.dashou_badges import dashou_badge_fields
|
||||
badge = dashou_badge_fields(club_id)
|
||||
except Exception as e:
|
||||
logger.warning('ddhq 角标附加失败: %s', e)
|
||||
|
||||
return Response({
|
||||
'code': 200,
|
||||
'msg': '获取成功',
|
||||
@@ -393,6 +400,7 @@ class DashouDingdanHuoquView(APIView):
|
||||
'page_size': page_size,
|
||||
'total_pages': (total + page_size - 1) // page_size,
|
||||
'clumber': user_clumber,
|
||||
**badge,
|
||||
}
|
||||
})
|
||||
|
||||
@@ -762,13 +770,24 @@ class DashouDingdanHuoquView1(APIView):
|
||||
if total_count == 0:
|
||||
has_more = False
|
||||
|
||||
badge = {}
|
||||
try:
|
||||
from jituan.services.club_context import resolve_effective_club_id
|
||||
from orders.services.dashou_badges import dashou_badge_fields
|
||||
badge = dashou_badge_fields(
|
||||
resolve_effective_club_id(request, getattr(request, 'user', None))
|
||||
)
|
||||
except Exception as e:
|
||||
logger.warning('dshqdingdan 角标附加失败: %s', e)
|
||||
|
||||
return Response({
|
||||
'code': 0,
|
||||
'msg': '成功',
|
||||
'data': {
|
||||
'list': order_list,
|
||||
'has_more': has_more,
|
||||
'total': total_count
|
||||
'total': total_count,
|
||||
**badge,
|
||||
}
|
||||
}, status=status.HTTP_200_OK)
|
||||
|
||||
@@ -1568,15 +1587,26 @@ class DashouHuoquLeixingView(APIView):
|
||||
club_id = resolve_effective_club_id(request, request.user)
|
||||
leixing_list = build_club_leixing_list_for_api(club_id)
|
||||
|
||||
badge = {}
|
||||
try:
|
||||
from orders.services.dashou_badges import dashou_badge_fields, attach_pending_to_leixing_list
|
||||
badge = dashou_badge_fields(club_id)
|
||||
leixing_list = attach_pending_to_leixing_list(
|
||||
leixing_list, badge.get('type_pending_counts'),
|
||||
)
|
||||
except Exception as e:
|
||||
logger.warning('dsqdhqddlx 角标附加失败: %s', e)
|
||||
|
||||
logger.info(f"返回商品类型数据:{len(leixing_list)}条,俱乐部:{club_id} 用户: {request.user.UserUID}")
|
||||
|
||||
# 🔴 返回成功响应
|
||||
# 注意:保持与前端原数据格式完全一致
|
||||
# 注意:保持与前端原数据格式完全一致;角标为新增字段,不影响旧客户端
|
||||
return Response({
|
||||
"code": 200,
|
||||
"msg": "成功",
|
||||
"data": {
|
||||
"list": leixing_list # 🔴 保持原字段名 "list"
|
||||
"list": leixing_list, # 🔴 保持原字段名 "list"
|
||||
**badge,
|
||||
}
|
||||
}, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user