Sfoglia il codice sorgente

接口新增创建时间以及封面图

zhangdongming 2 anni fa
parent
commit
40e6ae8d7a
1 ha cambiato i file con 16 aggiunte e 3 eliminazioni
  1. 16 3
      Controller/CloudPhoto/CloudPhotoController.py

+ 16 - 3
Controller/CloudPhoto/CloudPhotoController.py

@@ -18,6 +18,7 @@ from Model.models import DeviceCloudPhotoInfo, Device_Info, CloudPhotoBGM, Devic
 from Object.AWS.AmazonS3Util import AmazonS3Util
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
+from Object.utils import LocalDateTimeUtil
 
 LOGGER = logging.getLogger('info')
 
@@ -124,17 +125,29 @@ class CronCloudPhotoView(View):
                 video_qs = video_qs.filter(event_time__gte=int(start_time))
             if end_time:
                 video_qs = video_qs.filter(event_time__lte=int(end_time))
-            video_qs = video_qs.values('id', 'uid', 'device_nick_name', 'event_time').order_by('-event_time')[
-                       (page - 1) * size:page * size]
+            video_qs = video_qs.values('id', 'uid', 'device_nick_name', 'event_time', 'created_time').order_by(
+                '-event_time')[(page - 1) * size:page * size]
             if not video_qs.exists():
                 return response.json(0, [])
             s3 = AmazonS3Util(ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME)
             res_data = []
+            now_month = LocalDateTimeUtil.get_cur_month_start()
+            start_time = "{} 00:00:00".format(str(now_month))
+            time_array = time.strptime(start_time, "%Y-%m-%d %H:%M:%S")
             for item in video_qs:
-                data = {'id': item['id'], 'deviceNickname': item['device_nick_name']}
+                picture_qs = DevicePicturePushInfo.objects \
+                    .filter(uid=item['uid'], event_time__gt=int(time.mktime(time_array)), type=0).order_by('event_time')
+                event_time = picture_qs.first().event_time
+                channel = picture_qs.first().channel
+                data = {'id': item['id'], 'deviceNickname': item['device_nick_name'],
+                        'createdTime': item['created_time']}
+                picture_key = '{}/{}/{}.jpeg'.format(item['uid'], channel, event_time)
+                picture_url = s3.generate_file_obj_url(PUSH_CLOUD_PHOTO, picture_key)
+                data['picture'] = picture_url
                 key = '{}/video/{}.mp4'.format(item['uid'], str(item['event_time']))
                 obj_url = s3.generate_file_obj_url(PUSH_CLOUD_PHOTO, key)
                 data['videoLink'] = obj_url
+
                 res_data.append(data)
             return response.json(0, res_data)
         except Exception as e: