from fastapi import APIRouter import backend_fastapi.schemas as schemas from backend_fastapi.repositories import add_role, add_user, get_role_all, update_role, delete_role from typing import List router = APIRouter() @router.post("/role") async def create_role(role: schemas.RoleCreate) -> schemas.Role: return await add_role(role) @router.get("/role") async def get_role() -> List[schemas.Role]: return await get_role_all() @router.patch("/role") async def change_role(role: schemas.Role, id: int) -> None: return await update_role(role, id) @router.delete("/role") async def remove_role(id: int) -> schemas.Role: return await delete_role(id) @router.post("/user") async def create_user(user: schemas.UserCreate) -> schemas.User: import hashlib user.hashed_password = hashlib.sha256(user.hashed_password.encode('utf-8')).hexdigest() return await add_user(user)