Bladeren bron

云盘表

peng 2 jaren geleden
bovenliggende
commit
800e7217aa
2 gewijzigde bestanden met toevoegingen van 83 en 2 verwijderingen
  1. 2 0
      Controller/Cron/CronTaskController.py
  2. 81 2
      Model/models.py

+ 2 - 0
Controller/Cron/CronTaskController.py

@@ -635,6 +635,8 @@ class CronCollectDataView(View):
                     country_id = uid_set_qs[0]['tb_country'] if uid_set_qs.exists() else 0
                     country_name = country_dict.get(country_id, '未知国家')
                     order_type = item['order_type']
+                    if order_type == 1:
+                        order_type = 0
                     device_info_qs = Device_Info.objects.filter(UID=item['UID']).values('Type')
                     device_type_id = device_info_qs[0]['Type'] if device_info_qs.exists() else 0
                     device_type_name = device_type_dict.get(device_type_id, '未知设备')

+ 81 - 2
Model/models.py

@@ -756,6 +756,7 @@ class Store_Meal(models.Model):
     sort = models.IntegerField(default=99, blank=True, verbose_name=u'排序,越小越靠前')  # 单位月
     is_beta = models.SmallIntegerField(default=0, verbose_name=u'是否显示beta')  # 0: 否, 1: 是
     is_ai = models.SmallIntegerField(default=0, verbose_name=u'是否支持AI')  # 0: 否, 1: 是
+    icloud_store_meal_id = models.IntegerField(default=0, verbose_name='关联云盘套餐id')
 
     def __str__(self):
         return self.id
@@ -932,7 +933,7 @@ class Order_Model(models.Model):
     rank = models.ForeignKey(Store_Meal, to_field='id', default='', on_delete=models.CASCADE, verbose_name='关联云存套餐表')
     ai_rank = models.ForeignKey(AiStoreMeal, to_field='id', default='', on_delete=models.CASCADE,
                                 verbose_name='关联ai套餐表')
-    order_type = models.SmallIntegerField(default=0, verbose_name='订单类型:0:云存,1:云存ai,2:联通4G')
+    order_type = models.SmallIntegerField(default=0, verbose_name='订单类型:0:云存,1:云存ai,2:联通4G,3:五兴,4:云盘')
     unify_combo_id = models.CharField(blank=True, default='', max_length=32, verbose_name=u'统一套餐id')
     nickname = models.CharField(default='', max_length=64, verbose_name='设备昵称')
     uid_bucket_id = models.IntegerField(default=0, verbose_name='关联uid_bucket的字段')
@@ -2493,7 +2494,7 @@ class AiService(models.Model):
     id = models.AutoField(primary_key=True, verbose_name=u'自增标记ID')
     uid = models.CharField(max_length=20, verbose_name='设备UID', db_index=True)
     channel = models.SmallIntegerField(default=0, verbose_name='通道')
-    #orders = models.ForeignKey(Order_Model, to_field='orderID', default='', on_delete=models.CASCADE,
+    # orders = models.ForeignKey(Order_Model, to_field='orderID', default='', on_delete=models.CASCADE,
     #                           verbose_name='关联订单表')
     detect_status = models.SmallIntegerField(default=0, verbose_name='状态')  # 0:关闭, 1:开启
     endTime = models.BigIntegerField(verbose_name='套餐结束时间', db_index=True, default=0)
@@ -3547,3 +3548,81 @@ class ExchangeCode(models.Model):
         db_table = 'exchange_code'
         verbose_name = '套餐包兑换码'
         verbose_name_plural = verbose_name
+
+
+class ICloudStoreMeal(models.Model):
+    id = models.AutoField(primary_key=True, verbose_name=u'自增ID')
+    currency = models.CharField(blank=True, default='$', max_length=32, verbose_name=u'货币符号')
+    symbol = models.CharField(blank=True, default='$', max_length=32, verbose_name=u'符号')
+    price = models.CharField(blank=True, max_length=32, verbose_name=u'价格')
+    expire = models.IntegerField(default=0, blank=True, verbose_name=u'有效期')  # 单位月
+    add_time = models.DateTimeField(blank=True, null=True, verbose_name=u'加入时间', auto_now_add=True)
+    pay_type = models.ManyToManyField(to='Pay_Type', verbose_name='付款类型', db_table='icloud_store_meal_pay')
+    update_time = models.DateTimeField(blank=True, verbose_name=u'更新时间', auto_now=True)
+    is_show = models.SmallIntegerField(default=0, verbose_name=u'是否隐藏 [0=隐藏,1展示]')
+    is_delete = models.SmallIntegerField(default=0, verbose_name=u'是否删除 [0=否,1=是]')
+    lang = models.ManyToManyField(to='Lang', verbose_name='套餐语言', db_table='icloud_store_meal_lang')
+    size = models.IntegerField(null=True, default=0, verbose_name='云盘容量大小')  # 单位G
+
+    def __str__(self):
+        return self.id
+
+    class Meta:
+        db_table = 'icloud_store_meal'
+        verbose_name = u'云盘套餐'
+        verbose_name_plural = verbose_name
+        ordering = ('id',)
+
+
+class IcloudUseDetails(models.Model):
+    id = models.AutoField(primary_key=True, verbose_name=u'自增标记ID')
+    size = models.IntegerField(default=0, verbose_name='已使用容量大小')  # 单位G
+    add_time = models.IntegerField(verbose_name='添加时间', default=0)
+    upd_time = models.BigIntegerField(verbose_name='更新时间', default=0)
+    detect_status = models.SmallIntegerField(default=0, verbose_name='开关状态')  # 0:关闭, 1:开启
+    user_id = models.CharField(default=0, verbose_name='关联用户表id', db_index=True)
+
+    class Meta:
+        db_table = 'icloud_use_details'
+        verbose_name = '云盘使用表'
+        verbose_name_plural = verbose_name
+        ordering = ('id',)
+
+
+class IcloudService(models.Model):
+    id = models.AutoField(primary_key=True, verbose_name=u'自增标记ID')
+    size = models.IntegerField(default=0, verbose_name='容量大小')  # 单位G
+    end_time = models.BigIntegerField(verbose_name='套餐结束时间', db_index=True, default=0)
+    add_time = models.IntegerField(verbose_name='添加时间', default=0)
+    upd_time = models.BigIntegerField(verbose_name='更新时间', default=0)
+    use_status = models.IntegerField(verbose_name='使用状态', default=0)  # 0:使用中, 1:已过期
+    use_details_id = models.IntegerField(default=0, verbose_name='关联云盘使用表id')
+
+    class Meta:
+        db_table = 'icloud_service'
+        verbose_name = '云盘服务表'
+        verbose_name_plural = verbose_name
+        ordering = ('id',)
+
+
+class IcloudStorageRecord(models.Model):
+    id = models.AutoField(primary_key=True, verbose_name='回放列表主键')
+    user_id = models.CharField(default=0, verbose_name='关联用户表id', db_index=True)
+    uid = models.CharField(max_length=20, verbose_name='设备UID', db_index=True)
+    nickname = models.CharField(max_length=20, verbose_name='设备昵称', db_index=True)
+    channel = models.SmallIntegerField(default=0, verbose_name='通道')
+    time_stamp = models.IntegerField(verbose_name='视频/图片名字时间戳', default=0, db_index=True)
+    sec = models.IntegerField(verbose_name='秒数', default=0)
+    bucket_id = models.IntegerField(verbose_name='关联存储桶id', default=0)
+    fg = models.CharField(max_length=20, verbose_name='ts个数,时间描述片段数')  # 阿里为时间片段数,亚马逊为一个32bit整型,前28bit代表ts文件的时长
+    size = models.BigIntegerField(default=0, verbose_name='视频/图片大小')  # 单位KB
+    store_type = models.SmallIntegerField(default=0, verbose_name='存储类型')  # 0:图片, 1:ts视频, 2:MP4视频
+
+    def __str__(self):
+        return self.id
+
+    class Meta:
+        db_table = 'icloud_storage_record'
+        verbose_name = u'云盘信息记录表'
+        verbose_name_plural = verbose_name
+        ordering = ('-id',)