From 50c25ab0c78addbf17f451b66b3c942519dbd04b Mon Sep 17 00:00:00 2001 From: chenjintang-shrimp Date: Tue, 12 Aug 2025 06:11:06 +0000 Subject: [PATCH] feat(private-api): support change username --- app/router/private/username.py | 31 +++++++++++++++++++++++++++++++ osu_lazer_api.code-workspace | 4 +++- 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 app/router/private/username.py diff --git a/app/router/private/username.py b/app/router/private/username.py new file mode 100644 index 0000000..27da481 --- /dev/null +++ b/app/router/private/username.py @@ -0,0 +1,31 @@ +from __future__ import annotations + +from app.database.lazer_user import User +from app.dependencies.database import get_db + +from .router import router + +from fastapi import Body, Depends, HTTPException +from sqlmodel import select +from sqlmodel.ext.asyncio.session import AsyncSession + + +@router.post("/rename", tags=["rename"]) +async def user_rename( + user_id: int = Body(...), + new_name: str = Body(...), + session: AsyncSession = Depends(get_db), + # currentUser: User = Depends(get_current_user) +): + current_user = (await session.exec(select(User).where(User.id == user_id))).first() + if current_user is None: + raise HTTPException(404, "User not found") + samename_user = ( + await session.exec(select(User).where(User.username == new_name)) + ).first() + if samename_user: + raise HTTPException(409, "Username Exisits") + current_user.previous_usernames.append(current_user.username) + current_user.username = new_name + await session.commit() + return None diff --git a/osu_lazer_api.code-workspace b/osu_lazer_api.code-workspace index 48d2b7a..c363389 100644 --- a/osu_lazer_api.code-workspace +++ b/osu_lazer_api.code-workspace @@ -7,5 +7,7 @@ "path": "packages/msgpack_lazer_api" } ], - "settings": {} + "settings": { + "python.analysis.typeCheckingMode": "off" + } } \ No newline at end of file