瀏覽代碼

vod_bucket表添加is_free字段,更改套餐转移免费存储桶不可转移方式

locky 4 年之前
父節點
當前提交
9a754b9082
共有 2 個文件被更改,包括 11 次插入13 次删除
  1. 9 12
      Controller/CloudTest.py
  2. 2 1
      Model/models.py

+ 9 - 12
Controller/CloudTest.py

@@ -12,7 +12,8 @@ from django.views.generic.base import View
 from Object.TokenObject import TokenObject
 from Object.TokenObject import TokenObject
 from Service.ModelService import ModelService
 from Service.ModelService import ModelService
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
-from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, StsCrdModel, VodHlsModel, Unused_Uid_Meal
+from Model.models import Device_User, Device_Info, Order_Model, UID_Bucket, StsCrdModel, VodHlsModel, Unused_Uid_Meal, \
+    VodBucketModel
 
 
 
 
 class cloudTestView(View):
 class cloudTestView(View):
@@ -116,19 +117,15 @@ class cloudTestView(View):
                 return response.json(10011)
                 return response.json(10011)
 
 
             # 查询转出设备正在使用的套餐
             # 查询转出设备正在使用的套餐
-            old_using_uid_bucket = UID_Bucket.objects.filter(uid=old_uid, endTime__gte=nowTime).values('id','has_unused').order_by('addTime')
+            old_using_uid_bucket = UID_Bucket.objects.filter(uid=old_uid, endTime__gte=nowTime).values('id', 'bucket_id', 'has_unused').order_by('addTime')
             if not old_using_uid_bucket.exists():
             if not old_using_uid_bucket.exists():
                 return response.json(10013)
                 return response.json(10013)
 
 
-            # 首次转移,根据订单判断是否为购买的套餐
-            old_orderModel_qs = Order_Model.objects.filter(userID_id=userID, UID=old_uid)
-            if old_orderModel_qs.exists():
-                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']
-                if payType == 10 or payType == 11:
-                    return response.json(10012)
+            # 免费存储桶不可转移
+            old_vod_bucket_id = old_using_uid_bucket[0]['bucket_id']
+            is_free = VodBucketModel.objects.get(id=old_vod_bucket_id).is_free
+            if is_free == 1:
+                return response.json(10012)
 
 
             # 查询转入设备是否存在正在使用的套餐和未使用的套餐
             # 查询转入设备是否存在正在使用的套餐和未使用的套餐
             new_using_uid_bucket = UID_Bucket.objects.filter(uid=new_uid, endTime__gte=nowTime)
             new_using_uid_bucket = UID_Bucket.objects.filter(uid=new_uid, endTime__gte=nowTime)
@@ -146,7 +143,7 @@ class cloudTestView(View):
                 addTime = old_unused_uid_bucket[0]['addTime']
                 addTime = old_unused_uid_bucket[0]['addTime']
                 expire = old_unused_uid_bucket[0]['expire']
                 expire = old_unused_uid_bucket[0]['expire']
                 num = old_unused_uid_bucket[0]['num']
                 num = old_unused_uid_bucket[0]['num']
-                endTime = nowTime + expire*num*24*60*60 # 套餐结束时间:当前时间算起到,加上存储桶月份时长*个数
+                endTime = nowTime + expire*num*30*24*60*60 # 套餐结束时间:当前时间算起到,加上存储桶月份时长*个数*一个月的秒数
                 data_dict = {
                 data_dict = {
                     'uid': old_uid,
                     'uid': old_uid,
                     'channel': channel,
                     'channel': channel,

+ 2 - 1
Model/models.py

@@ -392,12 +392,13 @@ class User_Brand(models.Model):
 # 存储通表
 # 存储通表
 class VodBucketModel(models.Model):
 class VodBucketModel(models.Model):
     id = models.AutoField(primary_key=True, verbose_name='主键')
     id = models.AutoField(primary_key=True, verbose_name='主键')
-    bucket = models.CharField(max_length=30, verbose_name='设备UID')
+    bucket = models.CharField(max_length=30, verbose_name='存储桶名称')
     storeDay = models.IntegerField(default=0, verbose_name='存储生命周期(天)')
     storeDay = models.IntegerField(default=0, verbose_name='存储生命周期(天)')
     content = models.TextField(verbose_name='描述', default='')
     content = models.TextField(verbose_name='描述', default='')
     endpoint = models.CharField(max_length=125, default='', verbose_name='存储节点')
     endpoint = models.CharField(max_length=125, default='', verbose_name='存储节点')
     area = models.CharField(max_length=16, default='', verbose_name='区域')
     area = models.CharField(max_length=16, default='', verbose_name='区域')
     region = models.CharField(max_length=16, default='', verbose_name='regionID')
     region = models.CharField(max_length=16, default='', verbose_name='regionID')
+    is_free = models.SmallIntegerField(default=0, verbose_name='是否为免费存储桶[0:否,1:是]')
 
 
     addTime = models.IntegerField(verbose_name='添加时间', default=0)
     addTime = models.IntegerField(verbose_name='添加时间', default=0)
     updTime = models.IntegerField(verbose_name='更新时间', default=0)
     updTime = models.IntegerField(verbose_name='更新时间', default=0)