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


class IntegratedMarketingCreated(CustomModel):
    # integrated_id : int
    activity_name : str
    budget_allocated : float
    objective : str
    measurment : str
    target_shopper_journey : str
    marketing_budget : Optional[float] = None
    # estimated_budget : float
    actions : str
    rational : Optional[str] = None
    group_id : int
    
    
class IntegratedMarketingResponse(IntegratedMarketingCreated):
    integrated_id : int
    estimated_budget : float
    
class IntegratedMarketingUpdate(CustomModel):
    integrated_id : Optional[int] = None
    activity_name : Optional[str] = None
    budget_allocated : float
    objective : Optional[str] = None
    measurment : Optional[str] = None
    target_shopper_journey : Optional[str] = None
    marketing_budget : float
    actions : Optional[str] = None
    rational : Optional[str] = None
    group_id : Optional[int] = None
    
    
# class Create2Fields(CustomModel):
#         marketing_budget : float
#         rational : str
#         group_id : int
        
class Get2Fields(CustomModel):
    integrated_id : int
    marketing_budget : float
    rational : str
    group_id : int
        
# class Update2Fields(CustomModel):
#     marketing_budget : Optional[float] = None
#     rational : Optional[str] = None
#     group_id : Optional[int] = None