|
@@ -1993,7 +1993,7 @@ class serveManagement(View):
|
|
|
@param response:
|
|
|
"""
|
|
|
status = request_dict.get('status', None)
|
|
|
- if status in [1, 5, 6, 7]: # 付款状态
|
|
|
+ if status in ['1', '5', '6', '7']: # 付款状态
|
|
|
return response.json(10059)
|
|
|
uid = request_dict.get('uid', None)
|
|
|
orderID = request_dict.get('orderID', None)
|
|
@@ -2008,24 +2008,33 @@ class serveManagement(View):
|
|
|
with transaction.atomic():
|
|
|
# 云存套餐
|
|
|
if orderType == '0' and payType != '10':
|
|
|
+ AiService.objects.filter(orders=orderID).delete() # 删除AI服务
|
|
|
order_qs = Order_Model.objects.filter(orderID=orderID, userID__username=userName, UID=uid).values(
|
|
|
- 'rank__bucket_id')
|
|
|
+ 'rank__bucket_id', 'payTime', 'rank__expire')
|
|
|
if not order_qs.exists():
|
|
|
return response.json(14)
|
|
|
- uid_bucket_qs = UID_Bucket.objects.filter(uid=uid, use_status=1).values('has_unused')
|
|
|
- has_unused = uid_bucket_qs[0]['has_unused'] if uid_bucket_qs.exists() else ''
|
|
|
- # 判断套餐是否唯一
|
|
|
- if has_unused == 0:
|
|
|
- uid_bucket_qs.update(endTime=nowTime)
|
|
|
- CronUpdateDataView.updateUnusedUidBucket(response)
|
|
|
- return response.json(0)
|
|
|
- # 当设备套餐不唯一时
|
|
|
- # 判断停用套餐是否是为未使用套餐
|
|
|
- unused_uid_Meal_qs = Unused_Uid_Meal.objects.filter(uid=uid,
|
|
|
- bucket_id=order_qs[0]['rank__bucket_id'])
|
|
|
- unused_uid_Meal_number = unused_uid_Meal_qs.count()
|
|
|
- if unused_uid_Meal_number == 1:
|
|
|
+ pay_time = order_qs[0]['payTime']
|
|
|
+ bucket_id = order_qs[0]['rank__bucket_id']
|
|
|
+ expire = order_qs[0]['rank__expire']
|
|
|
+ unused_uid_Meal_qs = Unused_Uid_Meal.objects.filter(order_id=orderID)
|
|
|
+ if unused_uid_Meal_qs.exists(): # 如果能通过订单id查询到未使用套餐则删除套餐
|
|
|
unused_uid_Meal_qs.delete()
|
|
|
+ unused_meal_qs = Unused_Uid_Meal.objects.filter(uid=uid)
|
|
|
+ if not unused_meal_qs.exists():
|
|
|
+ UID_Bucket.objects.filter(uid=uid).update(has_unused=0, updateTime=nowTime)
|
|
|
+ return response.json(0)
|
|
|
+ unused_uid_Meal_qs = Unused_Uid_Meal.objects.filter(uid=uid, bucket_id=bucket_id)
|
|
|
+ if unused_uid_Meal_qs.exists(): # 如果通过uid查询到未使用套餐则删除套餐
|
|
|
+ unused_uid_Meal_qs.first().delete()
|
|
|
+ unused_meal_qs = Unused_Uid_Meal.objects.filter(uid=uid)
|
|
|
+ if not unused_meal_qs.exists():
|
|
|
+ UID_Bucket.objects.filter(uid=uid).update(has_unused=0, updateTime=nowTime)
|
|
|
+ return response.json(0)
|
|
|
+ uid_bucket_qs = UID_Bucket.objects.filter(uid=uid, use_status=1).values('endTime')
|
|
|
+ if uid_bucket_qs.exists(): # 如果通过uid查询正在使用的套餐,则更新过期时间和使用状态
|
|
|
+ end_time = pay_time + uid_bucket_qs[0]['endTime'] - CommonService.calcMonthLater(expire, pay_time)
|
|
|
+ use_status = 2 if end_time < nowTime else 1
|
|
|
+ uid_bucket_qs.update(endTime=end_time, use_status=use_status, updateTime=nowTime)
|
|
|
return response.json(0)
|
|
|
return response.json(10059) # 未使用套餐类型重复
|
|
|
# AI套餐
|