用户信息增加返回 服务券数量。

This commit is contained in:
aaron 2025-01-16 17:17:06 +08:00
parent 20fd355b35
commit e3f86632b6
2 changed files with 18 additions and 4 deletions

View File

@ -1,7 +1,7 @@
from fastapi import APIRouter, HTTPException, Depends, Response, Body
from sqlalchemy.orm import Session
from app.models.user import UserLogin, UserInfo, ResetPasswordRequest,PhoneLoginRequest,VerifyCodeRequest, UserDB, UserUpdate, UserRole, UserPasswordLogin, ReferralUserInfo, generate_user_code
from app.models.coupon import CouponDB, UserCouponDB
from app.models.user import UserLogin ,UserInfo, ResetPasswordRequest,PhoneLoginRequest,VerifyCodeRequest, UserDB, UserUpdate, UserRole, UserPasswordLogin, ReferralUserInfo, generate_user_code
from app.models.coupon import CouponDB, UserCouponDB, CouponStatus
from app.api.deps import get_current_user, get_admin_user
from app.models.database import get_db
import random
@ -124,10 +124,23 @@ async def login(
@router.get("/info", response_model=ResponseModel)
async def get_user_info(
current_user: UserDB = Depends(get_current_user)
current_user: UserDB = Depends(get_current_user),
db: Session = Depends(get_db)
):
"""获取用户信息"""
return success_response(data=UserInfo.model_validate(current_user))
# 查询用户未使用的优惠券数量
coupon_count = db.query(UserCouponDB).filter(
UserCouponDB.user_id == current_user.userid,
UserCouponDB.status == CouponStatus.UNUSED
).count()
# 获取用户基本信息
user_info = UserInfo.model_validate(current_user)
return success_response(data={
**user_info.model_dump(),
"coupon_count": coupon_count
})
@router.post("/phone-login", response_model=ResponseModel)
async def phone_login(

View File

@ -54,6 +54,7 @@ class UserInfo(BaseModel):
points: int = 0
roles: List[UserRole]
create_time: datetime
coupon_count: Optional[int] = 0 # 添加优惠券数量字段
class Config:
from_attributes = True