fix bug of dont show my user
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
from rest_framework import viewsets
|
from rest_framework import viewsets
|
||||||
|
|
||||||
from apps.authentication.mixins.region_filter import RegionFilterMixin
|
from apps.authentication.mixins.region_filter import RegionFilterMixin, get_organization_by_user
|
||||||
from apps.core.models import MobileTest, SystemConfig
|
from apps.core.models import MobileTest, SystemConfig
|
||||||
from apps.core.serializers import MobileTestSerializer, SystemConfigSerializer
|
from apps.core.serializers import MobileTestSerializer, SystemConfigSerializer
|
||||||
|
|
||||||
@@ -15,20 +15,22 @@ class BaseViewSet(RegionFilterMixin, viewsets.ModelViewSet):
|
|||||||
queryset = super().get_queryset()
|
queryset = super().get_queryset()
|
||||||
request = self.request
|
request = self.request
|
||||||
user = request.user
|
user = request.user
|
||||||
user_relation = user.user_relation.all()
|
org = get_organization_by_user(user)
|
||||||
|
user_relation = user.user_relation.filter(organization=org)
|
||||||
|
|
||||||
if self.request.method.lower() == 'get' and not self.kwargs.get('pk'):
|
if self.request.method.lower() == 'get' and not self.kwargs.get('pk'):
|
||||||
queryset = self.filter_by_region(queryset, org=True)
|
queryset = self.filter_by_region(queryset, org=True)
|
||||||
print(queryset)
|
print(queryset)
|
||||||
|
|
||||||
if not user_relation.first().role.type.key == 'ADM':
|
if user_relation.exists():
|
||||||
model_name = queryset.model.__name__.lower()
|
if not user_relation.first().role.type.key == 'ADM':
|
||||||
|
model_name = queryset.model.__name__.lower()
|
||||||
|
|
||||||
if model_name == 'user':
|
if model_name == 'userrelations': # noqa
|
||||||
queryset = queryset.exclude(id=user.id)
|
queryset = queryset.exclude(id=user_relation.first().id)
|
||||||
|
|
||||||
elif model_name == 'organization':
|
elif model_name == 'organization':
|
||||||
queryset = queryset.exclude(id=user_relation.first().organization.id)
|
queryset = queryset.exclude(id=user_relation.first().organization.id)
|
||||||
|
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user