fix: 严格校验体验会员不可提现,抢单按会员类型匹配
展示层 clumber 与提现/抢单权限分离:佣金提现须正式会员并双重拦截体验期;抢单走 resolve_order_membership_ids + 总会员包含判断。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -540,7 +540,10 @@ class QiangdanView(APIView):
|
||||
return {'success': True, 'message': '验证通过'}
|
||||
|
||||
def _validate_huiyuan_requirement(self, order, dashou_yonghuid):
|
||||
from jituan.services.huiyuan_bundle import user_has_huiyuan_access
|
||||
from jituan.services.huiyuan_bundle import (
|
||||
user_has_huiyuan_access_any,
|
||||
resolve_order_membership_ids,
|
||||
)
|
||||
from jituan.services.club_context import resolve_effective_club_id
|
||||
|
||||
club_id = None
|
||||
@@ -548,9 +551,15 @@ class QiangdanView(APIView):
|
||||
club_id = resolve_effective_club_id(self.request, self.request.user)
|
||||
except Exception:
|
||||
pass
|
||||
if user_has_huiyuan_access(dashou_yonghuid, order.MembershipID, club_id=club_id):
|
||||
order_dict = {
|
||||
'MembershipID': order.MembershipID,
|
||||
'GrabRequirement': order.GrabRequirement,
|
||||
'ProductTypeID': order.ProductTypeID,
|
||||
}
|
||||
required_ids = resolve_order_membership_ids(order_dict)
|
||||
if user_has_huiyuan_access_any(dashou_yonghuid, required_ids, club_id=club_id):
|
||||
return {'success': True, 'message': '会员验证通过'}
|
||||
return {'success': False, 'message': '未开通对应会员,无法抢此订单'}
|
||||
return {'success': False, 'message': '未开通对应会员或会员已过期,无法抢此订单'}
|
||||
|
||||
def _validate_yajin_requirement(self, order, dashou_profile):
|
||||
yajin_required = order.CommissionReq or 0
|
||||
|
||||
Reference in New Issue
Block a user