瀏覽代碼

查询云存使用状态

peng 2 年之前
父節點
當前提交
8e1d82040e
共有 1 個文件被更改,包括 20 次插入1 次删除
  1. 20 1
      Controller/EquipmentManagerV3.py

+ 20 - 1
Controller/EquipmentManagerV3.py

@@ -19,7 +19,7 @@ from Controller.SensorGateway.EquipmentFamilyController import EquipmentFamilyVi
 from Controller.UnicomCombo.UnicomComboController import UnicomComboView
 from Model.models import Device_Info, UID_Bucket, UID_Preview, UidSetModel, UidChannelSetModel, \
     Device_User, iotdeviceInfoModel, UIDCompanySerialModel, UnicomDeviceInfo, CountryModel, \
-    DeviceCloudPhotoInfo, UidPushModel
+    DeviceCloudPhotoInfo, UidPushModel, ExperienceContextModel
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
@@ -712,6 +712,8 @@ class EquipmentManagerV3(View):
             p_uid = p['UID'].upper()
             UserDeviceService.get_sim_by_serial_number(p)  # 获取SIM卡属性
             p['cloudPhoto'] = self.get_cloud_photo_status(p['UID'])
+            # 获取云存使用状态
+            p['vod_use_status'] = self.get_vod_use_status(p_uid, nowTime)
             # 获取iot_deviceInfo表的endpoint和token_iot_number
             p['iot'] = []
             if p['serial_number']:  # 存在序列号根据序列号查询
@@ -757,6 +759,23 @@ class EquipmentManagerV3(View):
         result = data
         return response.json(0, result)
 
+    @staticmethod
+    def get_vod_use_status(uid, now_time):
+        """
+        根据UID获取云存使用状态
+        @param uid: 设备uid
+        @param now_time: 现在时间戳
+        @return: 0:未体验;1:使用中;2:已过期
+        """
+        experience_context_qs = ExperienceContextModel.objects.filter(uid=uid, experience_type=0)
+        if not experience_context_qs.exists():
+            return 0
+        uid_bucket_qs = UID_Bucket.objects.filter(uid=uid, endTime__gt=now_time, use_status=1)
+        if uid_bucket_qs.exists():
+            return 1
+        else:
+            return 2
+
     @staticmethod
     def get_cloud_photo_status(uid):
         """