56 lines
1.3 KiB
Python
56 lines
1.3 KiB
Python
from pydantic import BaseModel
|
|
from typing import Optional, List
|
|
from datetime import datetime
|
|
from uuid import UUID
|
|
|
|
|
|
class CompanyListResponse(BaseModel):
|
|
"""Response model for company list endpoint"""
|
|
uu_id: UUID
|
|
company_name: str
|
|
company_code: str
|
|
company_email: str
|
|
company_phone: str
|
|
company_address: str
|
|
created_at: datetime
|
|
updated_at: Optional[datetime]
|
|
deleted: bool = False
|
|
|
|
|
|
class CompanyDepartmentListResponse(BaseModel):
|
|
"""Response model for company department list endpoint"""
|
|
uu_id: UUID
|
|
department_name: str
|
|
department_code: str
|
|
company_id: int
|
|
company_uu_id: str
|
|
created_at: datetime
|
|
updated_at: Optional[datetime]
|
|
deleted: bool = False
|
|
|
|
|
|
class CompanyDutyListResponse(BaseModel):
|
|
"""Response model for company duty list endpoint"""
|
|
uu_id: UUID
|
|
duty_name: str
|
|
duty_code: str
|
|
department_id: int
|
|
department_uu_id: str
|
|
created_at: datetime
|
|
updated_at: Optional[datetime]
|
|
deleted: bool = False
|
|
|
|
|
|
class CompanyEmployeeListResponse(BaseModel):
|
|
"""Response model for company employee list endpoint"""
|
|
uu_id: UUID
|
|
employee_id: int
|
|
employee_uu_id: str
|
|
company_id: int
|
|
company_uu_id: str
|
|
duty_id: int
|
|
duty_uu_id: str
|
|
created_at: datetime
|
|
updated_at: Optional[datetime]
|
|
deleted: bool = False
|