修复 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())
|
CouponDB.id.in_(activity.coupon_config.keys())
|
||||||
).all()
|
).all()
|
||||||
|
|
||||||
result = CouponActivityInfo.model_validate(activity)
|
activity_data = CouponActivityInfo.model_validate(activity).model_dump()
|
||||||
result.coupons = [CouponInfo.model_validate(coupon) for coupon in coupons]
|
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)
|
@router.get("", response_model=ResponseModel)
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
from typing import Any, Optional
|
from typing import Any, Optional
|
||||||
from fastapi.responses import JSONResponse
|
from fastapi.responses import JSONResponse
|
||||||
from pydantic import BaseModel, ConfigDict
|
from pydantic import BaseModel, ConfigDict
|
||||||
from datetime import datetime
|
from datetime import datetime, time, date
|
||||||
from typing import TypeVar, Generic
|
from typing import TypeVar, Generic
|
||||||
from fastapi import status
|
from fastapi import status
|
||||||
import json
|
import json
|
||||||
@ -10,6 +10,10 @@ class CustomJSONEncoder(json.JSONEncoder):
|
|||||||
def default(self, obj):
|
def default(self, obj):
|
||||||
if isinstance(obj, datetime):
|
if isinstance(obj, datetime):
|
||||||
return obj.strftime('%Y-%m-%d %H:%M:%S')
|
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):
|
elif isinstance(obj, Decimal):
|
||||||
return float(obj)
|
return float(obj)
|
||||||
return super().default(obj)
|
return super().default(obj)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user