Просмотр исходного кода

设备转移 不是主用户无法转移

chenshibin 4 лет назад
Родитель
Сommit
6178f647a8
2 измененных файлов с 22 добавлено и 3 удалено
  1. 19 3
      Controller/CloudTest.py
  2. 3 0
      Object/ResponseObject.py

+ 19 - 3
Controller/CloudTest.py

@@ -72,11 +72,27 @@ class cloudTestView(View):
             isShare = Device_Info.objects.get(userID_id=oldUserID, UID=uid).isShare
             if isShare:
                 return response.json(10015)
-            # 获取旧设备的username
-            oldUserName = Device_User.objects.get(userID=oldUserID).username
+            # 获取新设备的username
+            newUserName = Device_User.objects.get(userID=newUserID).username
+
+            main_exist = Device_Info.objects.filter(UID=uid, vodPrimaryUserID='', vodPrimaryMaster='')
+            vodPrimaryUserID = ''
+            vodPrimaryMaster = ''
+            if not main_exist.exists():
+                vodPrimaryUserID = newUserID
+                vodPrimaryMaster = newUserName
+            else:
+                ismain = Device_Info.objects.filter(UID=uid, vodPrimaryUserID=oldUserID)
+                if not ismain.exists():
+                    return response.json(10037)
+                else:
+                    vodPrimaryUserID = newUserID
+                    vodPrimaryMaster = newUserName
+
+
             with transaction.atomic():
                 # 更新设备信息
-                old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=newUserID, vodPrimaryMaster=oldUserName)
+                old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=vodPrimaryUserID, vodPrimaryMaster=vodPrimaryMaster)
                 VodHlsModel.objects.filter(uid=uid).delete()
         except Exception as e:
             # print(e)

+ 3 - 0
Object/ResponseObject.py

@@ -90,6 +90,8 @@ class ResponseObject(object):
             10034: 'Non device primary users cannot view cloud storage',
             10035: 'Non device primary users cannot experience cloud storage',
             10036: 'Non device primary users cannot exchange for cloud storage',
+            10037: 'Non device primary user cannot transfer device',
+
         }
         data_cn = {
             0: '成功',
@@ -174,6 +176,7 @@ class ResponseObject(object):
             10034: '非设备主用户无法查看云存',
             10035: '非设备主用户无法体验云存',
             10036: '非设备主用户无法兑换云存',
+            10037: '非设备主用户无法转移设备',
 
         }
         if self.lang == 'cn':