Эх сурвалжийг харах

设备转移_更新主用户ID和主用户名,分享的设备不能转移

locky 4 жил өмнө
parent
commit
c7a2c013b3

+ 12 - 14
Controller/CloudTest.py

@@ -60,24 +60,22 @@ class cloudTestView(View):
             # 登录方式可能为用户名,手机号或邮箱登录
             deviceUser_qs = Device_User.objects.filter(
                 Q(username=loginName) | Q(phone=loginName) | Q(userEmail=loginName)).values('userID')
-            userID = deviceUser_qs[0]['userID']
+            newUserID = deviceUser_qs[0]['userID']
             # 判断新用户的userID是否跟旧用户的一样
-            if userID == oldUserID:
+            if newUserID == oldUserID:
                 return response.json(10009)
-            # 判断该用户是否已有此设备UID
-            # new_deviceInfo_qs = Device_Info.objects.filter(userID_id=userID, UID=uid, isExist=1)
-            # if new_deviceInfo_qs:
-            #     return response.json(10009)
-            # 获取新用户的主用户UserID和主用户名
-            new_deviceInfo_qs = Device_Info.objects.filter(userID_id=userID, isExist=1).values('UID', 'primaryUserID',
-                                                                                               'primaryMaster')
-            if new_deviceInfo_qs[0]['UID'] == userID:
-                # 新用户已有此设备
+            # 判断新用户是否已有此设备UID
+            new_deviceInfo_qs = Device_Info.objects.filter(userID_id=newUserID, UID=uid, isExist=1)
+            if new_deviceInfo_qs:
                 return response.json(10009)
-            primaryUserID = new_deviceInfo_qs[0]['primaryUserID']
-            primaryMaster = new_deviceInfo_qs[0]['primaryMaster']
+            # 分享的设备不能转移
+            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
             # 更新设备信息
-            old_deviceInfo_qs.update(userID=userID, primaryUserID=primaryUserID, primaryMaster=primaryMaster)
+            old_deviceInfo_qs.update(userID=newUserID, primaryUserID=newUserID, primaryMaster=oldUserName)
         except Exception as e:
             # print(e)
             return response.json(500, repr(e))

+ 3 - 1
Object/ResponseObject.py

@@ -82,6 +82,7 @@ class ResponseObject(object):
             10012: 'Experience packages cannot be transferred',
             10013: 'Original equipment package has expired and cannot be transferred',
             10014: 'Accept transfer of equipment packages that have not expired and cannot be transferred',
+            10015: 'Shared devices cannot be transferred',
             10033: 'The primary user of the device cannot purchase it',
             10034: 'Non device primary users cannot view cloud storage',
             10035: 'Non device primary users cannot experience cloud storage',
@@ -161,7 +162,8 @@ class ResponseObject(object):
             10011: '接受转移设备不存在,无法转移',
             10012: '体验套餐无法转移',
             10013: '原设备套餐已过期,无法转移',
-            10014: '接受转移设备套餐未过期,无法转移' ,
+            10014: '接受转移设备套餐未过期,无法转移',
+            10015: '分享的设备无法转移',
             10033: '非设备主用户无法购买',
             10034: '非设备主用户无法查看云存',
             10035: '非设备主用户无法体验云存',