add delete user endpoint

This commit is contained in:
IluaAir
2025-08-02 18:22:01 +03:00
parent 22ee887238
commit 0ab17f3a99
3 changed files with 14 additions and 1 deletions

View File

@@ -41,3 +41,9 @@ async def patch_user(
updated_user = await db.user.update_one(id=id, data=update_data)
await db.commit()
return User.model_validate(updated_user)
@router.delete("/{id}")
async def delete_user(db: sessionDep, id: int, _: AdminUser):
await UserService(db).delete_user(id)
return {"message": "User deleted successfully"}

View File

@@ -1,4 +1,4 @@
from sqlalchemy import select
from sqlalchemy import delete, select
from src.models import UsersORM
from src.repository.base import BaseRepo
@@ -12,3 +12,6 @@ class UsersRepo(BaseRepo):
result = await self.session.execute(query)
models = result.scalars().all()
return models
async def delete_one(self, id: int) -> None:
await self.session.execute(delete(self.model).where(self.model.id == id))

View File

@@ -26,3 +26,7 @@ class UserService(BaseService):
async def get_all_users(self) -> list[User]:
users = await self.session.user.get_all_users()
return [User.model_validate(user) for user in users]
async def delete_user(self, id: int) -> None:
await self.session.user.delete_one(id=id)
await self.session.commit()