Fix establishment timetable serailizer for permission
This commit is contained in:
parent
13eb8abac6
commit
6bb0eac409
|
|
@ -13,6 +13,7 @@ class BackPartnerSerializer(serializers.ModelSerializer):
|
||||||
'url',
|
'url',
|
||||||
'image',
|
'image',
|
||||||
'establishment',
|
'establishment',
|
||||||
|
'establishment_id',
|
||||||
'type',
|
'type',
|
||||||
'starting_date',
|
'starting_date',
|
||||||
'expiry_date',
|
'expiry_date',
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ class ScheduleRUDSerializer(serializers.ModelSerializer):
|
||||||
dinner_end = serializers.TimeField(required=False)
|
dinner_end = serializers.TimeField(required=False)
|
||||||
opening_at = serializers.TimeField(required=False)
|
opening_at = serializers.TimeField(required=False)
|
||||||
closed_at = serializers.TimeField(required=False)
|
closed_at = serializers.TimeField(required=False)
|
||||||
|
establishment_id = serializers.ReadOnlyField(source='establishment.id')
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
"""Meta class."""
|
"""Meta class."""
|
||||||
|
|
@ -34,8 +35,10 @@ class ScheduleRUDSerializer(serializers.ModelSerializer):
|
||||||
'dinner_end',
|
'dinner_end',
|
||||||
'opening_at',
|
'opening_at',
|
||||||
'closed_at',
|
'closed_at',
|
||||||
|
'establishment_id'
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
def validate(self, attrs):
|
def validate(self, attrs):
|
||||||
"""Override validate method"""
|
"""Override validate method"""
|
||||||
establishment_pk = self.context.get('request')\
|
establishment_pk = self.context.get('request')\
|
||||||
|
|
|
||||||
|
|
@ -280,10 +280,10 @@ class IsEstablishmentManager(IsStandardUser):
|
||||||
super().has_permission(request, view)
|
super().has_permission(request, view)
|
||||||
]
|
]
|
||||||
|
|
||||||
# and request.user.email_confirmed,
|
if hasattr(request.data, 'user'):
|
||||||
if hasattr(request.data, 'user') and hasattr(request.data, 'establishment_id'):
|
if hasattr(request.data, 'establishment_id'):
|
||||||
role = Role.objects.filter(role=Role.ESTABLISHMENT_MANAGER) \
|
role = Role.objects.filter(role=Role.ESTABLISHMENT_MANAGER) \
|
||||||
.first() # 'Comments moderator'
|
.first()
|
||||||
|
|
||||||
rules = [
|
rules = [
|
||||||
UserRole.objects.filter(user=request.user, role=role,
|
UserRole.objects.filter(user=request.user, role=role,
|
||||||
|
|
@ -294,9 +294,15 @@ class IsEstablishmentManager(IsStandardUser):
|
||||||
return any(rules)
|
return any(rules)
|
||||||
|
|
||||||
def has_object_permission(self, request, view, obj):
|
def has_object_permission(self, request, view, obj):
|
||||||
role = Role.objects.filter(role=Role.ESTABLISHMENT_MANAGER) \
|
|
||||||
.first() # 'Comments moderator'
|
|
||||||
|
|
||||||
|
rules = [
|
||||||
|
super().has_object_permission(request, view, obj)
|
||||||
|
]
|
||||||
|
|
||||||
|
role = Role.objects.filter(role=Role.ESTABLISHMENT_MANAGER) \
|
||||||
|
.first()
|
||||||
|
|
||||||
|
if hasattr(obj, 'establishment_id'):
|
||||||
rules = [
|
rules = [
|
||||||
UserRole.objects.filter(user=request.user, role=role,
|
UserRole.objects.filter(user=request.user, role=role,
|
||||||
establishment_id=obj.establishment_id
|
establishment_id=obj.establishment_id
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user