minors corrections users service

main
Anaz 2025-01-11 10:19:28 +04:00
parent f0ae47dd20
commit a7b1d5d1a8
1 changed files with 16 additions and 4 deletions

View File

@ -1,4 +1,4 @@
from pydantic import BaseModel, EmailStr
from pydantic import BaseModel, EmailStr, model_validator
from datetime import datetime
from typing import List, Optional
@ -13,7 +13,7 @@ class RoleResponse(RoleBase):
permissions: List[str]
class Config:
orm_mode = True
from_attributes = True
class UserBase(BaseModel):
email: EmailStr
@ -30,12 +30,24 @@ class UserResponse(BaseModel):
email: EmailStr
full_name: str
phone: str
date_of_birth: str
date_of_birth: datetime
organization: Optional[str] = None
role: RoleResponse
is_banned: bool
is_deleted: bool
# Validation au niveau du modèle
@model_validator(mode="before")
def convert_role_to_dict(cls, values):
role = values.get("role")
if isinstance(role, str):
values["role"] = {"id": 0, "name": role, "permissions": []}
return values
class Config:
from_attributes = True
class Role(BaseModel):
id: int
name: str
@ -58,7 +70,7 @@ class PermissionResponse(PermissionBase):
id: int
class Config:
orm_mode = True
from_attributes = True
# Demande de besoin (NeedRequest)
class NeedRequestBase(BaseModel):