|
@@ -6,6 +6,7 @@
|
|
|
@IDE :PyCharm
|
|
|
"""
|
|
|
import time
|
|
|
+from collections import OrderedDict
|
|
|
|
|
|
from django.db import transaction
|
|
|
from django.views import View
|
|
@@ -196,19 +197,28 @@ class GatewaySubDeviceView(View):
|
|
|
if not cycle:
|
|
|
page = request_dict.get('page', None)
|
|
|
size = request_dict.get('size', None)
|
|
|
+ start_time = request_dict.get('startTime', None)
|
|
|
+ end_time = request_dict.get('endTime', None)
|
|
|
if not all([page, size]):
|
|
|
return response.json(444)
|
|
|
page, size = int(page), int(size)
|
|
|
- sensor_record_qs = SensorRecord.objects.filter(gateway_sub_device_id=sub_device_id). \
|
|
|
- values('alarm', 'created_time').order_by('-created_time')[
|
|
|
- (page - 1) * size:page * size]
|
|
|
+
|
|
|
+ if start_time and end_time:
|
|
|
+ sensor_record_qs = SensorRecord.objects.filter(gateway_sub_device_id=sub_device_id,
|
|
|
+ created_time__range=(start_time, end_time)). \
|
|
|
+ values('alarm', 'created_time').order_by('-created_time')[
|
|
|
+ (page - 1) * size:page * size]
|
|
|
+ else:
|
|
|
+ sensor_record_qs = SensorRecord.objects.filter(gateway_sub_device_id=sub_device_id). \
|
|
|
+ values('alarm', 'created_time').order_by('-created_time')[
|
|
|
+ (page - 1) * size:page * size]
|
|
|
if not sensor_record_qs.exists():
|
|
|
return response.json(0)
|
|
|
return response.json(0, list(sensor_record_qs))
|
|
|
else:
|
|
|
- record_dict = {}
|
|
|
+ record_dict = OrderedDict()
|
|
|
record_list = []
|
|
|
- if cycle == '24 hours':
|
|
|
+ if cycle == 'Hours':
|
|
|
start_time = now_time - 24 * 60 * 60
|
|
|
sensor_record_qs = SensorRecord.objects.filter(gateway_sub_device_id=sub_device_id,
|
|
|
created_time__range=(start_time, now_time)). \
|