from typing import Optional
from pydantic import Field
from app.utils.schemas_utils import CustomModel

class CommercialEquipmentCreate(CustomModel):
    format_type: str
    type_of_equipment: str
    store_format_type: str
    number_of_units: int
    type_of_equipment:str
    cost_per_unit: float
    equipment_category: str
    remarks: str
    group_id: int

class CommercialEquipmentResponse(CustomModel):
    equipment_id: int | None = Field(default=None)
    group_id: int | None = Field(default=None)
    store_format_type: str | None = Field(default=None) 
    format_type: str | None = Field(default=None)
    type_of_equipment: str | None = Field(default=None)
    number_of_units: int | None = Field(default=None)
    cost_per_unit: float | None = Field(default=None)
    equipment_category:  str | None = Field(default=None)
    total: float | None = Field(default=None)
    remarks: str | None = Field(default=None)
    
class CommercialEquipmentUpdate(CustomModel):
    equipment_id: Optional[int] = None
    group_id: Optional[int] = None
    store_format_type: Optional[str] = None
    format_type: Optional[str] = None
    type_of_equipment: Optional[str] = None
    number_of_units: Optional[int] = None
    cost_per_unit: Optional[float] = None
    equipment_category: Optional[str] = None
    # total: Optional[float] = None
    remarks: Optional[str] = None