瀏覽代碼

增加接口:修改云盘开关状态

keiSenFront 2 年之前
父節點
當前提交
9e33949bb0
共有 1 個文件被更改,包括 29 次插入1 次删除
  1. 29 1
      Controller/IcloudService/IcloudService.py

+ 29 - 1
Controller/IcloudService/IcloudService.py

@@ -12,7 +12,7 @@ from django.db.models import Sum, Q
 from django.http import HttpResponse
 from django.views import View
 
-from Model.models import IcloudUseDetails, IcloudService, VodBucketModel, IcloudStorageRecord, Device_Info
+from Model.models import IcloudUseDetails, IcloudService, VodBucketModel, IcloudStorageRecord, Device_Info, Device_User
 from Object.AWS.AmazonS3Util import AmazonS3Util
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
@@ -53,6 +53,8 @@ class IcloudServiceView(View):
             return self.get_icloud_list(request_dict, response, user_id)
         elif operation == 'icloudPlay':  # 云盘播放
             return self.icloud_play(request_dict, response, user_id)
+        elif operation == 'changeCloudStatus':  # 修改云盘开关状态
+            return self.do_change_icloud_status(request_dict, response, user_id)
         else:
             return response.json(404)
 
@@ -550,3 +552,29 @@ class IcloudServiceView(View):
         except Exception as e:
             LOGGER.info('云盘播放异常:{}'.format(repr(e)))
             return response.json(500)
+
+    @staticmethod
+    def do_change_icloud_status(request_dict, response, user_id):
+        """
+        修改云盘开关
+        @param request_dict: 请求参数
+        @param user_id: 用户id
+        @request_dict status: 开关状态, 0: 关闭, 1: 开启
+        @param response: 响应对象
+        @return: response
+        """
+        status = request_dict.get('status', None)
+
+        if not status:
+            return response.json(444, 'status')
+
+        try:
+            device_user_qs = Device_User.objects.filter(userID=user_id)
+            if not device_user_qs.exists():
+                return response.json(173)
+            icloud_use_details_qs = IcloudUseDetails.objects.filter(user_id=user_id)
+            icloud_use_details_qs.update(detect_status=status)
+            return response.json(0)
+        except Exception as e:
+            print(e)
+            return response.json(500)