o
    ȟ1i	                     @   s  d dl mZm Z  d dlmZmZ d dlmZ d dlmZm	Z	m
Z
 d dl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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datetime)AnyUnion)
UploadFile)	BaseModel
ConfigDictField)ListOptionalc                   @   sf   e Zd ZU eed< eed< dZeedf ed< eed< dZeedf ed< e	ed< eed< eed	< dS )
EventBaseSchemanameevent_start_dateNevent_end_dateevent_start_timeevent_end_timepricedescriptionlocation)
__name__
__module____qualname__str__annotations__r   r   r   r   float r   r   /app/schema/event.pyr   
   s   
 r   c                   @   s.   e Zd ZU ee ed< ee ed< eed< dS )EventCreateSchemaparticipant_namesparticipant_imagesimageN)r   r   r   r
   r   r   r   r   r   r   r   r      s   
 r   c                   @   sH   e Zd ZU eed< eddZeed< dZe	e
 ed< dZe	e ed< dS )EventUpdateSchemaidN)defaultr    r   r   )r   r   r   intr   r	   r    r   r   r
   r   r   r   r   r   r   r!      s
   
 r!   c                   @   sL   e Zd ZU eed< edef ed< eedf ed< g Zeed< e	ddZ
dS )EventResponseSchemar"   N	image_urlr    participantsTfrom_attributes)r   r   r   r$   r   r   r   r'   r
   r   model_configr   r   r   r   r%   #   s   
 r%   c                   @   s   e Zd ZU eed< eed< dS )EventCartBaseSchemaevent_idno_of_participantsNr   r   r   r$   r   r   r   r   r   r+   +   s   
 r+   c                   @   s   e Zd ZdS )EventCartCreateSchemaN)r   r   r   r   r   r   r   r/   1   s    r/   c                   @   s   e Zd ZU eed< dS )EventCartUpdateSchemar"   Nr.   r   r   r   r   r0   4   s   
 r0   c                   @   s    e Zd ZU eed< eddZdS )EventCartResponseSchemar"   Tr(   N)r   r   r   r$   r   r   r*   r   r   r   r   r1   7   s   
 r1   c                   @   s6   e Zd ZU dZee ed< dZeed< dZ	eed< dS )EventPaymentSessionRequestNdiscount_coupon_codeF
use_walletcharity)
r   r   r   r3   r   r   r   r4   boolr5   r   r   r   r   r2   <   s   
 r2   c                   @   s   e Zd ZU eed< dZeed< eed< eed< eed< eed< eed< eed	< dZ	eed
< e
ed< dZedB ed< dZedB ed< dZedB ed< dZedB ed< dZeed< dS )EventPurchaseDetailResponsetransaction_id transaction_batch_idr,   
event_name
event_dateparticipants_counttotal_amountpayment_methodpayment_statuspayment_dateg        Nused_wallet_amountdiscount_amountcoupon_discounted_amountdiscount_coupon_idFis_payment_completed)r   r   r   r   r   r:   r$   r   r   r@   r   rB   rC   rD   rE   rF   r6   r   r   r   r   r7   B   s    
 r7   c                   @   s   e Zd ZU eed< eed< eed< eed< eed< eed< eed< eed< eed	< eed
< eed< eed< dZ	edB ed< dZ
edB ed< eddZdS )AdminEventBookingSchemar"   r:   
first_name	last_nameemailr,   r;   r<   r=   r>   r?   rA   NrB   rC   Tr(   )r   r   r   r$   r   r   r   r   r   rB   rC   r   r*   r   r   r   r   rG   S   s    
 rG   c                   @   s   e Zd ZU ee ed< dS )AdminEventBookingResponsedataN)r   r   r   r
   rG   r   r   r   r   r   rK   e   s   
 rK   N)r   r   typingr   r   fastapir   pydanticr   r   r	   r
   r   r   r   r!   r%   r+   r/   r0   r1   r2   r7   rG   rK   r   r   r   r   <module>   s"    