2025-12-04 10:04:21 +08:00

31 lines
672 B
Python

from typing import List, Optional
from pydantic import Field
from app.models.domain.roles import Role
from app.models.schemas.rwschema import RWSchema
class RoleBase(RWSchema):
name: str = Field(..., min_length=2, max_length=64)
description: Optional[str] = ""
permissions: List[str] = Field(default_factory=list)
class RoleInCreate(RoleBase):
pass
class RoleInUpdate(RWSchema):
name: Optional[str] = Field(default=None, min_length=2, max_length=64)
description: Optional[str] = None
permissions: Optional[List[str]] = None
class RoleInResponse(RWSchema):
role: Role
class ListOfRolesInResponse(RWSchema):
roles: List[Role]