from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
    PydanticBaseModel,
    PydanticBaseModelValidation,
    ListOptions,
)


class DepartmentsPydanticValidation:
    tr = {
        "department_code": "Department Kodu",
        "department_name": "Departman Adı",
        "department_description": "Departman Açıklaması",
        "company_uu_id": "Şirket UUID",
        "parent_department_uu_id": "Üst Departman UUID",
    }
    en = {
        "department_code": "Department Code",
        "department_name": "Department Name",
        "department_description": "Department Description",
        "company_uu_id": "Company UUID",
        "parent_department_uu_id": "Parent Department UUID",
    }

class DepartmentsPydantic(PydanticBaseModel, PydanticBaseModelValidation):

    department_code: Optional[str]
    department_name: Optional[str]
    department_description: Optional[str] = None
    company_uu_id: Optional[str] = None
    parent_department_uu_id: Optional[int] = None


# class UpdateDepartments(PydanticBaseModel):
#
#     department_code: Optional[str] = None
#     department_name: Optional[str] = None
#     department_description: Optional[str] = None
#     company_uu_id: Optional[str] = None
#     parent_department_uu_id: Optional[int] = None
