fix: 商家订单类型接口增加商家/客服身份校验
This commit is contained in:
@@ -1753,8 +1753,24 @@ class ShangpinLeixingView(APIView):
|
||||
"""
|
||||
permission_classes = [IsAuthenticated]
|
||||
|
||||
@staticmethod
|
||||
def _can_access(request):
|
||||
"""商家老板、有效子客服(含代理调用)方可获取"""
|
||||
if getattr(request, '_staff_member', None) is not None:
|
||||
return True
|
||||
from merchant_ops.services.authz import (
|
||||
get_active_staff_member, is_merchant_owner, member_has_perm,
|
||||
)
|
||||
if is_merchant_owner(request.user):
|
||||
return True
|
||||
member = get_active_staff_member(request.user)
|
||||
return bool(member and member_has_perm(member, 'order_dispatch'))
|
||||
|
||||
def post(self, request):
|
||||
|
||||
|
||||
if not self._can_access(request):
|
||||
return Response({'code': 403, 'msg': '非商家或有效客服,无权获取订单类型', 'data': []})
|
||||
|
||||
try:
|
||||
# 1. 查询审核通过且抢单要求类型为1的商品类型,按排序权重升序
|
||||
shangpin_queryset = ShangpinLeixing.query.filter(
|
||||
|
||||
Reference in New Issue
Block a user