|
@@ -11,6 +11,7 @@ import datetime
|
|
|
import time
|
|
|
|
|
|
from django.db import connection, connections, transaction
|
|
|
+from django.db.models import Q
|
|
|
from django.views import View
|
|
|
|
|
|
from Model.models import Device_User, Device_Info, UidSetModel, UID_Bucket, Unused_Uid_Meal, Order_Model, StsCrdModel, \
|
|
@@ -184,32 +185,29 @@ class CronUpdateDataView(View):
|
|
|
|
|
|
def validation(self, request_dict, request, operation):
|
|
|
response = ResponseObject()
|
|
|
- if operation == 'expiredUidBucket': # 定时更新过期云存套餐状态
|
|
|
- return self.expiredUidBucket(response)
|
|
|
- elif operation == 'updateUnusedUidBucket': # 定时更新过期云存关联的未使用套餐状态
|
|
|
+ if operation == 'updateUnusedUidBucket': # 定时更新过期云存关联的未使用套餐状态
|
|
|
return self.updateUnusedUidBucket(response)
|
|
|
elif operation == 'updateUnusedAiService': # 定时更新过期ai关联的未使用套餐状态
|
|
|
return self.updateUnusedAiService(response)
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
|
|
|
- @staticmethod
|
|
|
- def expiredUidBucket(response):
|
|
|
- now_time = int(time.time())
|
|
|
- expired_uid_bucket = UID_Bucket.objects.filter(endTime__lte=now_time)
|
|
|
- id_list = expired_uid_bucket.values_list('id', flat=True)
|
|
|
- UID_Bucket.objects.filter(id__in=list(id_list)).update(use_status=2)
|
|
|
- return response.json(0)
|
|
|
-
|
|
|
@staticmethod
|
|
|
def updateUnusedUidBucket(response):
|
|
|
+ """
|
|
|
+ 监控云存套餐过期修改状态
|
|
|
+ @param response:
|
|
|
+ @return:
|
|
|
+ """
|
|
|
+ # 定时更新已过期套餐修改状态为2
|
|
|
now_time = int(time.time())
|
|
|
- expired_uid_buckets = UID_Bucket.objects.filter(
|
|
|
- endTime__lte=now_time,
|
|
|
- has_unused=1).values(
|
|
|
- "id",
|
|
|
- "uid")[
|
|
|
- 0:1000]
|
|
|
+ expired_uid_bucket = UID_Bucket.objects.filter(endTime__lte=now_time)
|
|
|
+ expired_uid_bucket = expired_uid_bucket.filter(~Q(use_status=2)).values('id')
|
|
|
+ if expired_uid_bucket.exists():
|
|
|
+ expired_uid_bucket.update(use_status=2)
|
|
|
+ # 监控有未使用套餐则自动生效
|
|
|
+ expired_uid_buckets = \
|
|
|
+ UID_Bucket.objects.filter(endTime__lte=now_time, has_unused=1).values("id", "uid")[0:1000]
|
|
|
for expired_uid_bucket in expired_uid_buckets:
|
|
|
unuseds = Unused_Uid_Meal.objects.filter(
|
|
|
uid=expired_uid_bucket['uid']).values(
|
|
@@ -219,8 +217,7 @@ class CronUpdateDataView(View):
|
|
|
"addTime",
|
|
|
"expire",
|
|
|
"num",
|
|
|
- "bucket_id").order_by('addTime')[
|
|
|
- 0:1]
|
|
|
+ "bucket_id").order_by('addTime')[0:1]
|
|
|
if not unuseds.exists():
|
|
|
continue
|
|
|
unused = unuseds[0]
|