增加 获取未读消息的接口

This commit is contained in:
aaron 2025-01-23 12:38:13 +08:00
parent 191b3a5e18
commit 35488ca919

View File

@ -15,7 +15,7 @@ async def create_message(
db: Session = Depends(get_db),
admin: UserDB = Depends(get_admin_user) # 仅管理员可创建消息
):
"""创建消息"""
"""创建消息 (仅管理员)"""
db_message = MessageDB(**message.model_dump())
try:
@ -86,4 +86,22 @@ async def get_user_messages(
return success_response(data={
"total": total,
"items": [MessageInfo.model_validate(m) for m in messages]
})
})
@router.get("/latest-unread", response_model=ResponseModel)
async def get_latest_unread_message(
db: Session = Depends(get_db),
current_user: UserDB = Depends(get_current_user)
):
"""获取最新一条未读消息"""
message = db.query(MessageDB).filter(
MessageDB.user_id == current_user.userid,
MessageDB.is_read == False
).order_by(
MessageDB.create_time.desc()
).first()
if not message:
return success_response(data=None)
return success_response(data=MessageInfo.model_validate(message))