修复 bug
This commit is contained in:
parent
3dc82e0986
commit
30b68a662d
@ -63,10 +63,17 @@ async def get_coupon_activity(
|
||||
CouponDB.id.in_(activity.coupon_config.keys())
|
||||
).all()
|
||||
|
||||
result = CouponActivityInfo.model_validate(activity)
|
||||
result.coupons = [CouponInfo.model_validate(coupon) for coupon in coupons]
|
||||
activity_data = CouponActivityInfo.model_validate(activity).model_dump()
|
||||
activity_data.update({'coupons': [CouponInfo.model_validate(coupon) for coupon in coupons]})
|
||||
|
||||
return success_response(data=result)
|
||||
# 当前是否可以领取
|
||||
current_time = datetime.now().time()
|
||||
if current_time < activity.daily_start_time or current_time > activity.daily_end_time:
|
||||
activity_data.update({'can_receive': False})
|
||||
else:
|
||||
activity_data.update({'can_receive': True})
|
||||
|
||||
return success_response(data=activity_data)
|
||||
|
||||
|
||||
@router.get("", response_model=ResponseModel)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from typing import Any, Optional
|
||||
from fastapi.responses import JSONResponse
|
||||
from pydantic import BaseModel, ConfigDict
|
||||
from datetime import datetime
|
||||
from datetime import datetime, time, date
|
||||
from typing import TypeVar, Generic
|
||||
from fastapi import status
|
||||
import json
|
||||
@ -10,6 +10,10 @@ class CustomJSONEncoder(json.JSONEncoder):
|
||||
def default(self, obj):
|
||||
if isinstance(obj, datetime):
|
||||
return obj.strftime('%Y-%m-%d %H:%M:%S')
|
||||
if isinstance(obj, time):
|
||||
return obj.strftime('%H:%M:%S')
|
||||
elif isinstance(obj, date):
|
||||
return obj.strftime('%Y-%m-%d')
|
||||
elif isinstance(obj, Decimal):
|
||||
return float(obj)
|
||||
return super().default(obj)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user