|
@@ -18,7 +18,7 @@ from django.db.models import Sum
|
|
from django.http import QueryDict
|
|
from django.http import QueryDict
|
|
from django.views import View
|
|
from django.views import View
|
|
|
|
|
|
-from Model.models import SocketInfo, SocketSchedule, Device_Info, SocketPowerStatistics
|
|
|
|
|
|
+from Model.models import SocketInfo, SocketSchedule, Device_Info, SocketPowerStatistics, SceneLog
|
|
from Object.ResponseObject import ResponseObject
|
|
from Object.ResponseObject import ResponseObject
|
|
from Object.utils import LocalDateTimeUtil
|
|
from Object.utils import LocalDateTimeUtil
|
|
from Service.CommonService import CommonService
|
|
from Service.CommonService import CommonService
|
|
@@ -520,8 +520,9 @@ class SmartSocketView(View):
|
|
'time_type',
|
|
'time_type',
|
|
'created_time',
|
|
'created_time',
|
|
'updated_time',
|
|
'updated_time',
|
|
- 'device_id', 'id')
|
|
|
|
- socket_schedule_qs = socket_schedule_qs[(page - 1) * size:page * size]
|
|
|
|
|
|
+ 'device_id',
|
|
|
|
+ 'id').order_by(
|
|
|
|
+ '-created_time')[(page - 1) * size:page * size]
|
|
if not socket_schedule_qs.exists():
|
|
if not socket_schedule_qs.exists():
|
|
return response.json(173)
|
|
return response.json(173)
|
|
try:
|
|
try:
|
|
@@ -557,18 +558,30 @@ class SmartSocketView(View):
|
|
@return: response
|
|
@return: response
|
|
# 日誌擦護用序列號查詢
|
|
# 日誌擦護用序列號查詢
|
|
"""
|
|
"""
|
|
- # page = request_dict.get('pageNo', None)
|
|
|
|
- # size = request_dict.get('pageSize', None)
|
|
|
|
- # serial_number = request_dict.get('serialNumber', None)
|
|
|
|
- # start_time = request_dict.get('startTime', None)
|
|
|
|
- # end_time = request_dict.get('endTime', None)
|
|
|
|
- #
|
|
|
|
- # if not all([page, size, serial_number]):
|
|
|
|
- # return response.json(444)
|
|
|
|
- #
|
|
|
|
- # socket_info_qs = SocketInfo.objects.filter(serial_number=serial_number)
|
|
|
|
- # device_id_list = []
|
|
|
|
- pass
|
|
|
|
|
|
+ page = request_dict.get('pageNo', None)
|
|
|
|
+ size = request_dict.get('pageSize', None)
|
|
|
|
+ serial_number = request_dict.get('serialNumber', None)
|
|
|
|
+ if not all([page, size, serial_number]):
|
|
|
|
+ return response.json(444, {'errno: page or size or serial_number'})
|
|
|
|
+ page, size = int(page), int(size)
|
|
|
|
+ scene_log_qs = SceneLog.objects.filter(device_id=serial_number).values('tasks', 'status',
|
|
|
|
+ 'created_time').order_by(
|
|
|
|
+ '-created_time')[(page - 1) * size:page * size]
|
|
|
|
+ if not scene_log_qs.exists():
|
|
|
|
+ return response.json(173)
|
|
|
|
+ try:
|
|
|
|
+ log_list = []
|
|
|
|
+ for scene_log in scene_log_qs:
|
|
|
|
+ data = {
|
|
|
|
+ 'serialNumber': serial_number,
|
|
|
|
+ 'tasks': scene_log['tasks'] if scene_log['tasks'] else '',
|
|
|
|
+ 'status': scene_log['status'] if scene_log['status'] else 0,
|
|
|
|
+ 'createdTime': scene_log['created_time'] if scene_log['created_time'] else '',
|
|
|
|
+ }
|
|
|
|
+ log_list.append(data)
|
|
|
|
+ return response.json(0, log_list)
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return response.json(500, repr(e))
|
|
|
|
|
|
@classmethod
|
|
@classmethod
|
|
def splittings_time(cls, startTime, endTime, unit):
|
|
def splittings_time(cls, startTime, endTime, unit):
|