freeleaps-service-hub/apps/authentication/webapi/routes/role/delete_role.py
2025-07-21 10:53:37 +08:00

23 lines
658 B
Python

from fastapi import APIRouter
from pydantic import BaseModel
from backend.services.permission.role_service import RoleService
router = APIRouter()
role_service = RoleService()
class DeleteRoleRequest(BaseModel):
role_id: str
class DeleteRoleResponse(BaseModel):
success: bool
@router.post(
"/delete",
response_model=DeleteRoleResponse,
operation_id="delete-role",
summary="Delete Role",
description="Delete a role after checking if it is referenced by any user."
)
async def delete_role(req: DeleteRoleRequest) -> DeleteRoleResponse:
await role_service.delete_role(req.role_id)
return DeleteRoleResponse(success=True)