diff --git a/app/api/v1/tryon.py b/app/api/v1/tryon.py index 6ecde4c..c9fa72e 100644 --- a/app/api/v1/tryon.py +++ b/app/api/v1/tryon.py @@ -91,6 +91,28 @@ async def get_tryon_histories( return StandardResponse(code=200, message="试穿历史获取成功", data=[TryonHistoryModel.model_validate(history) for history in tryon_histories]) +@router.delete("/history/{history_id}", tags=["tryon"]) +async def delete_tryon_history( + history_id: int, + db: AsyncSession = Depends(deps.get_db), + current_user: User = Depends(get_current_user) +): + """ + 删除试穿历史 + """ + history = await db.execute(select(TryonHistory).where(TryonHistory.id == history_id)) + tryon_history = history.scalar_one_or_none() + if not tryon_history: + raise BusinessError(code=404, message="试穿历史不存在") + if tryon_history.user_id != current_user.id: + raise BusinessError(code=403, message="无权限删除试穿历史") + + await db.delete(tryon_history) + await db.commit() + + return StandardResponse(code=200, message="试穿历史删除成功") + + @router.get("/history/{history_id}", tags=["tryon"]) async def get_tryon_history( history_id: int,