From 0b63de1f2aafe5c365af37aa94006673abab3722 Mon Sep 17 00:00:00 2001 From: vijay-huang Date: Thu, 6 Oct 2022 12:15:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8=E7=A6=BB=E7=BA=BF=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E7=9A=84=E7=88=B6=E7=BB=84=E7=BB=87=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/counter/api/views.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/counter/api/views.py b/apps/counter/api/views.py index c2658be..9ceef32 100644 --- a/apps/counter/api/views.py +++ b/apps/counter/api/views.py @@ -180,8 +180,11 @@ class DeviceStatusAPIView(APIView, RoleMixin): online_devices = DeviceInfo.objects.filter(online=1) offline_devices = DeviceInfo.objects.filter(online=0) if 'staff' in user_roles or 'manager' in user_roles: - online_ids = [query.device_id for query in online_devices if query.org == self.request.user.org] - offline_ids = [query.device_id for query in offline_devices if query.org == self.request.user.org] + child = self.request.user.get_child() + online_ids = [query.device_id for query in online_devices + if query.org == self.request.user.org or query.org.id in child] + offline_ids = [query.device_id for query in offline_devices + if query.org == self.request.user.org or query.org.id in child] online_devices = online_devices.filter(device_id__in=online_ids) offline_devices = offline_devices.filter(device_id__in=offline_ids) online_count = online_devices.count()