From 8e2c3d531d801ca8ec9ff2adbdc325acd410e85b Mon Sep 17 00:00:00 2001 From: xianfx Date: Wed, 28 Sep 2022 18:28:14 +0800 Subject: [PATCH] =?UTF-8?q?#=20user=20=E6=B7=BB=E5=8A=A0=E7=88=B6=E7=BB=84?= =?UTF-8?q?=E7=BB=87=E5=85=B3=E7=B3=BB=EF=BC=9B=E7=88=B6=E7=BB=84=E7=BB=87?= =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E6=9F=A5=E7=9C=8B=E5=AD=90=E7=BB=84=E7=BB=87?= =?UTF-8?q?=E7=9A=84=E8=AE=BE=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/accounts/models.py | 3 +-- apps/counter/api/views.py | 5 ++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/accounts/models.py b/apps/accounts/models.py index 4253431..bd2ca34 100644 --- a/apps/accounts/models.py +++ b/apps/accounts/models.py @@ -52,5 +52,4 @@ class User(AbstractUser): return self.username def get_child(self): - print(self.org) - return [u.id for u in User.objects.filter(parent_org=self.org)] + return [u.org.id for u in User.objects.filter(parent_org=self.org.id)] diff --git a/apps/counter/api/views.py b/apps/counter/api/views.py index 9bfd34d..5592350 100644 --- a/apps/counter/api/views.py +++ b/apps/counter/api/views.py @@ -80,7 +80,10 @@ class DeviceInfoListAPIView(ListAPIView, RoleMixin): user_roles = self.get_role() queryset = DeviceInfo.objects.all().order_by('-last_offline_time') if 'staff' in user_roles or 'manager' in user_roles: - device_ids = [query.device_id for query in queryset if query.org == self.request.user.org] + child = self.request.user.get_child() + device_ids = [query.device_id + for query in queryset + if query.org == self.request.user.org or query.org.id in child] queryset = queryset.filter(device_id__in=device_ids) device_id = self.request.GET.get('device_id') status = self.request.GET.get('status')