浏览代码

套餐转移_修复vod_uid_bucket表更新uid失败问题

locky 4 年之前
父节点
当前提交
5643239053
共有 1 个文件被更改,包括 9 次插入7 次删除
  1. 9 7
      Controller/CloudTest.py

+ 9 - 7
Controller/CloudTest.py

@@ -74,9 +74,10 @@ class cloudTestView(View):
                 return response.json(10015)
             # 获取旧设备的username
             oldUserName = Device_User.objects.get(userID=oldUserID).username
-            # 更新设备信息
-            old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=newUserID, vodPrimaryMaster=oldUserName)
-            VodHlsModel.objects.filter(uid=uid).delete()
+            with transaction.atomic():
+                # 更新设备信息
+                old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=newUserID, vodPrimaryMaster=oldUserName)
+                VodHlsModel.objects.filter(uid=uid).delete()
         except Exception as e:
             # print(e)
             return response.json(500, repr(e))
@@ -91,7 +92,7 @@ class cloudTestView(View):
 
         try:
             # 查询两个UID是否在同一账号下
-            old_deviceInfo_qs = Device_Info.objects.filter(userID_id=userID, UID=old_uid).values('isExist', 'Online')
+            old_deviceInfo_qs = Device_Info.objects.filter(userID_id=userID, UID=old_uid).values('isExist')
             new_deviceInfo_qs = Device_Info.objects.filter(userID_id=userID, UID=new_uid).values('isExist')
             if not (old_deviceInfo_qs.exists() and new_deviceInfo_qs.exists()):
                 return response.json(10010)
@@ -101,7 +102,7 @@ class cloudTestView(View):
                 return response.json(10011)
 
             # 查询转出设备正在使用的套餐
-            old_using_uid_bucket = UID_Bucket.objects.filter(uid=old_uid, endTime__gte=nowTime).values("id").order_by('addTime')
+            old_using_uid_bucket = UID_Bucket.objects.filter(uid=old_uid, endTime__gte=nowTime).values('id').order_by('addTime')
             if not old_using_uid_bucket.exists():
                 return response.json(10013)
 
@@ -122,7 +123,8 @@ class cloudTestView(View):
 
             with transaction.atomic():
                 # vod_uid_bucket表更新uid
-                old_using_uid_bucket[0].update(uid=new_uid)
+                old_using_uid_bucket_id = old_using_uid_bucket[0]['id']
+                UID_Bucket.objects.filter(id=old_using_uid_bucket_id).update(uid=new_uid)
                 # 删除转出设备stscrd表关联数据
                 StsCrdModel.objects.filter(uid=old_uid).delete()
         except Exception as e:
@@ -138,7 +140,7 @@ class cloudTestView(View):
         if UID_Bucket_id:
             nowTime = int(time.time())
             try:
-                UID_Bucket.objects.filter(id=UID_Bucket_id).update(endTime=nowTime - 1)
+                UID_Bucket.objects.filter(id=UID_Bucket_id).update(endTime=nowTime-1)
             except Exception as e:
                 # print(e)
                 return response.json(500, repr(e))