update
This commit is contained in:
parent
b62b4dfb2e
commit
02c8d7f8ba
@ -80,3 +80,18 @@ async def delete_person_image(
|
||||
await person_image_service.delete_person_image(db=db, image_id=image_id)
|
||||
|
||||
return StandardResponse(code=200, message="删除人物形象成功")
|
||||
|
||||
|
||||
# 设置默认人物形象
|
||||
@router.put("/{image_id}/set_default", tags=["person_images"])
|
||||
async def set_default_person_image(
|
||||
*,
|
||||
db: AsyncSession = Depends(deps.get_db),
|
||||
current_user: User = Depends(deps.get_current_user),
|
||||
image_id: int
|
||||
):
|
||||
"""设置默认人物形象"""
|
||||
image = await person_image_service.set_default_person_image(db=db, image_id=image_id, user_id=current_user.id)
|
||||
if not image:
|
||||
return BusinessError(code=400, message="设置默认人物形象失败")
|
||||
return StandardResponse(code=200, message="设置默认人物形象成功", data=PersonImage.model_validate(image))
|
||||
@ -16,7 +16,7 @@ class UserCreate(UserBase):
|
||||
"""创建用户请求模型"""
|
||||
pass
|
||||
|
||||
class UserUpdate(UserBase):
|
||||
class UserUpdate(BaseModel):
|
||||
"""更新用户请求模型"""
|
||||
avatar: Optional[str] = None
|
||||
nickname: Optional[str] = None
|
||||
|
||||
@ -92,3 +92,15 @@ async def get_default_image(db: AsyncSession, user_id: int):
|
||||
.filter(PersonImage.user_id == user_id, PersonImage.is_default == True)
|
||||
)
|
||||
return result.scalars().first()
|
||||
|
||||
async def set_default_person_image(db: AsyncSession, image_id: int, user_id: int):
|
||||
"""设置默认人物形象"""
|
||||
db_image = await get_person_image(db, image_id)
|
||||
if not db_image:
|
||||
return None
|
||||
# 先重置用户所有形象为非默认
|
||||
await reset_default_images(db, user_id)
|
||||
db_image.is_default = True
|
||||
await db.commit()
|
||||
await db.refresh(db_image)
|
||||
return db_image
|
||||
Loading…
Reference in New Issue
Block a user