24 lines
		
	
	
		
			675 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			675 B
		
	
	
	
		
			Python
		
	
	
	
	
	
from uuid import UUID
 | 
						|
from datetime import datetime
 | 
						|
from pydantic import BaseModel, Field
 | 
						|
from typing import List, Optional
 | 
						|
 | 
						|
 | 
						|
class UserPrivilege(BaseModel):
 | 
						|
    id: int
 | 
						|
    code: str
 | 
						|
    name: str
 | 
						|
    description: str
 | 
						|
    is_active: bool
 | 
						|
    created_at: datetime
 | 
						|
 | 
						|
 | 
						|
class UserRoleData(BaseModel):
 | 
						|
    user_id: UUID = Field(..., description="ID пользователя")
 | 
						|
    user_privilege: Optional[UserPrivilege] = Field(None, description="Привилегия пользователя")
 | 
						|
    user_permissions: List[str] = Field(default_factory=list, description="Список кодов прав")
 | 
						|
 | 
						|
class UserRoleResponse(BaseModel):
 | 
						|
    status: str
 | 
						|
    data: UserRoleData
 |