Browse Source

Merge remote-tracking branch 'remotes/origin/cheng' into test

Ansjer 2 years ago
parent
commit
9dbfed0edc
1 changed files with 29 additions and 1 deletions
  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.http import HttpResponse
 from django.views import View
 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.AWS.AmazonS3Util import AmazonS3Util
 from Object.RedisObject import RedisObject
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
@@ -54,6 +54,8 @@ class IcloudServiceView(View):
                 return self.delete_icloud_record(request_dict, response, user_id)
                 return self.delete_icloud_record(request_dict, response, user_id)
             elif operation == 'getIcloudList':  # 获取云盘播放列表
             elif operation == 'getIcloudList':  # 获取云盘播放列表
                 return self.get_icloud_list(request_dict, response, user_id)
                 return self.get_icloud_list(request_dict, response, user_id)
+            elif operation == 'changeIcloudStatus':  # 修改云盘开关状态
+                return self.do_change_icloud_status(request_dict, response, user_id)
             else:
             else:
                 return response.json(404)
                 return response.json(404)
 
 
@@ -556,3 +558,29 @@ class IcloudServiceView(View):
         except Exception as e:
         except Exception as e:
             LOGGER.info('云盘播放异常:{}'.format(repr(e)))
             LOGGER.info('云盘播放异常:{}'.format(repr(e)))
             return response.json(500)
             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)