浏览代码

套餐转移功能__

locky 4 年之前
父节点
当前提交
59342b3db9
共有 2 个文件被更改,包括 18 次插入25 次删除
  1. 18 24
      Controller/CloudTest.py
  2. 0 1
      Object/ResponseObject.py

+ 18 - 24
Controller/CloudTest.py

@@ -10,7 +10,7 @@ from django.db import transaction
 from django.db.models import Q
 from django.db.models import Q
 from django.views.generic.base import View
 from django.views.generic.base import View
 
 
-from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, Store_Meal, StsCrdModel
+from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, StsCrdModel, VodHlsModel
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.TokenObject import TokenObject
 
 
@@ -76,6 +76,7 @@ class cloudTestView(View):
             oldUserName = Device_User.objects.get(userID=oldUserID).username
             oldUserName = Device_User.objects.get(userID=oldUserID).username
             # 更新设备信息
             # 更新设备信息
             old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=newUserID, vodPrimaryMaster=oldUserName)
             old_deviceInfo_qs.update(userID=newUserID, vodPrimaryUserID=newUserID, vodPrimaryMaster=oldUserName)
+            VodHlsModel.objects.filter(uid=uid).delete()
         except Exception as e:
         except Exception as e:
             # print(e)
             # print(e)
             return response.json(500, repr(e))
             return response.json(500, repr(e))
@@ -99,38 +100,31 @@ class cloudTestView(View):
             if not new_isExist:
             if not new_isExist:
                 return response.json(10011)
                 return response.json(10011)
 
 
-            old_orderModel_qs = Order_Model.objects.filter(userID_id=userID, UID=old_uid).values('payType',
-                                                                                                 'uid_bucket_id')
+            # 查询转出设备正在使用的套餐
+            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)
+
+            # 首次转移,根据订单判断是否为购买的套餐
+            old_orderModel_qs = Order_Model.objects.filter(userID_id=userID, UID=old_uid)
             if old_orderModel_qs.exists():
             if old_orderModel_qs.exists():
-                # 首次转移,只能转移购买的的套餐(支付类型为体验套餐和激活码不能转移,即pay_type不能为10,11)
+                old_UIDbucket_id = old_using_uid_bucket[0]['id']
+                # 只能转移购买的的套餐(支付类型为体验套餐和激活码不能转移,即pay_type不能为10,11)
+                old_orderModel_qs = Order_Model.objects.filter(uid_bucket_id=old_UIDbucket_id).values('payType')
                 payType = old_orderModel_qs[0]['payType']
                 payType = old_orderModel_qs[0]['payType']
-                old_uid_bucket_id = old_orderModel_qs[0]['uid_bucket_id']
                 if payType == 10 or payType == 11:
                 if payType == 10 or payType == 11:
                     return response.json(10012)
                     return response.json(10012)
-                old_UIDbucket_qs = UID_Bucket.objects.filter(id=old_uid_bucket_id, endTime__gt=nowTime)
-            else:
-                # 多次转移,根据vod_uid_bucket的uid和endTime查找是否有未过期套餐
-                old_UIDbucket_qs = UID_Bucket.objects.filter(uid=old_uid, endTime__gt=nowTime)
-            if not old_UIDbucket_qs.exists():
-                return response.json(10013)
 
 
-            # 确认转入设备套餐是否开通过套餐和套餐已过期
-            new_orderModel_qs = Order_Model.objects.filter(userID_id=userID, UID=new_uid).values('uid_bucket_id')
-            if new_orderModel_qs.exists():
-                new_uid_bucket_id = new_orderModel_qs[0]['uid_bucket_id']
-                new_UIDbucket_qs = UID_Bucket.objects.filter(id=new_uid_bucket_id, endTime__gt=nowTime).values(
-                    'endTime')
-                if new_UIDbucket_qs.exists():
-                    return response.json(10014)
+            # # 查询转入设备正在使用的套餐
+            new_using_uid_bucket = UID_Bucket.objects.filter(uid=new_uid, endTime__gte=nowTime)
+            if new_using_uid_bucket.exists():
+                return response.json(10014)
 
 
             with transaction.atomic():
             with transaction.atomic():
                 # vod_uid_bucket表更新uid
                 # vod_uid_bucket表更新uid
-                old_UIDbucket_qs.update(uid=new_uid)
+                old_using_uid_bucket[0].update(uid=new_uid)
                 # 删除转出设备stscrd表关联数据
                 # 删除转出设备stscrd表关联数据
-                stscrdModel_qs = StsCrdModel.objects.filter(uid=old_uid)
-                if stscrdModel_qs:
-                    stscrdModel_qs.delete()
-
+                StsCrdModel.objects.filter(uid=old_uid).delete()
         except Exception as e:
         except Exception as e:
             # print(e)
             # print(e)
             return response.json(500, repr(e))
             return response.json(500, repr(e))

+ 0 - 1
Object/ResponseObject.py

@@ -167,7 +167,6 @@ class ResponseObject(object):
             10013: '原设备套餐已过期,无法转移',
             10013: '原设备套餐已过期,无法转移',
             10014: '接受转移设备套餐未过期,无法转移',
             10014: '接受转移设备套餐未过期,无法转移',
             10015: '分享的设备无法转移',
             10015: '分享的设备无法转移',
-            10014: '接受转移设备套餐未过期,无法转移',
             10030: '未购买云存',
             10030: '未购买云存',
             10031: '云存已过期',
             10031: '云存已过期',
             10032: '切换的云存套餐ID不能与正在使用中的相同',
             10032: '切换的云存套餐ID不能与正在使用中的相同',