From 21ff42653c94febaa702389ef8b65fa1e81cc7ff Mon Sep 17 00:00:00 2001 From: wwwwwwwww <526125649@qq.com> Date: Tue, 14 Jul 2026 11:18:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BF=AE=E6=94=B9=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- video-gen-api/app/api/v1/auth.py | 12 ++++++++++++ video-gen-api/app/schemas/auth.py | 4 ++++ 2 files changed, 16 insertions(+) diff --git a/video-gen-api/app/api/v1/auth.py b/video-gen-api/app/api/v1/auth.py index 0a16d8cb..cbee25c5 100644 --- a/video-gen-api/app/api/v1/auth.py +++ b/video-gen-api/app/api/v1/auth.py @@ -15,6 +15,7 @@ from app.models.system_config import SystemConfig from app.models.user import User from app.schemas.auth import ( ChangePasswordRequest, + ChangeUsernameRequest, LoginRequest, RegisterRequest, SetPasswordRequest, @@ -323,6 +324,17 @@ async def change_password( return {"message": "密码修改成功"} +@router.post("/change-username") +async def change_username( + req: ChangeUsernameRequest, + current_user: User = Depends(get_current_user), + db: AsyncSession = Depends(get_db), +): + current_user.username = req.new_username.strip() + await db.flush() + return {"message": "用户名修改成功"} + + @router.get("/site-info") async def get_site_info(db: AsyncSession = Depends(get_db)): """Public endpoint returning site name, logo, agreement and copyright info.""" diff --git a/video-gen-api/app/schemas/auth.py b/video-gen-api/app/schemas/auth.py index 1187765c..e1e729b3 100644 --- a/video-gen-api/app/schemas/auth.py +++ b/video-gen-api/app/schemas/auth.py @@ -28,6 +28,10 @@ class ChangePasswordRequest(BaseModel): new_password: str = Field(..., min_length=6, description="新密码,至少6位") +class ChangeUsernameRequest(BaseModel): + new_username: str = Field(..., min_length=1, max_length=10, description="新用户名,1-10位") + + class TokenResponse(BaseModel): access_token: str token_type: str = "bearer"