|
@@ -13,7 +13,7 @@ from django.db import connection, connections, transaction
|
|
|
from django.views import View
|
|
|
|
|
|
from Model.models import Device_User, Device_Info, UidSetModel, UID_Bucket, Unused_Uid_Meal, Order_Model, StsCrdModel, \
|
|
|
- VodHlsModel, ExperienceContextModel
|
|
|
+ VodHlsModel, ExperienceContextModel, AiService
|
|
|
from Object.ResponseObject import ResponseObject
|
|
|
from Object.utils import LocalDateTimeUtil
|
|
|
from Service import CommonService
|
|
@@ -162,8 +162,10 @@ class CronUpdateDataView(View):
|
|
|
response = ResponseObject()
|
|
|
if operation == 'expiredUidBucket': # 定时更新过期云存套餐状态
|
|
|
return self.expiredUidBucket(response)
|
|
|
- if operation == 'updateUnusedUidBucket': # 定时更新过期云存关联的未使用套餐状态
|
|
|
+ elif operation == 'updateUnusedUidBucket': # 定时更新过期云存关联的未使用套餐状态
|
|
|
return self.updateUnusedUidBucket(response)
|
|
|
+ elif operation == 'updateUnusedAiService': # 定时更新过期ai关联的未使用套餐状态
|
|
|
+ return self.updateUnusedAiService(response)
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
|
|
@@ -219,3 +221,36 @@ class CronUpdateDataView(View):
|
|
|
except Exception:
|
|
|
continue
|
|
|
return response.json(0)
|
|
|
+
|
|
|
+ @staticmethod
|
|
|
+ def updateUnusedAiService(response):
|
|
|
+ now_time = int(time.time())
|
|
|
+ ai_service_qs = AiService.objects.filter(
|
|
|
+ endTime__lte=now_time,
|
|
|
+ use_status=1).values(
|
|
|
+ 'id',
|
|
|
+ 'uid')[
|
|
|
+ 0:200]
|
|
|
+ for ai_service in ai_service_qs:
|
|
|
+ try:
|
|
|
+ with transaction.atomic():
|
|
|
+ AiService.objects.filter(
|
|
|
+ id=ai_service['id']).update(
|
|
|
+ use_status=2) # 更新过期ai订单状态
|
|
|
+ # 如果存在未使用套餐,更新为使用
|
|
|
+ unused_ai_service = AiService.objects.filter(
|
|
|
+ uid=ai_service['uid'],
|
|
|
+ use_status=0).order_by('addTime')[
|
|
|
+ :1].values(
|
|
|
+ 'id',
|
|
|
+ 'endTime')
|
|
|
+ if unused_ai_service.exists():
|
|
|
+ # 未使用套餐的endTime在购买的时候保存为有效时间
|
|
|
+ effective_day = unused_ai_service[0]['endTime']
|
|
|
+ endTime = now_time + effective_day
|
|
|
+ AiService.objects.filter(
|
|
|
+ id=unused_ai_service[0]['id']).update(
|
|
|
+ use_status=1, endTime=endTime, updTime=now_time)
|
|
|
+ except Exception:
|
|
|
+ continue
|
|
|
+ return response.json(0)
|