o
    ȟ1i	                     @   s   d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	m
Z
 G dd deZG dd deZG d	d
 d
eZG dd deZG dd deZG dd deZG dd deZG dd deZdS )    )date)OptionalUnion)
UploadFile)	BaseModel
ConfigDictEmailStrc                   @   s  e Zd ZU dZee ed< eed< dZee ed< eed< 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< 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S )$ParticipantBaseSchemaN	parent_id
first_namemiddle_name	last_namedobaddressmobile_number	post_codelocal_authoritygenderemailemergency_contact_nameemergency_contact_numbermedical_conditions	ethnicitycare_experienceage_above_threewac_receiptname_of_institutionhow_did_you_knowadditional_needs%additional_needs_apply_to_participantin_careis_participated_in_wacphotography_consentFis_agree_terms_conditionsreceive_emailsparticipant_code_of_conductalternative_contact_numberalternative_contact_emailg        wallet_amount	is_active)(__name__
__module____qualname__r
   r   int__annotations__strr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   boolr$   r%   r&   r'   r(   floatr)    r2   r2   /app/schema/participant.pyr	      sB   
 r	   c                   @      e Zd ZdS )AddParticipantSchemaNr*   r+   r,   r2   r2   r2   r3   r5   *       r5   c                   @   s   e Zd ZU eed< dS )ParticipantUpdateSchemaidN)r*   r+   r,   r-   r.   r2   r2   r2   r3   r8   .   s   
 r8   c                   @   s@   e Zd ZU eed< eed< eed< eed< eed< eddZdS )	ParentSchema	full_namer   r   sur_namer9   Tfrom_attributesN)r*   r+   r,   r/   r.   r-   r   model_configr2   r2   r2   r3   r:   2   s   
 r:   c                   @   sX   e Zd ZU eed< ee ed< eedf ed< eedf ed< ee ed< e	ddZ
dS )	ParticipantResponseSchemar9   ageNprofile_imageprofile_image_urlparentTr=   )r*   r+   r,   r-   r.   r   r   r/   r:   r   r?   r2   r2   r2   r3   r@   ;   s   
 r@   c                   @   s   e Zd ZU eed< eed< dS )ParticipantProfileSchemaparticipant_idimageN)r*   r+   r,   r-   r.   r   r2   r2   r2   r3   rE   E   s   
 rE   c                   @   r4   )ParticipantProfileUpdateSchemaNr6   r2   r2   r2   r3   rH   J   r7   rH   c                   @   s@   e Zd ZU eed< eedf ed< eedf ed< eddZdS ) ParticipantProfileResponseSchemar9   NrB   rC   Tr=   )	r*   r+   r,   r-   r.   r   r/   r   r?   r2   r2   r2   r3   rI   M   s
   
 rI   N)datetimer   typingr   r   fastapir   pydanticr   r   r   r	   r5   r8   r:   r@   rE   rH   rI   r2   r2   r2   r3   <module>   s    "	
