o
    xh*                     @   s  d dl mZ d dlZd dlmZ dd Zdd Zdd	 Zd
d Zdd Z	G dd dZ
G dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG d d! d!ejZG d"d# d#ejZG d$d% d%ejZG d&d' d'ejZG d(d) d)ejZG d*d+ d+ejZG d,d- d-ejZG d.d/ d/ejZG d0d1 d1ejZG d2d3 d3ejZG d4d5 d5ejZG d6d7 d7ejZG d8d9 d9ejZ G d:d; d;ejZ!G d<d= d=ejZ"G d>d? d?ejZ#G d@dA dAejZ$G dBdC dCejZ%G dDdE dEejZ&G dFdG dGejZ'G dHdI dIejZ(G dJdK dKejZ)G dLdM dMejZ*G dNdO dOejZ+G dPdQ dQejZ,G dRdS dSejZ-G dTdU dUejZ.G dVdW dWejZ/G dXdY dYejZ0G dZd[ d[ejZ1G d\d] d]ejZ2G d^d_ d_ejZ3G d`da daejZ4G dbdc dcejZ5G ddde deejZ6G dfdg dgejZ7G dhdi diejZ8G djdk dkejZ9G dldm dmejZ:G dndo doejZ;G dpdq dqejZ<G drds dsejZ=G dtdu duejZ>G dvdw dwejZ?G dxdy dyejZ@G dzd{ d{ejZAG d|d} d}ejZBG d~d dejZCG dd dejZDG dd dejZEG dd dejZFG dd dejZGG dd dejZHG dd dejZIG dd dejZJG dd dejZKG dd dejZLG dd dejZMG dd dejZNG dd dejZOG dd dejZPG dd dejZQG dd dejZRG dd dejZSG dd dejZTG dd dejZUG dd dejZVG dd dejZWG dd dejZXG dd dejZYG dd dejZZG dd dejZ[G dd dejZ\G dd dejZ]G dd dejZ^G dd dejZ_G dd dejZ`G dd dejZaG dd dejZbG dd dejZcG dd dejZdG ddÄ dejZeG ddń dejZfG ddǄ dejZgG ddɄ dejZhG dd˄ dejZidS )    )modelsN)
MEDIA_ROOTc                 C   J   | d}tjdt| jjj d t| jj d |d d |d  S N.zitems/item_z/sku_z/images/r      splitospathjoinstrskuIditemIdidinstancefilenameext r   e/Users/waleedhassanin/Documents/GitHub/snow_flake_back_end_deploy/snow_flake_api/snow_flake/models.pysku_picture_path      

r   c                 C   r   r   r   r   r   r   r   sku_video_path   r   r   c                 C   2   | d}tjdt| j |d d |d  S )Nr   zbrands/brand_r   r   r	   r
   r   r   r   r   r   r   r   r   brand_picture_path   s   
(r   c                 C   r   )Nr   zappcontents/appcontent_r   r   r   r   r   r   r   appContent_picture_path#   s   
r   c                 C   s4   | d}tjdt| jj |d d |d  S )Nr   zsuppliers/supplier_r   r   )r	   r
   r   r   r   
supplierIdr   r   r   r   r   supplier_file_document_path*   s   
 r   c                   @   s   e Zd Zdd ZdS )DashboardDatac                 C   sR   || _ || _|| _|| _|| _|| _|| _|| _|	| _|
| _	|| _
|| _|| _d S N)
countItemssumPaymentTotalsumPaymentPaidsumPaymentChangecountTransactionInsumTransactionInTotalsumTransactionInPaidcountTransactionOutsumTransactionOutTotalsumTransactionOutPaidcurrentBalanceTotalcurrentBalancePaidcurrentSumTaxes)selfr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r   r   r   __init__3   s   
zDashboardData.__init__N)__name__
__module____qualname__r0   r   r   r   r   r    2   s    r    c                   @   s   e Zd ZejddZejddZejddZejddZ	ejddZ
ejddZejddZejddZejddZejddZe Ze ZdS )SettingsFdefault
   N)r1   r2   r3   r   BooleanFieldZisMaintenanceClientZisMaintenanceSupplierZ#isEnableFreeSubscriptionForSupplierIntegerFieldZitemSKULimitZitemSKUOptionLimitZitemFeatureBulletLimitZmaxCartQuantityZisEnableStoreBankCardsZisShowBrandsZisInitialSettingsDoneDateTimeFieldcreatedDateupdatedDater   r   r   r   r4   T   s    r4   c                   @   sX   e Zd ZejddZejdddZejdddZej	ddZ
e Ze Zdd ZdS )	Language r5   r7   r6   
max_lengthFc                 C   
   t | jS r!   r   namer/   r   r   r   __str__j      
zLanguage.__str__N)r1   r2   r3   r   	TextFieldrC   	CharFieldZcountryCodeZlanguageCoder8   	isEnabledr:   r;   r<   rE   r   r   r   r   r=   b   s    r=   c                   @   s>   e Zd ZejdddZejddZe Z	e Z
dd ZdS )
SocialLinkr>   d   r?   r5   c                 C   rA   r!   rB   rD   r   r   r   rE   t   rF   zSocialLink.__str__N)r1   r2   r3   r   rH   rC   rG   urlr:   r;   r<   rE   r   r   r   r   rJ   n   s    rJ   c                   @   s:   e Zd Ze Ze ZejddZej	e
ejddZdS )SocialLinkTokenr   r5   Zsociallink_sociallinktoken	on_deleterelated_nameN)r1   r2   r3   r   rG   tokenZ	longTokenr9   ZtimeInSeconds
ForeignKeyrJ   CASCADEZsocialLinkIdr   r   r   r   rM   w   s    
rM   c                   @   *   e Zd ZejdddZe Ze ZdS )RegisterTyper>   rK   r?   N	r1   r2   r3   r   rH   keyNamer:   r;   r<   r   r   r   r   rU          rU   c                   @   <   e Zd ZejddZejeejddZ	eje
ejddZdS )RegisterTypeLanguager>   r5   Z!registerType_registerTypelanguagerN   Zlanguage_registerTypelanguageN)r1   r2   r3   r   rG   rC   rR   rU   rS   registerTypeIdr=   
languageIdr   r   r   r   rZ          
rZ   c                   @   rT   )	OrderFromr>   rK   r?   NrV   r   r   r   r   r^      rX   r^   c                   @   s>   e Zd ZejdddZejeejddZ	eje
ejddZdS )OrderFromLanguager>   rK   r?   Zorderfrom_orderfromlanguagerN   Zlanguage_orderfromlanguageN)r1   r2   r3   r   rH   rC   rR   r^   rS   orderFromIdr=   r\   r   r   r   r   r_      s    
r_   c                   @   rT   )ReturnStatusr>   rK   r?   NrV   r   r   r   r   ra      rX   ra   c                   @   rY   )ReturnStatusLanguager>   r5   Z!returnstatus_returnstatuslanguagerN   Zlanguage_returnstatuslanguageN)r1   r2   r3   r   rG   rC   rR   ra   rS   returnStatusIdr=   r\   r   r   r   r   rb      r]   rb   c                   @   rT   )TrackStatusr>   rK   r?   NrV   r   r   r   r   rd      rX   rd   c                   @   rY   )TrackStatusLanguager>   r5   Ztrackstatus_trackstatuslanguagerN   Zlanguage_tracktatuslanguageN)r1   r2   r3   r   rG   rC   rR   rd   rS   trackStatusIdr=   r\   r   r   r   r   re      r]   re   c                   @   s   e Zd ZejddZejddZejddZejddZejddZ	ejddZ
ejddZejddZejddZe Ze Zdd ZdS )SKUCostr   r5   Fc                 C   rA   r!   r   r   rD   r   r   r   rE      rF   zSKUCost.__str__N)r1   r2   r3   r   
FloatFieldserviceCostZhandlingCostZpackingCosttaxCostZ
cancelCost
returnCosttransactionFixedCosttransactionFeeCostr8   rI   r:   r;   r<   rE   r   r   r   r   rg      s    rg   c                   @   s6   e Zd ZejdddZejddZe Z	e Z
dS )PaymentMethodr>   rK   r?   Fr5   N)r1   r2   r3   r   rH   rW   r8   rI   r:   r;   r<   r   r   r   r   ro      s
    ro   c                   @   rY   )PaymentMethodLanguager>   r5   Z#paymentmethod_paymentmethodlanguagerN   Zlanguage_paymentmethodlanguageN)r1   r2   r3   r   rG   rC   rR   ro   rS   paymentMethodIdr=   r\   r   r   r   r   rp          
rp   c                   @   rT   )TransactionTyper>   rK   r?   NrV   r   r   r   r   rs      rX   rs   c                   @   rY   )TransactionTypeLanguager>   r5   Z'transactiontype_transactiontypelanguagerN   Z language_transactiontypelanguageN)r1   r2   r3   r   rG   rC   rR   rs   rS   transactionTypeIdr=   r\   r   r   r   r   rt      rr   rt   c                       b   e Zd ZejddZejddZeje	ddddZ
e Ze Z fddZ fd	d
Z  ZS )
AppContentr>   r5   FTz/default/slider_holder.jpg	upload_tonullblankr6   c                    ^   | j d u r"| j}d | _tt| j|i | || _d|v r"|d tt| j|i | d S Nforce_insert)pkimagesuperrw   savepopr/   argskwargsZsaved_image	__class__r   r   r        

zAppContent.savec                    6   | j rt| j dr| j jdkr| j   t   d S )NrL   z /media/default/slider_holder.jpgr   hasattrrL   deleter   r/   r   r   r   r   r   r        
zAppContent.delete)r1   r2   r3   r   rG   rW   r8   ZisImage
ImageFieldr   r   r:   r;   r<   r   r   __classcell__r   r   r   r   rw          rw   c                   @   rY   )AppContentLanguager>   r5   Zappcontent_appcontentlanguagerN   Zlanguage_appcontentlanguageN)r1   r2   r3   r   rG   descriptionrR   rw   rS   ZappContentIdr=   r\   r   r   r   r   r     r]   r   c                   @   s8   e Zd ZejdddZejdddZe Ze Z	dS )EligibleTyper>   rK   r?   N)
r1   r2   r3   r   rH   rW   Z	keyOptionr:   r;   r<   r   r   r   r   r      s
    r   c                   @   rY   )EligibleTypeLanguager>   r5   Z!eligibletype_eligibletypelanguagerN   Zlanguage_eligibletypelanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   eligibleTypeIdr=   r\   r   r   r   r   r   &  r]   r   c                   @   rT   )SubscriptionStatusr>   rK   r?   NrV   r   r   r   r   r   2  rX   r   c                   @   rY   )SubscriptionStatusLanguager>   r5   Z-subscriptionstatus_subscriptionstatuslanguagerN   Z#language_subscriptionstatuslanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   subscriptionStatusIdr=   r\   r   r   r   r   r   7  rr   r   c                   @   rT   )SubscriptionOptionr>   rK   r?   NrV   r   r   r   r   r   E  rX   r   c                   @   rY   )SubscriptionOptionLanguager>   r5   Z-subscriptionoption_subscriptionstatuslanguagerN   Z#language_subscriptionoptionlanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   subscriptionOptionIdr=   r\   r   r   r   r   r   J  rr   r   c                   @   sv   e Zd ZejddZejddZejddZejddZej	ddZ
ejddZe Ze ZejeejddZdS )SubscriptionTypeFr5   r   Z#subscriptionoption_subscriptiontyperN   N)r1   r2   r3   r   ri   ZcostPerMonthpricediscountrj   r9   ZdurationInMonthr8   rI   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   X  s    
r   c                   @   rY   )SubscriptionTypeLanguager>   r5   Z)subscriptiontype_subscriptiontypelanguagerN   Z!language_subscriptiontypelanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   subscriptionTypeIdr=   r\   r   r   r   r   r   g  rr   r   c                   @   s<   e Zd ZejddZejddZe Z	e Z
dd ZdS )ShippingMethodr>   r5   Fc                 C   rA   r!   rh   rD   r   r   r   rE   {  rF   zShippingMethod.__str__N)r1   r2   r3   r   rG   rW   r8   rI   r:   r;   r<   rE   r   r   r   r   r   u  s    r   c                   @   rY   )ShippingMethodLanguager>   r5   Z%shippingmethod_shippingmethodlanguagerN   Zlanguage_shippingmethodlanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   shippingMethodIdr=   r\   r   r   r   r   r   ~      
r   c                   @   sb   e Zd ZejddZejddZejddZ	e
 Ze
 ZejddZejdejddddZd	S )

Departmentr>   r5   Fr   r/   Zdepartment_subdepartmentT)rO   rP   r{   rz   N)r1   r2   r3   r   rG   rW   r8   	isVisibler9   
totalViewsr:   r;   r<   ZisMainDepartmentrR   rS   departmentIdr   r   r   r   r     s    
r   c                   @   rY   )DepartmentLanguager>   r5   Zdepartment_departmentlanguagerN   Zlanguage_departmentlanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   r   r=   r\   r   r   r   r   r     r]   r   c                       rv   )Brandr>   r5   FT/default/holder.jpgrx   c                    r|   r}   )r   r   r   r   r   r   r   r   r   r   r     r   z
Brand.savec                    r   NrL   z/media/default/holder.jpgr   r   r   r   r   r     r   zBrand.delete)r1   r2   r3   r   rG   rW   r8   r   r   r   r   r:   r;   r<   r   r   r   r   r   r   r   r     r   r   c                   @   rY   )BrandLanguager>   r5   Zbrand_brandlanguagerN   Zlanguage_brandlanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   brandIdr=   r\   r   r   r   r   r     r   r   c                   @   sL   e Zd ZejddZejddZejddZejddZ	e
 Ze
 ZdS )CountryFr5   r>   N)r1   r2   r3   r   r8   isActiveZisMainBranchrG   ZdialCodecurrencyr:   r;   r<   r   r   r   r   r     s    r   c                   @   rY   )CountryLanguager>   r5   Zcountry_countrylanguagerN   Zlanguage_countrylanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   	countryIdr=   r\   r   r   r   r   r     r   r   c                   @   :   e Zd ZejddZe Ze Zej	e
ejddZdS )StateFr5   Zcountry_staterN   N)r1   r2   r3   r   r8   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r         
r   c                   @   rY   )StateLanguager>   r5   Zstate_statelanguagerN   Zlanguage_statelanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   stateIdr=   r\   r   r   r   r   r     rr   r   c                   @   r   )CityFr5   Z
state_cityrN   N)r1   r2   r3   r   r8   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r     r   r   c                   @   rY   )CityLanguager>   r5   Zcity_citylanguagerN   Zlanguage_citylanguageN)r1   r2   r3   r   rG   rC   rR   r   rS   cityIdr=   r\   r   r   r   r   r     rr   r   c                   @   s   e Zd ZejddZejddZejddddZejddZ	ejddddZ
e Ze Zejeejd	ddd
ZejeejddZdd ZdS )Clienti  r@   Tr>   rz   r{   r6   r5   2   r@   rz   r{   Zregistertype_clientrO   rP   rz   r{   Zlanguage_clientrN   c                 C   rA   r!   )r   	firstNamerD   r   r   r   rE   !  rF   zClient.__str__N)r1   r2   r3   r   rH   r   ZlastNamerG   emailphonepasswordr:   r;   r<   rR   rU   rS   r[   r=   selectedLanguageIdrE   r   r   r   r   r     s&    r   c                   @   s   e Zd ZejddZejddZejddZe Z	e Z
ejeejddZejeejddddZejeejddddZejeejd	dZd
d ZdS )ClientAddressBookr>   r5   Zcountry_clientaddressbookrN   Zstate_clientaddressbookTr   Zcity_clientaddressbookZclient_clientaddressbookc                 C   rA   r!   rh   rD   r   r   r   rE   @  rF   zClientAddressBook.__str__N)r1   r2   r3   r   rG   address1address2zipCoder:   r;   r<   rR   r   rS   r   r   r   r   r   r   clientIdrE   r   r   r   r   r   $  s6    r   c                   @   sf   e Zd ZejddZejddZejddZ	ejddZ
e Ze ZejeejddZdd	 Zd
S )ClientCreditCardr>   r5      r   r   Zclient_clientcreditcardrN   c                 C   rA   r!   rh   rD   r   r   r   rE   N  rF   zClientCreditCard.__str__N)r1   r2   r3   r   rG   holderrH   numberr9   
expireYearexpireMonthr:   r;   r<   rR   r   rS   r   rE   r   r   r   r   r   C  s    r   c                   @   s8   e Zd Ze Ze Zejeej	dddZ
dd ZdS )WalletTZclient_walletrO   primary_keyrP   c                 C   rA   r!   )r   r   rD   r   r   r   rE   Y  rF   zWallet.__str__N)r1   r2   r3   r   r:   r;   r<   OneToOneFieldr   rS   r   rE   r   r   r   r   r   R  s    
r   c                   @   sT   e Zd ZejddZe Ze Zej	e
ejddZej	eejddZdd ZdS )	Transactionr   r5   Ztransactiontype_transactionrN   Zwallet_transactionc                 C   rA   r!   rh   rD   r   r   r   rE   i  rF   zTransaction.__str__N)r1   r2   r3   r   ri   amountr:   r;   r<   rR   rs   rS   ru   r   ZwalletIdrE   r   r   r   r   r   \  s    r   c                   @   sv   e Zd ZejddZejddZejddddZe	 Z
e	 ZejddZejddZejeejddZd	d
 ZdS )Supplierr>   r5   r   Tr   FZlanguage_supplierrN   c                 C   rA   r!   rB   rD   r   r   r   rE   y  rF   zSupplier.__str__N)r1   r2   r3   r   rG   rC   r   rH   r   r:   r;   r<   r8   Z
isVerifiedZisFreeSubscriptionUsedrR   r=   rS   r   rE   r   r   r   r   r   m  s    r   c                   @   B   e Zd ZejddZe Ze Zej	e
ejddZdd ZdS )SupplierPhoner   r   Zsupplierphone_supplierrN   c                 C   rA   r!   rh   rD   r   r   r   rE     rF   zSupplierPhone.__str__N)r1   r2   r3   r   rH   r   r:   r;   r<   rR   r   rS   r   rE   r   r   r   r   r   |      r   c                   @   s^   e Zd ZejddZejddZe Ze Z	e
 Ze
 ZejeejddZdd ZdS )	SupplierCreditCard   r   r   Zsupplier_creditcardrN   c                 C   rA   r!   rh   rD   r   r   r   rE     rF   zSupplierCreditCard.__str__N)r1   r2   r3   r   rH   r   r   r9   r   r   r:   r;   r<   rR   r   rS   r   rE   r   r   r   r   r     s    r   c                       sr   e Zd ZejddZejddZejedddZ	e
 Ze
 ZejeejddZ fddZ fd	d
Z  ZS )SupplierDocumentr>   r5   T)ry   rz   r{   Zsupplierdocument_supplierrN   c                    r|   r}   )r   fileDocumentr   r   r   r   )r/   r   r   Zsaved_fileDocumentr   r   r   r     r   zSupplierDocument.savec                    sd   | j j}| j  t   td t| }tj	|r.t
|}t|dkr0t| d S d S d S )Nz/suppliers/supplier_r   )r   r   r   r   r   r   r   r
   r   existslistdirlenrmdir)r/   r   r   r   Z	childPathdirr   r   r   r     s   


zSupplierDocument.delete)r1   r2   r3   r   rG   fileNameZcontentType	FileFieldr   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r   r     s    r   c                   @      e Zd ZejddZejddZejddZe Z	e Z
e Ze ZejeejddZejeejddZejeejddZdS )Subscriptionr   r5   Zsupplier_subscriptionrN   Zsubscriptiontype_subscriptionZsubscriptionstatus_subscriptionN)r1   r2   r3   r   ri   r   r   rj   r:   	startDateendDater;   r<   rR   r   rS   r   r   r   r   r   r   r   r   r   r     *    
r   c                   @   s^   e Zd ZejddZejddZejddddZe	 Z
e	 ZejeejddZdd	 Zd
S )DeliveryManr>   r5   r   Tr   Zlanguage_deliveryrN   c                 C   rA   r!   rB   rD   r   r   r   rE     rF   zDeliveryMan.__str__N)r1   r2   r3   r   rG   rC   r   rH   r   r:   r;   r<   rR   r=   rS   r   rE   r   r   r   r   r     s    r   c                   @   r   )DeliveryManPhoner   r   Zdeliveryman_phonerN   c                 C   rA   r!   rh   rD   r   r   r   rE     rF   zDeliveryManPhone.__str__N)r1   r2   r3   r   rH   r   r:   r;   r<   rR   r   rS   ZdeliveryManIdrE   r   r   r   r   r     r   r   c                   @   s   e Zd ZejddZejddZejddZej	ddZ
ej	ddZe Ze ZejeejddZejeejddZejeejddZdS )	ShippingCostr   r5   FZcountry_shippingcostrN   Zshippingmethod_shippingcostZsupplier_shippingcostN)r1   r2   r3   r   ri   r   ZadditionalPricer8   rI   r9   ZworkingDaysZDeliveryDaysr:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r   r   r     s*    
r   c                   @   s   e Zd Ze Ze ZdS )
NewArrivalN)r1   r2   r3   r   r:   r;   r<   r   r   r   r   r     s    r   c                   @   L   e Zd ZejddZejddddZejeej	ddZ
ejeej	ddZdS )	NewArrivalLanguager>   r5   Tr   Znewarrival_newarrivallanguagerN   Zlanguage_newarrivallanguageN)r1   r2   r3   r   rG   rC   r   rR   r   rS   newArrivalIdr=   r\   r   r   r   r   r     s    
r   c                   @   s   e Zd ZejddZejddZejddZejddZ	ejddZ
ejddZejddZejddZejddZe Ze ZejeejddZejeejddZejeejddZejeejd	dZd
S )Itemr>   r5   Fr   Zdepartment_itemrN   Z
brand_itemZsupplier_itemZnewarrival_itemN)r1   r2   r3   r   rG   rW   r8   Z
isApprovedisTop
isFavoriteisMostDiscountisMostViewedisNewArrivalZisElectronicr9   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r   r   r   r   r     s4    
r   c                   @   r   )	ItemLanguager>   r5   Tr   Zitem_itemlanguagerN   Zlanguage_itemlanguageN)r1   r2   r3   r   rG   rC   r   rR   r   rS   r   r=   r\   r   r   r   r   r   *  s    
r   c                   @   s>   e Zd ZejddddZe Ze Zej	e
ejddZdS )FeatureBulletr>   Tr6   rz   r{   Zitem_featurebulletrN   N)r1   r2   r3   r   rG   rW   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   4  s    
r   c                   @   s@   e Zd ZejddddZejeejddZ	eje
ejddZdS )FeatureBulletLanguageTr>   r   Z#featurebullet_featurebulletlanguagerN   Zlanguage_featurebulletlanguageN)r1   r2   r3   r   rG   r   rR   r   rS   ZfeatureBulletIdr=   r\   r   r   r   r   r   <  s    
r   c                   @   @   e Zd Ze Ze Zejeej	ddZ
ejeej	ddZdS )EligibleZitem_eligablerN   Zeligibletype_eligibleN)r1   r2   r3   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r   I      
r   c                   @   s   e Zd ZejddZejddZejddZejddZ	ejddZ
ejddZejddZejddZejddZejddZe Ze ZejeejddZdS )SKUr>   r5   r   FZitem_skurN   N)r1   r2   r3   r   rG   rW   rC   ri   r   r   r   r8   r   r   r   r   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r  S  s    r  c                       s   e Zd ZejddZejddddZejddddZejddddZ	ej
eddddZejeejddZ fd	d
Z fddZ  ZS )SKUImager>   r5   Tr6   r{   rz   r   rx   Zsku_skuimagerN   c                    r|   r}   )r   r   r   r  r   r   r   r   r   r   r   j  r   zSKUImage.savec                    r   r   r   r   r   r   r   r   u  r   zSKUImage.delete)r1   r2   r3   r   rG   rW   r   	extensionURLFieldsourcer   r   r   rR   r  rS   r   r   r   r   r   r   r   r   r  b  s    r  c                   @   sB   e Zd Ze ZejddZe Z	e Z
ejeejddZdS )	SKUOptionFr5   Zsku_skuoptionrN   Nr1   r2   r3   r   rG   rW   r8   ZisColorr:   r;   r<   rR   r  rS   r   r   r   r   r   r  {  s    
r  c                   @   X   e Zd ZejddZejddZejddddZeje	ej
ddZejeej
ddZdS )	SKUOptionLanguager>   r5   Tr  Zskuoption_skuoptionlanguagerN   Zlanguage_skuoptionlanguageN)r1   r2   r3   r   rG   titlevalue	colorNamerR   r  rS   ZskuOptionIdr=   r\   r   r   r   r   r    s    
r  c                   @   sF   e Zd ZejddZejddZe Z	e Z
ejeejddZdS )SKUDescriptionr>   r5   FZsku_skudescriptionrN   Nr	  r   r   r   r   r    s    
r  c                   @   r
  )	SKUDescriptionLanguager>   r5   Tr  Z%skudescription_skudescriptionlanguagerN   Zlanguage_skudescriptionlanguageN)r1   r2   r3   r   rG   r  r  r  rR   r  rS   ZskuDescriptionIdr=   r\   r   r   r   r   r    s    
r  c                   @   s\   e Zd ZejddZejddZe Z	e Z
ejddddZe Ze Zdd ZdS )	Couponr>   r5   r   Tr   c                 C   rA   r!   )r   coderD   r   r   r   rE     rF   zCoupon.__str__N)r1   r2   r3   r   rG   r  ri   r   r:   r   r   r   r;   r<   rE   r   r   r   r   r    s    r  c                   @   s0   e Zd Ze Ze Zejeej	dddZ
dS )ShoppingCartTZclient_shoppingCartr   N)r1   r2   r3   r   r:   r;   r<   r   r   rS   r   r   r   r   r   r    s    
r  c                   @   sL   e Zd ZejddZe Ze Zej	e
ejddZej	eejddZdS )ShoppingCartItemr   r5   Zsku_shoppingcartitemrN   Zshoppingcart_shoppingcartitemN)r1   r2   r3   r   ri   quantityr:   r;   r<   rR   r  rS   r   r  ZshoppingCartIdr   r   r   r   r    s    
r  c                   @   s   e Zd Ze Ze ZejddZejddZ	ej
eejddZej
eejddZej
eejddddZej
eejd	dZd
S )PurchaseOrderFr5   Zpaymentmethod_purchaseorderrN   Zorderfrom_purchaseorderZcoupon_purchaseorderTr   Zclient_purchaseorderN)r1   r2   r3   r   r:   r;   r<   r8   Z
isCanceledZ
isRefundedrR   ro   rS   rq   r^   r`   r  ZcouponIdr   r   r   r   r   r   r    s.    
r  c                   @   sN   e Zd Ze Ze ZejddZej	e
ejdddZej	eejddZdS )	ShippingItemFr5   Zshippingcost_shippingitemT)rO   rP   rz   Zpurchaseorder_shippingitemrN   N)r1   r2   r3   r   r:   r;   r<   r8   ZisValidAndPaidrR   r   rS   ZshippingCostIdr  purchaseOrderIdr   r   r   r   r    s    
r  c                   @   s   e Zd ZejddddZejddZejddZejddZe	 Z
e	 ZejeejddZejeejddddZejeejd	dddZejeejdd
dZdd ZdS )ShippingAddressTr>   r{   rz   r6   r5   Zcountry_shippingaddressrN   Zstate_shippingaddressr   Zcity_shippingaddressZshippingitem_ShippingAddressr   c                 C   rA   r!   )r   shippingItemIdrD   r   r   r   rE     rF   zShippingAddress.__str__N)r1   r2   r3   r   rG   ZtrackNumberr   r   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r  r  rE   r   r   r   r   r    s>    r  c                   @   s   e Zd ZejddZejddZejddZejddZejddZ	e
 Ze
 ZejeejddZejeejddZejeejddZdS )PurchaseShippingItemr   r5   Zskucost_purchaseshippingitemrN   Zsku_purchaseshippingitemZ shppingitem_purchaseshippingitemN)r1   r2   r3   r   ri   ZskuPriceZskuDiscountZdeliveredQuantityZreturnedQuantityZcanceledQuantityr:   r;   r<   rR   rg   rS   Z	skuCostIdr  r   r  r  r   r   r   r   r    s&    
r  c                   @   st   e Zd ZejddZejddZejddZejddddZ	e
 Ze
 ZejeejddZejeejddZd	S )
RequestReturnr>   r5   r   Tr   Zreturnstatus_requestreturnrN   Z"purchaseshippingitem_requestreturnN)r1   r2   r3   r   rG   headLineri   ZrequestedQuantityZissueZnoter:   r;   r<   rR   ra   rS   rc   r  ZpurchaseShippingItemIdr   r   r   r   r  ,  s"    
r  c                   @   r   )TrackZshippingaddress_trackrN   Ztrackstatus_trackN)r1   r2   r3   r   r:   r;   r<   rR   r  rS   ZshippingAddressIdrd   rf   r   r   r   r   r  ?  r  r  c                   @   sN   e Zd Ze Ze ZejddZej	e
ejddZejeejdddZdS )	
SalesOrderFr5   Zsupplier_salesorderrN   TZshippingitem_salesorderr   N)r1   r2   r3   r   r:   r;   r<   r8   ZisConfirmedrR   r   rS   r   r   r  r  r   r   r   r   r   J  s    
r   c                   @   sX   e Zd ZejddZejddZe Ze Z	ej
eejddZej
eejddZdS )SalesOrderItemr   r5   Zsku_salesorderitemrN   Zsalesorder_salesorderitemN)r1   r2   r3   r   ri   r  r   r:   r;   r<   rR   r  rS   r   r   ZsalesOrderIdr   r   r   r   r!  X  s    
r!  c                   @   r   )ItemSubscriptionr   r5   Zitem_itemsubscriptionrN   Z!subscriptiontype_itemsubscriptionZ#subscriptionstatus_itemsubscriptionN)r1   r2   r3   r   ri   r   r   rj   r:   r   r   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r   r   r"  h  r   r"  c                   @   r   )FavoriteZitem_favoriterN   Zclient_favoriteN)r1   r2   r3   r   r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r#    r  r#  c                   @   d   e Zd ZejddZejddZejddZe	 Z
e	 ZejeejddZejeejddZdS )ClientItemRateReviewr>   r5   r   Zitem_client_rate_reviewrN   Zclient_item_rate_reviewN)r1   r2   r3   r   rG   r  ri   ratecommentr:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r%        
r%  c                   @   r$  )ClientSupplierRateReviewr>   r5   r   Zsupplier_client_rate_reviewrN   Zclient_supplier_rate_reviewN)r1   r2   r3   r   rG   r  ri   r&  r'  r:   r;   r<   rR   r   rS   r   r   r   r   r   r   r   r)    r(  r)  c                   @   sZ   e Zd ZejddZejddZejddZe	 Z
e	 ZejeejddZdd ZdS )	Feedbackr>   r5   r   Zclient_feedbackrN   c                 C   rA   r!   rh   rD   r   r   r   rE     rF   zFeedback.__str__N)r1   r2   r3   r   rG   r  ri   r&  r'  r:   r;   r<   rR   r   rS   r   rE   r   r   r   r   r*    s    r*  c                   @   sb   e Zd ZejddZejddZejddddZejddZ	e
 Ze
 ZejeejddZdS )	Requestr>   r5   Tr  FZclient_requestrN   N)r1   r2   r3   r   rG   r  r   responser8   ZisDoner:   r;   r<   rR   r   rS   r   r   r   r   r   r+    s    
r+  c                   @   s(   e Zd ZejddZe Ze ZdS )
PolicyTyper>   r5   N)	r1   r2   r3   r   rG   rC   r:   r;   r<   r   r   r   r   r-    s    r-  c                   @   .   e Zd Ze Ze Zejeej	ddZ
dS )PolicyHeaderZpolicytype_policyheaderrN   N)r1   r2   r3   r   r:   r;   r<   rR   r-  rS   ZpolicyTypeIdr   r   r   r   r/    s    
r/  c                   @   rY   )PolicyHeaderLanguager>   r5   Z!policyheader_policyheaderlanguagerN   Zlanguage_policyheaderlanguageN)r1   r2   r3   r   rG   rC   rR   r/  rS   policyHeaderIdr=   r\   r   r   r   r   r0    r]   r0  c                   @   r.  )PolicyDescriptionZpolicyheader_policydescriptionrN   N)r1   r2   r3   r   r:   r;   r<   rR   r/  rS   r1  r   r   r   r   r2    s    
r2  c                   @   rY   )PolicyDescriptionLanguager>   r5   Z+policydescription_policydescriptionlanguagerN   Z"language_policydescriptionlanguageN)r1   r2   r3   r   rG   r   rR   r2  rS   ZpolicyDescriptionIdr=   r\   r   r   r   r   r3    rr   r3  c                   @   s`   e Zd ZejddZejddZejddZejddZej	ddZ
e Ze Zdd ZdS )RechargeCostr   r5   Fc                 C   rA   r!   rh   rD   r   r   r   rE     rF   zRechargeCost.__str__N)r1   r2   r3   r   ri   rj   rk   rm   rn   r8   rI   r:   r;   r<   rE   r   r   r   r   r4    s    r4  c                   @   s   e Zd ZejddZejddddZejddddZejddddZ	ej
eejddddZej
eejdd	Ze Ze Zd
S )Recharger   r5   Tr>   r   Zrechargecost_recharger   Zpaymentmethod_rechargerN   N)r1   r2   r3   r   ri   ZsubTotalrG   Z	sessionIdZpaymentIntentIdr   rR   r4  rS   ZrechargeCostIdro   rq   r:   r;   r<   r   r   r   r   r5    s"    r5  c                   @   s   e Zd ZejddZejddZejddZejddZejddZ	ejddZ
ejddZejddZejddddZejddddZe Ze ZejeejddddZejeejddddZejeejd	dddZejeejd
dddZdS )Paymentr   r5   Tr>   r   Ztransaction_paymentr   Zpurchaseorder_paymentZsubscription_paymentZrecharge_paymentN)r1   r2   r3   r   ri   Zpaidchangetotalrk   ZsalesOrderCostZdeliveryCostrl   ZrechargeCostrG   r   ZdescriptionDetailr:   r;   r<   rR   rs   rS   ru   r  SET_NULLr  r   ZsubscriptionIdr5  Z
rechargeIdr   r   r   r   r6    sR    
r6  c                   @   sD   e Zd ZejddZejddZejddddZe	 Z
e	 ZdS )	Accessoryr>   r5   r   Tr   N)r1   r2   r3   r   rG   rC   ri   r   r   r:   r;   r<   r   r   r   r   r:  e  s    r:  c                   @   sX   e Zd ZejddZejddZe Z	e Z
ejeejddZejeejddZdS )AccessoryTransactionr   r5   Z$transactiontype_AccessoryTransactionrN   ZAccessory_AccessoryTransactionN)r1   r2   r3   r   r9   r  ri   r   r:   r;   r<   rR   rs   rS   ru   r:  ZaccessoryIdr   r   r   r   r;  l  s    
r;  c                   @   sL   e Zd ZejddZejddZejddddZe	 Z
e	 Zdd ZdS )	Employeer>   r5   r   Tr   c                 C   rA   r!   )r   fullNamerD   r   r   r   rE     rF   zEmployee.__str__N)r1   r2   r3   r   rG   r=  r   rH   r   r:   r;   r<   rE   r   r   r   r   r<  }  s    r<  c                   @   s   e Zd ZejddddZejddddZejddddZejddddZ	ejddddZ
ejddddZejddddZe Ze ZdS )SystemTrafficr>   Tr   r   N)r1   r2   r3   r   rG   countrystateZcityri   ZlatitudeZ	longitudeZdeviceIPZopenFromr:   r;   r<   r   r   r   r   r>    s    r>  )j	django.dbr   r
   Zsnow_flake_api.settingsr   r   r   r   r   r   r    Modelr4   r=   rJ   rM   rU   rZ   r^   r_   ra   rb   rd   re   rg   ro   rp   rs   rt   rw   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r%  r)  r*  r+  r-  r/  r0  r2  r3  r4  r5  r6  r:  r;  r<  r>  r   r   r   r   <module>   s    "	
	

"

		
"	Q