
    iD                         d dl mZmZ d dlmZmZ d dlmZ  G d de      Z G d de      Z G d d	e      Z	 G d
 de      Z
 G d de      Z G d de      Z G d de      Z G d de      Zy)    )	BaseModelField)ListOptional)datetimec                       e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   dZee   ed	<   dZee   ed
<   dZee   ed<   dZee   ed<   dZee   ed<   y)CompetitorCategoryAnalysisNcompetitor_category_idN/Areference_competitorr   number_of_categories_stockedkey_categories_stockedstocking_observationscompetitor_others_remarkresearch_methodologyshopping_behaviorconsumer_others_remarkgroup_id)__name__
__module____qualname__r
   r   int__annotations__r   strr   r   r   r   r   r   r   r        E/var/www/html/retail-simulation-api/app/api/module_4_report/schema.pyr	   r	      s    ,0HSM0*/(3-/23 (3-3,1HSM1+08C=0.3hsm3*/(3-/',x},,1HSM1"Hhsm"r   r	   c                   r    e Zd ZU dZee   ed<   dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   y)PreSelectedCategoryNpre_idr   	low_valuemedium_value
high_valuer   )r   r   r   r    r   r   r   r!   r"   r#   r   r   r   r   r   r      sH     FHSM  Ix} "#L(3-# !J!"Hhsm"r   r   c                   r    e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   y)StoreFormatNstore_idr   
store_namestore_format_typemerchandiser   )r   r   r   r&   r   r   r   r'   r   r(   r)   r   r   r   r   r%   r%      sI    "Hhsm" %J%',x},!&K#&"Hhsm"r   r%   c                       e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   dZee   ed	<   y)
CategoryRoleManagementNcategory_role_idr   category_namecategory_role        sales_contributionmargin_contributionr   )r   r   r   r,   r   r   r   r-   r   r.   r0   floatr1   r   r   r   r   r+   r+   %   sY    &*hsm*#(M8C=(#(M8C=(*--+.%."Hhsm"r   r+   c                   r    e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   y)	GrossMarginContributionNgross_idr/   contribution_to_total_salescontribution_to_gross_marginr   	rationaler   )r   r   r   r5   r   r   r   r6   r2   r7   r8   r   r   r   r   r   r4   r4   /   sJ    "Hhsm"36%647 (5/7$Ix}$"Hhsm"r   r4   c                   r    e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   y)"MarginAndSalesContributionAnalysisN	margin_idr   5which_category_do_you_think_contributes_more_to_sales=which_category_do_you_think_contributes_more_to_gross_margins1which_category_do_you_think_represents_your_storer   )r   r   r   r;   r   r   r   r<   r   r=   r>   r   r   r   r   r:   r:   7   sK    #Ix}#KP98C=PSXA8C=XGL5x}L"Hhsm"r   r:   c                      e Zd ZU dZee   ed<   dZee   ed<   dZ	ee   ed<   dZ
ee   ed<   dZee   ed<   dZee   ed<   dZee   ed	<   dZee   ed
<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   dZee   ed<   y)SummaryN
summary_idr   store_submissionsstore_summariselocation_submissionslocation_summarisenetwork_submissionsnetwork_summarisecategory_submissionscategory_summarisepromotions_submissionspromotions_summarisemarketing_submissionsmarketing_summariseservice_submissionsservice_summarisebackend_submissionsbackend_summarisemetrics_submissionsmetrics_summariser   )r   r   r   rA   r   r   r   rB   r   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   r   r   r   r   r@   r@   @   s+    $J$',x},%*OXc]**/(3-/(--).#.',x},*/(3-/(--,1HSM1*/(3-/+08C=0).#.).#.',x},).#.',x},).#.',x},"Hhsm"r   r@   c                       e Zd ZU eed<   eed<   eed<   ee   ed<    e	e
      Zee   ed<   ee   ed<   eed<   eed	<   eed
<   y)Module4ReportPreviewr   competitor_analysispre_selected_categoriesstore_formats)default_factorycategory_role_managementgross_margin_contributionsmargin_sales_analysissummarylast_updatedN)r   r   r   r   r   r	   r   r   r%   r   listrZ   r+   r4   r:   r@   r   r   r   r   rU   rU   W   sS    M3300$$=BSW=Xd#9:X $%< ====r   rU   N)pydanticr   r   typingr   r   r   r	   r   r%   r+   r4   r:   r@   rU   r   r   r   <module>rb      sn    % ! 
# 
##) ##) ##Y ##i ## ##i #.9 r   