فهرست منبع

修改查询网关列表智能场景数量

peng 3 سال پیش
والد
کامیت
0f46a918f6
1فایلهای تغییر یافته به همراه3 افزوده شده و 1 حذف شده
  1. 3 1
      Controller/SensorGateway/GatewayDeviceController.py

+ 3 - 1
Controller/SensorGateway/GatewayDeviceController.py

@@ -228,10 +228,12 @@ class GatewayDeviceView(View):
             family_device_qs = family_device_qs.filter(~Q(sub_device=0)).order_by('-created_time')
 
             sub_device = []
+            sub_id_list = []
             if family_device_qs.exists():
                 family_device_qs = family_device_qs.values()
                 for item in family_device_qs:
                     sub_id = item['sub_device']
+                    sub_id_list.append(sub_id)
                     gateway_sub_qs = GatewaySubDevice.objects.filter(device_id=device_id, id=sub_id).values(
                         'id', 'device_type',
                         'nickname',
@@ -255,7 +257,7 @@ class GatewayDeviceView(View):
                         'ieeeAddr': gateway_sub_qs['ieee_addr'],
                         'familyId': family_id,
                     })
-            scene_count = SmartScene.objects.filter(device_id=device_id).count()
+            scene_count = SmartScene.objects.filter(Q(device_id=device_id) | Q(sub_device_id__in=sub_id_list)).count()
             res = {'gateway': gateway, 'sub_device': sub_device, 'sub_device_count': len(sub_device),
                    'scene_count': scene_count}
             return response.json(0, res)