
    J{hGe                    >$   S SK r S SKrS SKrS SKJr  S SKJr  S SK7  S SK7  S SK	J
r
  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKrS SKJr  S SKJr  S SKJr   " S S\R@                  5      r! " S S\R@                  5      r" " S S\RF                  5      r$ " S S\RF                  5      r% " S S\RF                  5      r& " S S\RF                  5      r' " S S\RP                  5      r) " S  S!\5      r* " S" S#\RV                  5      r, " S$ S%\RZ                  5      r. " S& S'\RV                  5      r/ " S( S)\RZ                  5      r0 " S* S+\RV                  5      r1 " S, S-\RZ                  5      r2 " S. S/\RV                  5      r3 " S0 S1\RZ                  5      r4 " S2 S3\RV                  5      r5 " S4 S5\RZ                  5      r6 " S6 S7\RV                  5      r7 " S8 S9\RZ                  5      r8 " S: S;\RV                  5      r9 " S< S=\RZ                  5      r: " S> S?\RV                  5      r; " S@ SA\RZ                  5      r< " SB SC\RV                  5      r= " SD SE\RZ                  5      r> " SF SG\RV                  5      r? " SH SI\RZ                  5      r@ " SJ SK\RV                  5      rA " SL SM\RZ                  5      rB " SN SO\RV                  5      rC " SP SQ\RZ                  5      rD " SR SS\RV                  5      rE " ST SU\RZ                  5      rF " SV SW\RV                  5      rG " SX SY\RZ                  5      rH " SZ S[\RV                  5      rI " S\ S]\RZ                  5      rJ " S^ S_\RV                  5      rK " S` Sa\RZ                  5      rL " Sb Sc\RV                  5      rM " Sd Se\RZ                  5      rN " Sf Sg\RV                  5      rO " Sh Si\RZ                  5      rP " Sj Sk\RV                  5      rQ " Sl Sm\RZ                  5      rR " Sn So\RV                  5      rS " Sp Sq\RZ                  5      rT " Sr Ss\RV                  5      rU " St Su\RZ                  5      rV " Sv Sw\RV                  5      rW " Sx Sy\RZ                  5      rX " Sz S{\RV                  5      rY " S| S}\RZ                  5      rZ " S~ S\RV                  5      r[ " S S\RZ                  5      r\ " S S\RV                  5      r] " S S\RZ                  5      r^ " S S\RV                  5      r_ " S S\RZ                  5      r` " S S\RV                  5      ra " S S\RZ                  5      rb " S S\RV                  5      rc " S S\RZ                  5      rd " S S\RV                  5      re " S S\RZ                  5      rf " S S\RV                  5      rg " S S\RZ                  5      rh " S S\RV                  5      ri " S S\RZ                  5      rj " S S\RV                  5      rk " S S\RZ                  5      rl " S S\RV                  5      rm " S S\RZ                  5      rn " S S\RV                  5      ro " S S\RZ                  5      rp " S S\RV                  5      rq " S S\RZ                  5      rr " S S\RV                  5      rs " S S\RZ                  5      rt " S S\RV                  5      ru " S S\RZ                  5      rv " S S\RV                  5      rw " S S\RZ                  5      rx " S S\RV                  5      ry " S S\RZ                  5      rz " S S\RV                  5      r{ " S S\RZ                  5      r| " S S\RV                  5      r} " S S\RZ                  5      r~ " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\GR                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " S S\RZ                  5      r " S S\RV                  5      r " GS  GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS	\RZ                  5      r " GS
 GS\GR                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RP                  5      r " GS GS\GR                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS  GS!\RV                  5      r " GS" GS#\RZ                  5      r " GS$ GS%\RV                  5      r " GS& GS'\RZ                  5      r " GS( GS)\RV                  5      r " GS* GS+\RZ                  5      r " GS, GS-\RV                  5      r " GS. GS/\RZ                  5      r " GS0 GS1\RV                  5      r " GS2 GS3\RZ                  5      r " GS4 GS5\GR                  5      r " GS6 GS7\RV                  5      r " GS8 GS9\RZ                  5      r " GS: GS;\RV                  5      r " GS< GS=\RZ                  5      r " GS> GS?\RV                  5      r " GS@ GSA\RZ                  5      r " GSB GSC\RV                  5      r " GSD GSE\RZ                  5      r " GSF GSG\RV                  5      r " GSH GSI\RZ                  5      r " GSJ GSK\RV                  5      r " GSL GSM\RZ                  5      r " GSN GSO\RV                  5      r " GSP GSQ\RZ                  5      r " GSR GSS\RV                  5      r " GST GSU\RZ                  5      r " GSV GSW\RV                  5      r " GSX GSY\RZ                  5      r " GSZ GS[\GR                  5      r " GS\ GS]\RV                  5      r " GS^ GS_\RZ                  5      r " GS` GSa\RV                  5      r " GSb GSc\RZ                  5      r " GSd GSe\RV                  5      r " GSf GSg\RZ                  5      r " GSh GSi\RV                  5      r " GSj GSk\RZ                  5      r " GSl GSm\RV                  5      r " GSn GSo\RZ                  5      r " GSp GSq\RV                  5      r " GSr GSs\RZ                  5      r " GSt GSu\RV                  5      r " GSv GSw\RZ                  5      r " GSx GSy\RV                  5      r " GSz GS{\RZ                  5      r " GS| GS}\GR                  5      r " GS~ GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\GR                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\GR                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RP                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      r " GS GS\RV                  5      r " GS GS\RZ                  5      rg(      N)Image)generics)*)DjangoFilterBackend)
pagination)filters)rest_framework)Response)Q)InMemoryUploadedFile)NotFound)View)JsonResponse)
MEDIA_ROOT)authentication)
exceptionsc                       \ rS rSrS rSrg)TokenAuthentication   c                     UR                   R                  S5      nSnUb  US:X  a  SnU(       a  g [        R                  " S5      e)NtokenFTzIn Valid Tokenheadersgetr   AuthenticationFailed)selfrequestr   isUserAuthenticateds       u/Users/waleedhassanin/Documents/snowflake_co_dev_github/snow_flake_back_end_deploy/snow_flake_api/snow_flake/views.pyauthenticate TokenAuthentication.authenticate   sH    ##G,#&*#112BCC     N__name__
__module____qualname____firstlineno__r    __static_attributes__r#   r"   r   r   r      s    
Dr"   r   c                       \ rS rSrS rSrg)APIKeyAuthentication(   c                     UR                   R                  S5      nSnUb  US:X  a  SnU(       a  g [        R                  " S5      e)NAPIKeyFtestTzIn Valid API Keyr   )r   r   apiKeyisRequestAuthenticateds       r   r    !APIKeyAuthentication.authenticate)   sH    $$X.!&)-&!112DEEr"   r#   Nr$   r#   r"   r   r+   r+   (   s    
Fr"   r+   c                        \ rS rSrSrSrSrSrg)StandardSetPagination6      	page_size  r#   Nr%   r&   r'   r(   r7   page_size_query_parammax_page_sizer)   r#   r"   r   r4   r4   6   s    I' r"   r4   c                        \ rS rSrSrSrSrSrg)StandardCitySetPagination>   r8   r7   r#   Nr9   r#   r"   r   r=   r=   >   s    I' r"   r=   c                   ,    \ rS rSrSrSrSrS rS rSr	g)	StandardItemSetPaginationF   r6   r7   r8   c                 t   Ub  [         R                  R                  SS9R                  US9R                  [	        S5      [        S5      S9n[         R                  R                  SS9R                  US9R                  [	        S5      [        S5      S9nO[         R                  R                  5       R                  SS9R                  [	        S5      [        S5      S9n[         R                  R                  5       R                  SS9R                  [	        S5      [        S5      S9nUbA  US   (       d  S	US'   US
   (       d  SUS
'   US   S	:  a  US
   S	:  a  US   US
   :X  a  SUS'   UbA  US   (       d  S	US'   US   (       d  SUS'   US   S	:  a  US   S	:  a  US   US   :X  a  SUS'   X#4$ )NT
isApproved)"item_itemlanguage__name__icontainsitem_sku__price	min_price	max_priceitem_sku__discountmin_discountmax_discountrH   r   rI      rL   rM   )Itemobjectsfilter	aggregateMinMaxall)r   search	priceValsdiscountValss       r   getStandardFilter+StandardItemSetPagination.getStandardFilterM   s   ##t#46B!"34DU@V    ##t#46B!$%9!:!$%9!:      "4(!"34DU@V      "4(!$%9!:!$%9!:     [))*	+&[))*	+&%)i.Dq.H[)Y{-CC-.Ik*#//0^,//0^,N+a/L4PST4T/<3OO34L0&&r"   c                    U R                   R                  R                  SS 5      nS nS nU R                  U5      u  p4UbZ  [	        U R
                  R                  R                  U R                  5       U R                  5       US   US   US   US   US.5      $ [	        U R
                  R                  R                  U R                  5       U R                  5       US.5      $ )NrV   rH   rI   rL   rM   countnextpreviousminPricemaxPriceminDiscountmaxDiscountresultsr]   r^   r_   rd   )
r   query_paramsr   rY   r
   page	paginatorr]   get_next_linkget_previous_link)r   datarV   rW   rX   s        r   get_paginated_response0StandardItemSetPagination.get_paginated_response   s    **..x>	"&"8"8"@	 !YY0066 ..0 $ 6 6 8 )+ 6 )+ 6#/#?#/#?#	  ,,22**, 224	
 	
r"   r#   N)
r%   r&   r'   r(   r7   r:   r;   rY   rl   r)   r#   r"   r   r@   r@   F   s     I' 6'p
r"   r@   c                   &    \ rS rSrSrSrSrS rSrg)StandardSKUSetPagination   r6   r7   r8   c                 X   [         R                  R                  5       R                  [	        S5      [        S5      S9n[         R                  R                  5       R                  [	        S5      [        S5      S9nUbA  US   (       d  SUS'   US   (       d  SUS'   US   S:  a  US   S:  a  US   US   :X  a  SUS'   UbA  US	   (       d  SUS	'   US
   (       d  SUS
'   US	   S:  a  US
   S:  a  US	   US
   :X  a  SUS	'   UbZ  [        U R                  R                  R                  U R                  5       U R                  5       US   US   US	   US
   US.5      $ [        U R                  R                  R                  U R                  5       U R                  5       US.5      $ )NpricerG   discountrK   rH   r   rI   rN   rL   rM   r\   re   )SKUrP   rQ   rR   rS   rT   r
   rg   rh   r]   ri   rj   )r   rk   rW   rX   s       r   rl   /StandardSKUSetPagination.get_paginated_response   s   KK&&(22'lc'l 3 
	 {{))+55Zs: 6 
  [))*	+&[))*	+&%)i.Dq.H[)Y{-CC-.Ik*#//0^,//0^,N+a/L4PST4T/<3OO34L0 !YY0066 ..0 $ 6 6 8 )+ 6 )+ 6#/#?#/#?#	  ,,22**, 224	
 	
r"   r#   N)	r%   r&   r'   r(   r7   r:   r;   rl   r)   r#   r"   r   ro   ro      s    I' 1
r"   ro   c                   0    \ rS rSr\rS rS rS rS r	Sr
g)DashboardDataView   c                     Sn/ nU H  n[        U5      R                  nXS   -   nM!     / nU H  n[        U5      R                  nXS   -   nM!     U$ )Nr   sumTaxes)RechargeSerializerrk   PurchaseOrderSerializer)r   rz   rechargeListselected
serializerpurchaseOrderLists         r   calculateTaxes DashboardDataView.calculateTaxes   sm     $H+H5::JZ"88H %  *H0:??JZ"88H * r"   c                 L   [         R                  R                  5       n[        R                  R	                  [        S5      5      nUS   c  SUS'   [        R                  R	                  [        S5      5      nUS   c  SUS'   [        R                  R	                  [        S5      5      nUS   c  SUS'   [        R                  R                  SS	9n[        R                  R                  S
S	9nSnSnSn	Sn
SnSnUR                  5       S:  a  [        R                  R                  US   R                  S9R                  5       n[        R                  R                  US   R                  S9R	                  [        S5      5      nUS   c  SUS'   [        R                  R                  US   R                  S9R	                  [        S5      5      n	U	S   c  SU	S'   UR                  5       S:  a  [        R                  R                  US   R                  S9R                  5       n
[        R                  R                  US   R                  S9R	                  [        S5      5      nUS   c  SUS'   [        R                  R                  US   R                  S9R	                  [        S5      5      nUS   c  SUS'   US   nU	S   nUS   nUS   nX-
  nUU-
  nU R                  5       n[        UUS   US   US   UUS   U	S   U
US   US   UUU5      nU/$ )Ntotal
total__sumr   paid	paid__sumchangechange__sumInTranskeyName__icontainsOutTranstransactionTypeId)rO   rP   r]   PaymentrR   SumTransactionTyperQ   __len__idr   DashboardData)r   
countItemssumPaymentTotalsumPaymentPaidsumPaymentChangeinTransoutTranscountTransactionInsumTransactionInTotalsumTransactionInPaidcountTransactionOutsumTransactionOutTotalsumTransactionOutPaid
sumTotalIn	sumPaidInsumTotalOut
sumPaidOutbalanceTotalbalancePaidrz   dashboardDatas                        r   getDashboardData"DashboardDataView.getDashboardData   sM   \\'')
!//33CLA<(0,-OL) 223v;?+&.*+N;'"??44S]CM*2./]+!))00I0N"**11Z1P ! !" !??q !(!7!7")!*-- "8 "eg  %,OO$:$:")!*-- %; %iG% " %\2:67%l3#*??#9#9")!*-- $: $iF$ ! $K0845$[1!")//"8"8"*1+.. #9 #eg   &-__%;%;"*1+.. &< &iG% # &l3;78&|4$+OO$:$:"*1+.. %; %iF$ " %[1956%k2*<8
(5	,\:*;7
!/*,&&(%L);']+!,/ -"<0!+.
 r"   c                 P   [         R                  R                  US9R                  5       n[        R                  R                  [        US9[        US9-  5      R                  [        S5      5      nUS   c  SUS'   [        R                  R                  [        US9[        US9-  5      R                  [        S5      5      nUS   c  SUS'   [        R                  R                  [        US9[        US9-  5      R                  [        S	5      5      nUS
   c  SUS
'   [        R                  R                  SS9n[        R                  R                  SS9nSnSn	Sn
SnSnSnUR                  5       S:  Ga2  [        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  5       n[        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  [        S5      5      n	U	S   c  SU	S'   [        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  [        S5      5      n
U
S   c  SU
S'   UR                  5       S:  Ga2  [        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  5       n[        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  [        S5      5      nUS   c  SUS'   [        R                  R                  US   R                  S9R                  [        US9[        US9-  5      R                  [        S5      5      nUS   c  SUS'   [        UUS   US   US
   UUS   US   UU	S   U
S   SSS5      nU/$ )N)
supplierIdsalesOrderId__supplierIdsubscriptionId__supplierIdr   r   r   r   r   r   r   r   r   r   r   )rO   rP   rQ   r]   r   r   rR   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   s                  r   getSupplierDashboardData*DashboardDataView.getSupplierDashboardDataY  s0   \\((J(?EEG
!//00z2:67
 )CL
! 	
 <(0,-OL) //z2:67
 )CK
  	
 +&.*+N;'"??11z2:67
 )CM
" 	
 M*2./]+!))00I0N"**11Z1P ! !" !??q &&&Gz::>?   &&&Gz::>? 3w<( " %\2:67%l3 &&&Gz::>? 3v;' ! $K0845$[1!&&!&Hz::>?    &&!&Hz::>? 3w<( # &l3;78&|4 &&!&Hz::>? 3v;' " %[1956%k2%L);']+"<0!+.!,/ -
 r"   c                    U R                   R                  R                  S5      nU R                   R                  R                  S5      nUb  Ub  [        SS05      eUb,  [	        U5      S:X  a  U R                  5       $ [        SS05      eUb-  [	        U5      S:  a  U R                  U5      $ [        SS05      e[        SS05      e)NisDashboardr   ErrorInvalid ParametersrN   r   )r   rf   r   r   intr   r   )r   r   r   s      r   get_querysetDashboardDataView.get_queryset  s    ll//33MB\\..22<@
"z'=G%9:;;$;1$,,..)=>??#:"44Z@@)=>??G%9:;;r"   r#   N)r%   r&   r'   r(   DashboardDataSerializerserializer_classr   r   r   r   r)   r#   r"   r   rw   rw      s     .<Xtsj<r"   rw   c                       \ rS rSrS rSrg)CheckoutPageViewi  c                 ~   [         R                  " UR                  5      nS nS nS n/ nSU;   a  US   nSU;   a  US   nSU;   a  US   nSU;   a  US   nSn	Sn
Sn0 n/ nS nUR                  5       S:  a  / nU H  nUR	                  US   5        M     [
        R                  R                  US9R                  S5      nUR                  5       S:  a  UR	                  US   R                  R                  R                  5        [        UUS	S
.SS9R                  nU H"  nU H  nUS   US   :X  d  M  US   US'   M     M$     U H  nUS   S   nUS   nU	UU-  -   n	M     XS'   UGb  UGb  UGb  Sn
/ n/ nUR                  5       S:  a-  [        R                  R                  UUS9R                  S5      nU GH&  nSnUb   U H  nUS   nUUR                  U-  -   nM     [         R                  R                  SS9nU H  nSnUR"                  R                  [%        UR                  5      :X  d  M4  UUR&                  -   nUU-   n[         R                  R)                  UR"                  R                  S9n[+        USU0S9R                  nUUS'   UR	                  U5        M     U H  nUS   U:X  d  M  US   n
M     UR                  5       S:  d  GM!  UUS'   GM)     UR                  5       S:  a  [-        USU0SS9R                  US'   X-   n0 nU	US'   U
US'   UUS'   UUS'   SUS'   [/        USS9$ )N
languageId	countryIdshippingMethodIdquantityDataListr   skuId)id__inr   rN   )r   
isShowItemT)contextmanyquantityskuNewPricerr   selectedSKUList)r   supplierId__in	isEnabledr   )r   costshippingMethodListshippingCostListsubTotaldeliveryr   checkoutCost	isSuccessF)safe)jsonloadsbodyr   appendrt   rP   rQ   order_byitemIdr   r   SKUSerializerrk   ShippingCostadditionalPriceShippingMethodr   r   rr   r   ShippingMethodSerializerShippingCostSerializerr   )r   r   argskwargsjsonDatar   r   r   r   r   r   r   dictionaryCheckoutsupplierList
skuSerList	skuIdListquantityDatar   skunewPricer   shippingMethodSerListr   shippingCostadditionalCostr   shippingMethodshippingDeliveryselectedShippingMethodshippingMethodSerr   s                                  r   postCheckoutPageView.post  s    ::gll+
	8#!,/J(" -I)'(:;)'(:;
##%)I 0  g!67 !1 "kk00	0BKKDQO&&(1,##OA$6$=$=$H$H$K$KL*'*4)*! " d  &C(8t9W(==.::.FC
O )9 &
 &C"=1':H":H'8h+>?H &
 9C#45!$(H$&!!##%)#/#7#7#>#>'#/ $? $ (4. !
 !1!"))#&z?)7<;W;W[c;d)e  * &4%;%;%B%Bt%B%T"&8N'($#44773~?P?P;QQ+;l>P>P+P(+;n+L(1?1G1G1K1K|OlOlOoOo1K1p.,DE[eqr|d},~  -D  -D)2B)&1-445FG '9 '<N%d+/??#1&#9 '< )002Q6?T&';<3 !16  '')A-9O$$j : $ ##56 ##+Z #+Z  %W-9>**.;'
 	
r"   r#   N)r%   r&   r'   r(   r   r)   r#   r"   r   r   r     s    z
r"   r   c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SettingsListi_  r#   Nr%   r&   r'   r(   SettingsrP   rU   querysetSettingsSerializerr   r)   r#   r"   r   r   r   _  s    ##%H)r"   r   c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SettingsDetailie  r#   Nr   r#   r"   r   r   r   e      ##%H)r"   r   c                       \ rS rSr\rS rSrg)LanguageListij  c                     U R                   R                  R                  S5      nUS:X  a  [        R                  R                  5       $ [        R                  R                  SS9$ Nr   1Tr   )r   rf   r   LanguagerP   rU   rQ   r   r   s     r   r   LanguageList.get_querysetm  sS    ll//33MB###''))##**T*::r"   r#   N)r%   r&   r'   r(   LanguageSerializerr   r   r)   r#   r"   r   r   r   j  s    );r"   r   c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)LanguageDetailiu  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r	  r	  u  r   r"   r	  c                   V    \ rS rSr\R
                  R                  5       r\r	SS jr
Srg)AppContentListiz  Nc           
      R   U R                   R                  R                  S5      nUGb  U R                   R                  R                  S5      n[        R                  " UR                  S5      5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       nUR                  XR                  5       S9  U R                   R                  R                  S5      n	[        USU	UR                  5       S SUR                  5       -   S9n
U R                   R                  R                  S	5      nU R                   R                  R                  S
5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nUR                  UUUUU
UUS9  g UR                  5         g )NimageBase64imageExtensionUTF-8format	imageNameimageimage/file
field_namenamesizecharsetcontent_typekeyNamedescription
navigateToisSliderFlagcreatedDateupdatedDater  r  r  r  r  r   r!  r   rk   r   base64	b64decodeencodeioBytesIOr   opensaveupperr   tell)r   r   r  r  r  rk   bufimgimg_ior  newImager  r  r  r  newCreatedDatenewUpdatedDates                    r   perform_createAppContentList.perform_create~  s   ll''++M:"!\\..223CDN##K$6$6w$?@D**T"C**S/CZZ\FHHV$8$8$:H;<<$$((5D+"[[]%(<(<(>>H ll''++I6G,,++//>K**..|<J<<,,00@L!\\..22=AN!\\..22=ANOO'%)**   OOr"   r#   N)r%   r&   r'   r(   
AppContentrP   rU   r   AppContentSerializerr   r3  r)   r#   r"   r   r  r  z  s!    !!%%'H+$r"   r  c                   V    \ rS rSr\R
                  R                  5       r\r	SS jr
Srg)AppContentDetaili  Nc           
         U R                   R                  R                  S5      nUGb  U R                   R                  R                  S5      nU R                   R                  R                  S5      n[        R                  " UR                  S5      5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       n	UR                  XR                  5       S9  U R                   R                  R                  S5      n
[        U	SU
U	R                  5       S SUR                  5       -   S	9nU R                   R                  R                  S
5      nUb~  US:w  ax  [        R                  R!                  ["        S-   [%        U5      -   S-   U-   S-   U-   5      (       a5  [        R&                  " ["        S-   [%        U5      -   S-   U-   S-   U-   5        U R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nUR                  UUUUUUUS9  g UR                  5         g )Nr  oldImageNamer  r  r  r  r  r  r  r   holderz/appcontents/appcontent_/.r  r  r  r  r   r!  r"  r   rk   r   r$  r%  r&  r'  r(  r   r)  r*  r+  r   r,  ospathexistsr   strremove)r   r   r  r  r;  r  rk   r-  r.  r/  r  r0  r   r  r  r  r  r1  r2  s                      r   perform_updateAppContentDetail.perform_update  s   ll''++M:"<<,,00@L!\\..223CDN##K$6$6w$?@D**T"C**S/CZZ\FHHV$8$8$:H;<<$$((5D+"[[]%(<(<(>>H ""&&t,B'8+ww~~"45b'"  '	'
  ))  		&89!"g& "" +	+
 "" -- ll''++I6G,,++//>K**..|<J<<,,00@L!\\..22=AN!\\..22=ANOO'%)**   OOr"   r#   r5  )r%   r&   r'   r(   r6  rP   rU   r   r7  r   rE  r)   r#   r"   r   r9  r9    s!    !!%%'H+;r"   r9  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)AppContentLanguageListi  appContentIdr   r#   N)r%   r&   r'   r(   AppContentLanguagerP   rU   r   AppContentLanguageSerializerr   r   filter_backendsfilterset_fieldsr)   r#   r"   r   rH  rH    /    !))--/H3*+O&5r"   rH  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)AppContentLanguageDetaili  r#   N)r%   r&   r'   r(   rJ  rP   rU   r   rK  r   r)   r#   r"   r   rP  rP        !))--/H3r"   rP  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SocialLinkListi  r#   Nr%   r&   r'   r(   
SocialLinkrP   rU   r   SocialLinkSerializerr   r)   r#   r"   r   rS  rS        !!%%'H+r"   rS  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SocialLinkDetaili  r#   NrT  r#   r"   r   rY  rY    rW  r"   rY  c                   *    \ rS rSr\r\/rS/rS r	Sr
g)SocialLinkTokenListi  socialLinkIdc                     U R                   R                  R                  S5      nUS:X  a-  [        R                  R                  5       R                  S5      $ g Nr   r  -idr   rf   r   SocialLinkTokenrP   rU   r   r  s     r   r    SocialLinkTokenList.get_queryset  I    ll//33MB#"**..099%@@ r"   r#   N)r%   r&   r'   r(   SocialLinkTokenSerializerr   r   rL  rM  r   r)   r#   r"   r   r[  r[    s    0*+O&'Ar"   r[  c                       \ rS rSr\rS rSrg)SocialLinkTokenDetaili  c                     U R                   R                  R                  S5      nUS:X  a-  [        R                  R                  5       R                  S5      $ g r^  r`  r  s     r   r   "SocialLinkTokenDetail.get_queryset  rc  r"   r#   N)r%   r&   r'   r(   rd  r   r   r)   r#   r"   r   rf  rf    s    0Ar"   rf  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RegisterTypeListi  r#   Nr%   r&   r'   r(   RegisterTyperP   rU   r   RegisterTypeSerializerr   r)   r#   r"   r   rj  rj        ##'')H-r"   rj  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RegisterTypeDetaili  r#   Nrk  r#   r"   r   rp  rp    rn  r"   rp  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)RegisterTypeLanguageListi  registerTypeIdr   r#   N)r%   r&   r'   r(   RegisterTypeLanguagerP   rU   r   RegisterTypeLanguageSerializerr   r   rL  rM  r)   r#   r"   r   rr  rr    /    #++//1H5*+O(,7r"   rr  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RegisterTypeLanguageDetaili"  r#   N)r%   r&   r'   r(   rt  rP   rU   r   ru  r   r)   r#   r"   r   rx  rx  "      #++//1H5r"   rx  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)OrderFromListiX  r#   Nr%   r&   r'   r(   	OrderFromrP   rU   r   OrderFromSerializerr   r)   r#   r"   r   r{  r{  X        $$&H*r"   r{  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)OrderFromDetaili]  r#   Nr|  r#   r"   r   r  r  ]  r  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)OrderFromLanguageListib  orderFromIdr   r#   N)r%   r&   r'   r(   OrderFromLanguagerP   rU   r   OrderFromLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r  b  /     ((,,.H2*+O%|4r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)OrderFromLanguageDetailii  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  i       ((,,.H2r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ReturnStatusListi  r#   Nr%   r&   r'   r(   ReturnStatusrP   rU   r   ReturnStatusSerializerr   r)   r#   r"   r   r  r    rn  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ReturnStatusDetaili  r#   Nr  r#   r"   r   r  r    rn  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)ReturnStatusLanguageListi  returnStatusIdr   r#   N)r%   r&   r'   r(   ReturnStatusLanguagerP   rU   r   ReturnStatusLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    rv  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ReturnStatusLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    ry  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TrackStatusListi  r#   Nr%   r&   r'   r(   TrackStatusrP   rU   r   TrackStatusSerializerr   r)   r#   r"   r   r  r        ""&&(H,r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TrackStatusDetaili  r#   Nr  r#   r"   r   r  r    r  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)TrackStatusLanguageListi  trackStatusIdr   r#   N)r%   r&   r'   r(   TrackStatusLanguagerP   rU   r   TrackStatusLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s/    "**..0H4*+O'6r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TrackStatusLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    s    "**..0H4r"   r  c                   ,    \ rS rSr\rS r\/rSS/r	Sr
g)PaymentMethodListi  c                     U R                   R                  R                  S5      nUS:X  a  [        R                  R                  5       $ [        R                  R                  SS9$ r  )r   rf   r   PaymentMethodrP   rU   rQ   r  s     r   r   PaymentMethodList.get_queryset  sS    ll//33MB# ((,,.. ((//$/??r"   r  r   r#   N)r%   r&   r'   r(   PaymentMethodSerializerr   r   r   rL  rM  r)   r#   r"   r   r  r    s#    .@ ++O!;/r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PaymentMethodDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        $$((*H.r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)PaymentMethodLanguageListi  paymentMethodIdr   r#   N)r%   r&   r'   r(   PaymentMethodLanguagerP   rU   r   PaymentMethodLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    /    $,,002H6*+O)<8r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PaymentMethodLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        $,,002H6r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)EligibleTypeListi  r#   Nr%   r&   r'   r(   EligibleTyperP   rU   r   EligibleTypeSerializerr   r)   r#   r"   r   r  r    rn  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)EligibleTypeDetaili  r#   Nr  r#   r"   r   r  r    rn  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)EligibleTypeLanguageListi  eligibleTypeIdr   r#   N)r%   r&   r'   r(   EligibleTypeLanguagerP   rU   r   EligibleTypeLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    rv  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)EligibleTypeLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    ry  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)CountryListi  isActiver#   N)r%   r&   r'   r(   CountryrP   rU   r   CountrySerializerr   r   rL  rM  r)   r#   r"   r   r  r    s*    ""$H(*+O"|r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)CountryDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        ""$H(r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)CountryLanguageListi  r   r   r#   N)r%   r&   r'   r(   CountryLanguagerP   rU   r   CountryLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s/    &&**,H0*+O#\2r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)CountryLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        &&**,H0r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\R                  \/rSS/rS/rSrg)	StateListi  state_statelanguage__namer   r  r  r#   N)r%   r&   r'   r(   StaterP   rU   r   r   StateSerializerr   searchfilterSearchFilterr   rL  rM  search_fieldsr)   r#   r"   r   r  r    sI    }}  "++,GHH&#002EFO#Z0HMr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)StateDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        }}  "H&r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)StateLanguageListi  stateIdr   r#   N)r%   r&   r'   r(   StateLanguagerP   rU   r   StateLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    /    $$((*H.*+O!<0r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)StateLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rS/rSrg)CityListi$  city_citylanguage__namer  r  r  r#   N)r%   r&   r'   r(   CityrP   rU   r   r   CitySerializerr   r=   pagination_classr  r  r   rL  rM  r  r)   r#   r"   r   r  r  $  sO    ||!**+DEH%0#002EFO!:.HMr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)
CityDetaili-  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  -      ||!H%r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)CityLanguageListi2  cityIdr   r#   N)r%   r&   r'   r(   CityLanguagerP   rU   r   CityLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r  2  /    ##'')H-*+O ,/r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)CityLanguageDetaili9  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  9  rn  r"   r  c                   *    \ rS rSr\r\/rS/rS r	Sr
g)ShippingMethodListi>  r   c                     U R                   R                  R                  S5      nUS:X  a  [        R                  R                  5       $ [        R                  R                  SS9$ r  )r   rf   r   r   rP   rU   rQ   r  s     r   r   ShippingMethodList.get_querysetC  sS    ll//33MB#!))--//!))0040@@r"   r#   N)r%   r&   r'   r(   r   r   r   rL  rM  r   r)   r#   r"   r   r  r  >  s    /*+O#}Ar"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShippingMethodDetailiK  r#   N)r%   r&   r'   r(   r   rP   rU   r   r   r   r)   r#   r"   r   r   r   K      %%))+H/r"   r   c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)ShippingMethodLanguageListiP  r   r   r#   N)r%   r&   r'   r(   ShippingMethodLanguagerP   rU   r    ShippingMethodLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r  P  /    %--113H7*+O*L9r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShippingMethodLanguageDetailiW  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  W      %--113H7r"   r  c                   0    \ rS rSr\r\r\/r	/ SQr
S rSrg)ShippingCostListi\  )r   r   r   c                     U R                   R                  R                  S5      nUS:X  a  [        R                  R                  5       $ [        R                  R                  SS9$ r  )r   rf   r   r   rP   rU   rQ   r  s     r   r   ShippingCostList.get_querysetb  sS    ll//33MB#''++--''...>>r"   r#   N)r%   r&   r'   r(   r   r   r4   r  r   rL  rM  r   r)   r#   r"   r   r  r  \  s!    -,*+OF?r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShippingCostDetailij  r#   N)r%   r&   r'   r(   r   rP   rU   r   r   r   r)   r#   r"   r   r  r  j  rn  r"   r  c                   H    \ rS rSr\r\R                  \/r	SS/r
S/rS rSrg)DepartmentListio  r  departmentId#department_departmentlanguage__namec                 
   U R                   R                  R                  S5      nUS:X  a-  [        R                  R                  5       R                  S5      $ [        R                  R                  SS9R                  S5      $ )Nr   r  r   T	isVisiblez-keyName)r   rf   r   
DepartmentrP   rU   r   rQ   r  s     r   r   DepartmentList.get_querysetz  si    ll//33MB#%%))+44T::%%,,t,<EEjQQr"   r#   N)r%   r&   r'   r(   DepartmentSerializerr   r  r  r   rL  rM  r  r   r)   r#   r"   r   r  r  o  s9    +#002EFO
 	.MRr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)Departmentetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    rW  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)DepartmentLanguageListi  r  r   r#   N)r%   r&   r'   r(   DepartmentLanguagerP   rU   r   DepartmentLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    rN  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)DepartmentLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r!  r!    rQ  r"   r!  c                   P    \ rS rSr\r\R                  \/r	S/r
S/rS rSS jrSrg)		BrandListi  r  brand_brandlanguage__namec                     U R                   R                  R                  S5      nUS:X  a  [        R                  R                  5       $ [        R                  R                  SS9$ )Nr   r  Tr  )r   rf   r   BrandrP   rU   rQ   r  s     r   r   BrandList.get_queryset  sO    ll//33MB#==$$&&==''$'77r"   Nc           
          U R                   R                  R                  S5      nUGbU  U R                   R                  R                  S5      n[        R                  " UR                  S5      5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       nUR                  XR                  5       S9  U R                   R                  R                  S5      n	[        USU	UR                  5       S SUR                  5       -   S9n
U R                   R                  R                  S	5      nU R                   R                  R                  S
5      nUR                  XUS9  g UR                  5         g )Nr  r  r  r  r  r  r  r  r   r!  r  r   r!  r#  )r   r   r  r  r  rk   r-  r.  r/  r  r0  r1  r2  s                r   r3  BrandList.perform_create  s7   ll''++M:"!\\..223CDN##K$6$6w$?@D**T"C**S/CZZ\FHHV$8$8$:H;<<$$((5D+"[[]%(<(<(>>H "\\..22=AN!\\..22=ANOO   OOr"   r#   r5  )r%   r&   r'   r(   BrandSerializerr   r  r  r   rL  rM  r  r   r3  r)   r#   r"   r   r#  r#    s3    &#002EFO!{01M8r"   r#  c                   V    \ rS rSr\R
                  R                  5       r\r	SS jr
Srg)BrandDetaili5  Nc           
         U R                   R                  R                  S5      nUGb  U R                   R                  R                  S5      nU R                   R                  R                  S5      n[        R                  " UR                  S5      5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       n	UR                  XR                  5       S9  U R                   R                  R                  S5      n
[        U	SU
U	R                  5       S SUR                  5       -   S	9nU R                   R                  R                  S
5      nUbx  [        R                  R!                  ["        S-   [%        U5      -   S-   U-   S-   U-   5      (       a5  [        R&                  " ["        S-   [%        U5      -   S-   U-   S-   U-   5        U R                   R                  R                  S5      nU R                   R                  R                  S5      nUR                  XUS9  g UR                  5         g )Nr  r;  r  r  r  r  r  r  r  r   z/brands/brand_r=  r>  r   r!  r)  r?  )r   r   r  r  r;  r  rk   r-  r.  r/  r  r0  r   r1  r2  s                  r   rE  BrandDetail.perform_update9  s   ll''++M:"<<,,00@L!\\..223CDN##K$6$6w$?@D**T"C**S/CZZ\FHHV$8$8$:H;<<$$((5D+"[[]%(<(<(>>H ""&&t,B'77>>&'"g  #	#
  %%  II"*+b'"  '	'
  )) "\\..22=AN!\\..22=ANOO   OOr"   r#   r5  )r%   r&   r'   r(   r&  rP   rU   r   r+  r   rE  r)   r#   r"   r   r-  r-  5  s    }}  "H&0r"   r-  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)BrandLanguageListil  brandIdr   r#   N)r%   r&   r'   r(   BrandLanguagerP   rU   r   BrandLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r1  r1  l  r  r"   r1  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)BrandLanguageDetailis  r#   N)r%   r&   r'   r(   r3  rP   rU   r   r4  r   r)   r#   r"   r   r6  r6  s  r  r"   r6  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionStatusListix  r#   Nr%   r&   r'   r(   SubscriptionStatusrP   rU   r   SubscriptionStatusSerializerr   r)   r#   r"   r   r8  r8  x  rQ  r"   r8  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionStatusDetaili}  r#   Nr9  r#   r"   r   r=  r=  }  rQ  r"   r=  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)SubscriptionStatusLanguageListi  subscriptionStatusIdr   r#   N)r%   r&   r'   r(   SubscriptionStatusLanguagerP   rU   r   $SubscriptionStatusLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r?  r?    /    )11557H;*+O.=r"   r?  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g) SubscriptionStatusLanguageDetaili  r#   N)r%   r&   r'   r(   rA  rP   rU   r   rB  r   r)   r#   r"   r   rE  rE        )11557H;r"   rE  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionOptionListi  r#   Nr%   r&   r'   r(   SubscriptionOptionrP   rU   r   SubscriptionOptionSerializerr   r)   r#   r"   r   rH  rH    rQ  r"   rH  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionOptionDetaili  r#   NrI  r#   r"   r   rM  rM    rQ  r"   rM  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)SubscriptionOptionLanguageListi  subscriptionOptionIdr   r#   N)r%   r&   r'   r(   SubscriptionOptionLanguagerP   rU   r   $SubscriptionOptionLanguageSerializerr   r   rL  rM  r)   r#   r"   r   rO  rO    rC  r"   rO  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g) SubscriptionOptionLanguageDetaili  r#   N)r%   r&   r'   r(   rQ  rP   rU   r   rR  r   r)   r#   r"   r   rT  rT    rF  r"   rT  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/r/ SQrSrg)SubscriptionTypeListi  )rP  subscriptionOptionId__keyNamer   r#   N)r%   r&   r'   r(   SubscriptionTyperP   rU   r   SubscriptionTypeSerializerr   r   rL  rM  r)   r#   r"   r   rV  rV    s,    ''++-H1*+Or"   rV  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionTypeDetaili  r#   N)r%   r&   r'   r(   rX  rP   rU   r   rY  r   r)   r#   r"   r   r[  r[        ''++-H1r"   r[  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)SubscriptionTypeLanguageListi  subscriptionTypeIdr   r#   N)r%   r&   r'   r(   SubscriptionTypeLanguagerP   rU   r   "SubscriptionTypeLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r^  r^    s/    '//335H9*+O,l;r"   r^  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionTypeLanguageDetaili  r#   N)r%   r&   r'   r(   r`  rP   rU   r   ra  r   r)   r#   r"   r   rc  rc        '//335H9r"   rc  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TransactionTypeListi  r#   Nr%   r&   r'   r(   r   rP   rU   r   TransactionTypeSerializerr   r)   r#   r"   r   rf  rf    r  r"   rf  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TransactionTypeDetaili  r#   Nrg  r#   r"   r   rj  rj    r  r"   rj  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)TransactionTypeLanguageListi  r   r   r#   N)r%   r&   r'   r(   TransactionTypeLanguagerP   rU   r   !TransactionTypeLanguageSerializerr   r   rL  rM  r)   r#   r"   r   rl  rl    s/    &..224H8*+O+\:r"   rl  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TransactionTypeLanguageDetaili  r#   N)r%   r&   r'   r(   rm  rP   rU   r   rn  r   r)   r#   r"   r   rp  rp    s    &..224H8r"   rp  c                       \ rS rSr\rS rSrg)NewArrivalListi  c                    U R                   R                  R                  S5      nUS:X  a-  [        R                  R                  5       R                  S5      $ [        R                  R                  5       R                  S5      S S $ )Nr   r  -createdDaterN   )r   rf   r   
NewArrivalrP   rU   r   r  s     r   r   NewArrivalList.get_queryset  sk    ll//33MB#%%))+44^DD%%))+44^DRaHHr"   r#   N)r%   r&   r'   r(   NewArrivalSerializerr   r   r)   r#   r"   r   rr  rr    s    +Ir"   rr  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)NewArrivalDetaili  r#   N)r%   r&   r'   r(   ru  rP   rU   r   rw  r   r)   r#   r"   r   ry  ry    rW  r"   ry  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)NewArrivalLanguageListi  newArrivalIdr   r#   N)r%   r&   r'   r(   NewArrivalLanguagerP   rU   r   NewArrivalLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r{  r{    rN  r"   r{  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)NewArrivalLanguageDetaili  r#   N)r%   r&   r'   r(   r}  rP   rU   r   r~  r   r)   r#   r"   r   r  r    rQ  r"   r  c                   z    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rS/rSrg)
CouponListi  r_  coder#   N)r%   r&   r'   r(   CouponrP   rU   r   r   CouponSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    s;    ~~!!#,,U3H',*+Oxr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)CouponDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r        ~~!!#H'r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/r/ SQr/ SQrSrg)
ClientListi  r   )emailpasswordphone)	firstNamelastNamer  r  r#   N)r%   r&   r'   r(   ClientrP   rU   r   r   ClientSerializerr   r4   r  r  r  r   rL  rM  r  r)   r#   r"   r   r  r    sL    ~~!!#,,T2H',#002EFO
 @Mr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ClientDetaili
  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  
  r  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)ClientCreditCardListi  clientIdr#   N)r%   r&   r'   r(   ClientCreditCardrP   rU   r   ClientCreditCardSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s,    ''++-H1*+O"|r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ClientCreditCardDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r\  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)ClientAddressBookListi  r  r#   N)r%   r&   r'   r(   ClientAddressBookrP   rU   r   ClientAddressBookSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s,     ((,,.H2*+O"|r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ClientAddressBookDetaili"  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  "  r  r"   r  c                   z    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rS/rSrg)
WalletListi'  r  r#   N)r%   r&   r'   r(   WalletrP   rU   r   r   WalletSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  '  s;    ~~!!#,,Z8H',*+O"|r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)WalletDetaili0  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  0  r  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)TransactionListi5  r_  walletIdr   r#   N)r%   r&   r'   r(   TransactionrP   rU   r   r   TransactionSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  5  sA    ""&&(11%8H,,*+O"$78r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TransactionDetaili=  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  =  r  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)ShoppingCartListiB  r  r#   N)r%   r&   r'   r(   ShoppingCartrP   rU   r   ShoppingCartSerializerr   r   rL  rM  r)   r#   r"   r   r  r  B  s,    ##'')H-*+O"|r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShoppingCartDetailiI  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  I  rn  r"   r  c                   \    \ rS rSr\R
                  R                  5       r\r	\
r\/rS/rSrg)ShoppingCartDashboardListiN  r  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r4   r  r   rL  rM  r)   r#   r"   r   r  r  N  s2    ##'')H-,*+O"|r"   r  c                       \ rS rSr\R
                  " SSS9r\R
                  " SSS9r\R                  " SSS9r	 " S S	5      r
S
rg)PurchaseOrderFilteriV  r   gter  lookup_exprlt*purchaseorder_shippingitem__isValidAndPaidexactc                        \ rS rSr\r/ SQrSrg)PurchaseOrderFilter.Metai]  )r  r  couponIdr  
isCanceled
isRefundedr   isValidAndPaidr#   N)r%   r&   r'   r(   PurchaseOrdermodelfieldsr)   r#   r"   r   Metar  ]  s    	
r"   r  r#   N)r%   r&   r'   r(   r   DateTimeFiltercurrentDatepreviousDateBooleanFilterr  r  r)   r#   r"   r   r  r  V  sF    ((MuUK))]PTUL**?WN
 
r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/r\rS/rSrg)PurchaseOrderListik  r_  r   r#   N)r%   r&   r'   r(   r  rP   rU   r   r   r|   r   r4   r  r  r  r   rL  r  filterset_classr  r)   r#   r"   r   r  r  k  sJ    $$((*33E:H.,#002EFO)OFMr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PurchaseOrderDetailit  r#   N)r%   r&   r'   r(   r  rP   rU   r   r|   r   r)   r#   r"   r   r  r  t  r  r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rS/rSrg)SupplierListiy  r   r  r  r  r#   N)r%   r&   r'   r(   SupplierrP   rU   r   r   SupplierSerializerr   r4   r  r  r  r   rL  rM  r  r)   r#   r"   r   r  r  y  sP    ##%..t4H),#002EFO,HMr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SupplierDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r   r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)SupplierPhoneListi  r   r   r  r#   N)r%   r&   r'   r(   SupplierPhonerP   rU   r   r   SupplierPhoneSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    s@    $$((*33D9H.,*+O$g.r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SupplierPhoneDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)SupplierCreditCardListi  r   r#   N)r%   r&   r'   r(   SupplierCreditCardrP   rU   r   SupplierCreditCardSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s,    !))--/H3*+O$~r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SupplierCreditCardDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    rQ  r"   r  c                   f    \ rS rSr\R
                  R                  5       r\r	\
r\/rS/rSS jrSrg)SupplierDocumentListi  r   Nc           
         U R                   R                  R                  S5      nUGbG  [        R                  " UR                  S5      5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      n[        S-   n	[        S-   [        U5      -   n
[        R                  R                  U	5      S	:w  a  [        R                  " U	5        [        R                  R                  U
5      S	:w  a  [        R                  " U
5        U
S
-   U-   n[        USS9nUR                  U5        [        USUUR                  5       S US
-   UR!                  5       -   S9nU R                   R                  R                  S5      nU R                   R                  R                  S5      n["        R$                  R                  [        U5      S9nUR'                  UUUUUUS9  [        R(                  " U5        UR+                  5         g UR'                  5         g )NfileDocumentBase64r  r   fileDocumentNamecontentTypefileDocumentExtensionz/suppliers/z/suppliers/supplier_Tr=  zwb+)r  modefileDocumentr  r   r!  r   )fileNamer  r  r   r   r!  )r   rk   r   r$  r%  r&  r   rC  r@  rA  rB  mkdirr)  writer   r,  r+  r  rP   r*  rD  close)r   r   r  r  rk   r   r  r  r  
parentPath	childPathfilePathr  newFiler1  r2  suppliers                    r   r3  #SupplierDocumentList.perform_create  s    !\\..223GH)##$6$=$=g$FGD**..|<J#||00445GH,,++//>K$(LL$5$5$9$9:Q$R!#m3J"%;;c*oMIww~~j)T1$ww~~i(D0# 3)99HXE2DJJt*)%YY[(3.1F1L1L1NNG "\\..22=AN!\\..22=AN''++s:+?HOO)'$#**   IIhJJLOOr"   r#   r5  )r%   r&   r'   r(   SupplierDocumentrP   rU   r   SupplierDocumentSerializerr   r4   r  r   rL  rM  r3  r)   r#   r"   r   r  r    s7    ''++-H1,*+O$~2r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SupplierDocumentDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r\  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)SubscriptionListi  r_  r   r_  r#   N)r%   r&   r'   r(   SubscriptionrP   rU   r   r   SubscriptionSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    sA    ##'')2259H-,*+O$&:;r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SubscriptionDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    rn  r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rS/rSrg)DeliveryManListi  r   r  r  r  r#   N)r%   r&   r'   r(   DeliveryManrP   rU   r   r   DeliveryManSerializerr   r4   r  r  r  r   rL  rM  r  r)   r#   r"   r   r  r    sP    ""&&(11$7H,,#002EFO,HMr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)DeliveryManDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                   ^    \ rS rSr\R
                  R                  5       r\r	\
r\/rSS/rSrg)DeliveryManPhoneListi  deliveryManIdr  r#   N)r%   r&   r'   r(   DeliveryManPhonerP   rU   r   DeliveryManPhoneSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    s5    ''++-H1,*+O'1r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)DeliveryManPhoneDetaili  r#   N)r%   r&   r'   r(   r	  rP   rU   r   r
  r   r)   r#   r"   r   r  r    r\  r"   r  c                   z    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rS/rSrg)ShippingItemListi  r_  purchaseOrderIdr#   N)r%   r&   r'   r(   ShippingItemrP   rU   r   r   ShippingItemSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    s>    ##'')2259H-,*+O)*r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShippingItemDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    rn  r"   r  c                   l    \ rS rSr\R
                  " SSS9r\R
                  " SSS9r " S S5      rSr	g	)
ShippingAddressFilteri#  r   r  r  r  c                        \ rS rSr\r/ SQrSrg)ShippingAddressFilter.Metai'  )shippingItemIdtrackNumberr  r  r#   N)r%   r&   r'   r(   ShippingAddressr  r  r)   r#   r"   r   r  r  '  s    
r"   r  r#   N
r%   r&   r'   r(   r   r  r  r  r  r)   r#   r"   r   r  r  #  s1    ((MuUK))]PTUL
 
r"   r  c                   ,    \ rS rSr\r\r\/r	\
rS rSrg)ShippingAddressListi1  c                    U R                   R                  R                  S5      nUb9  [        R                  R                  US9R                  SS9R                  S5      $ [        R                  R                  SS9R                  S5      $ )Nr  )r  F)+shippingItemId__purchaseOrderId__isCanceled-shippingItemId)r   rf   r   r  rP   rQ   r   )r   r  s     r   r    ShippingAddressList.get_queryset7  s    ll//33MB"''..;.GEJ+, #**11<A 2 h()*r"   r#   N)r%   r&   r'   r(   ShippingAddressSerializerr   r4   r  r   rL  r  r  r   r)   r#   r"   r   r  r  1  s     0,*+O+O*r"   r  c                   j    \ rS rSr\R
                  R                  5       R                  S5      r\	r
Srg)ShippingAddressDetailiE  r   r#   N)r%   r&   r'   r(   r  rP   rU   r   r   r"  r   r)   r#   r"   r   r$  r$  E  s(    &&**,556GHH0r"   r$  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)	TrackListiJ  r_  shippingAddressIdr  r#   N)r%   r&   r'   r(   TrackrP   rU   r   r   TrackSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r&  r&  J  s>    }}  "++E2H&,*+O+_=r"   r&  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)TrackDetailiR  r#   N)r%   r&   r'   r(   r(  rP   rU   r   r)  r   r)   r#   r"   r   r+  r+  R  r  r"   r+  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\/rSS/r\rSrg)SalesOrderListiW  rt  r   r  r#   N)r%   r&   r'   r(   
SalesOrderrP   rU   r   r   SalesOrderSerializerr   r   rL  rM  r4   r  r)   r#   r"   r   r-  r-  W  sA    !!%%'00@H+*+O$&67,r"   r-  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SalesOrderDetaili_  r#   N)r%   r&   r'   r(   r.  rP   rU   r   r/  r   r)   r#   r"   r   r1  r1  _  rW  r"   r1  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)ItemKeyNameListid  r  r#   N)r%   r&   r'   r(   rO   rP   rU   r   ItemKeyNameSerializerr   r   rL  rM  r)   r#   r"   r   r3  r3  d  s*    ||!H,*+O!{r"   r3  c                   j   \ rS rSr\R
                  " SSS9r\R                  " SSS9r\R
                  " SSS9r	\R
                  " SSS9r
\R
                  " SSS9r\R
                  " S	SS9r\R
                  " S	SS9r\R                  " S
S\R                   R#                  5       S9r " S S5      rSrg)
ItemFilterik  
totalViewsr  r  r   item_sku__amountlterF   rJ   r2  r   r  to_field_namer   c                        \ rS rSr\r/ SQrSrg)ItemFilter.Metai{  )r   r  rD   isTop
isFavoriteisMostDiscountisMostViewedisNewArrivalisElectronicr7  r  r2  r   r|  r   r8  rb   rc   r`   ra   amountr#   N)r%   r&   r'   r(   rO   r  r  r)   r#   r"   r   r  r=  {  s    
r"   r  r#   N)r%   r&   r'   r(   r   NumberFilterr7  
DateFilterr   rD  r`   ra   rb   rc   ModelMultipleChoiceFilterr&  rP   rU   r2  r  r)   r#   r"   r   r6  r6  k  s    %%5QJ$$5QK!!-?USF##/@eTH##/@eTH&&'UK &&'UK //D5==;L;L;NG
 
r"   r6  c                   J    \ rS rSr\r\R                  \/r	\
r/ SQr\rS rSrg)ItemListi  )item_itemlanguage__namer   r  c                 
   U R                   R                  R                  S5      nUS:X  a  [        R                  R                  S5      $ [        R                  R                  SS9R                  S5      R                  5       $ )Nr   r  rt  TrC   )r   rf   r   rO   rP   r   rQ   distinctr  s     r   r   ItemList.get_queryset  si    ll//33MB#<<((88 ##t#4==nMVVXr"   r#   N)r%   r&   r'   r(   ItemSerializerr   r  r  r   rL  r6  r  r  r@   r  r   r)   r#   r"   r   rI  rI    s.    %#002EFO O@M0r"   rI  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)
ItemDetaili  r#   N)r%   r&   r'   r(   rO   rP   rU   r   rN  r   r)   r#   r"   r   rP  rP    r  r"   rP  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)ItemLanguageListi  r   r   r#   N)r%   r&   r'   r(   ItemLanguagerP   rU   r   ItemLanguageSerializerr   r   rL  rM  r)   r#   r"   r   rR  rR    r  r"   rR  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ItemLanguageDetaili  r#   N)r%   r&   r'   r(   rS  rP   rU   r   rT  r   r)   r#   r"   r   rV  rV    rn  r"   rV  c                   \    \ rS rSr\R
                  R                  5       r\r	\
/rS/r\rSrg)FeatureBulletListi  r   r#   N)r%   r&   r'   r(   FeatureBulletrP   rU   r   FeatureBulletSerializerr   r   rL  rM  r4   r  r)   r#   r"   r   rX  rX    s2    $$((*H.*+O z,r"   rX  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)FeatureBulletDetaili  r#   N)r%   r&   r'   r(   rY  rP   rU   r   rZ  r   r)   r#   r"   r   r\  r\    r  r"   r\  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)FeatureBulletLanguageListi  featureBulletIdr   r#   N)r%   r&   r'   r(   FeatureBulletLanguagerP   rU   r   FeatureBulletLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r^  r^    r  r"   r^  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)FeatureBulletLanguageDetaili  r#   N)r%   r&   r'   r(   r`  rP   rU   r   ra  r   r)   r#   r"   r   rc  rc    r  r"   rc  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)EligibleListi  r   r  r#   N)r%   r&   r'   r(   EligiblerP   rU   r   EligibleSerializerr   r   rL  rM  r)   r#   r"   r   re  re    s0    ##%H)*+O "23r"   re  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)EligibleDetaili  r#   N)r%   r&   r'   r(   rf  rP   rU   r   rg  r   r)   r#   r"   r   ri  ri    r   r"   ri  c                   j    \ rS rSr\R
                  R                  5       R                  S5      r\	r
Srg)SKUCostListi  r_  r#   N)r%   r&   r'   r(   SKUCostrP   rU   r   r   SKUCostSerializerr   r)   r#   r"   r   rk  rk    s%    ""$--e4H(r"   rk  c                       \ rS rSr\rS rSrg)SKUCostDetaili  c                 
   U R                   R                  R                  S5      nUS:X  a-  [        R                  R                  5       R                  S5      $ [        R                  R                  SS9R                  S5      $ )Nr   r  r_  Tr   )r   rf   r   rl  rP   rU   r   rQ   r  s     r   r   SKUCostDetail.get_queryset  si    ll//33MB#??&&(11%88 &&&6??Fr"   r#   N)r%   r&   r'   r(   rm  r   r   r)   r#   r"   r   ro  ro    s    (r"   ro  c                       \ rS rSr\R
                  " SSS9r\R
                  " SSS9r\R
                  " SSS9r\R
                  " SSS9r	 " S	 S
5      r
Srg)	SKUFilteri  rD  r9  r  rr   r  rs   gtc                        \ rS rSr\r/ SQrSrg)SKUFilter.Metai  )r  discount_gtrH   rI   rD  r   itemId__departmentIditemId__brandIditemId__supplierIditemId__newArrivalIditemId__isTopitemId__isFavoriteitemId__isApprovedr#   N)r%   r&   r'   r(   rt   r  r  r)   r#   r"   r   r  rv    s    
r"   r  r#   N)r%   r&   r'   r(   r   rE  rD  rH   rI   rw  r  r)   r#   r"   r   rs  rs    sT    !!X5IF$$UKI$$UKI&&*$OK
 
r"   rs  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/r\r/ SQrSrg)SKUListi  r_  )r   r  r  r#   N)r%   r&   r'   r(   rt   rP   rU   r   r   r   r   ro   r  r  r  r   rL  rs  r  r  r)   r#   r"   r   r  r    sD    {{ ))%0H$/#002EFOO-Mr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)	SKUDetaili  r#   N)r%   r&   r'   r(   rt   rP   rU   r   r   r   r)   r#   r"   r   r  r    s    {{ H$r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rSS/rS	S jrSrg)
SKUImageListi  r_  r   r   isDownloadedNc           
         U R                   R                  R                  S5      nS nUGbf  U R                   R                  R                  S5      n[        R                  " UR                  S5      5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       n	UR                  XR                  5       S9  U R                   R                  R                  S5      n
[        U	SU
U	R                  5       S SUR                  5       -   S9nU R                   R                  R                  S	5      n[        R                  R                  [!        U5      S
9nUR                  UUS9nUR                  5         g U R                   R                  R                  S	5      n[        R                  R                  [!        U5      S
9nUR                  US9nUR                  5         g )Nr  r  r  r  r  r  r  r  r   r   )r  r   )r   )r   rk   r   r$  r%  r&  r'  r(  r   r)  r*  r+  r   r,  rt   rP   rC  )r   r   r  r  r0  r  rk   r-  r.  r/  r  r   r   s                r   r3  SKUImageList.perform_create  s   ll''++M:"!\\..223CDN##K$6$6w$?@D**T"C**S/CZZ\FHHV$8$8$:H;<<$$((5D+"[[]%(<(<(>>H LL%%))'2E++//SZ/0C?? # D IIKLL%%))'2E++//SZ/0C?? # D IIKr"   r#   r5  )r%   r&   r'   r(   SKUImagerP   rU   r   r   SKUImageSerializerr   r4   r  r  r  r   rL  r  rM  r3  r)   r#   r"   r   r  r    sW    ##%..u5H),#002EFO7OM&0&r"   r  c                   V    \ rS rSr\R
                  R                  5       r\r	SS jr
Srg)SKUImageDetailiG  Nc           
         U R                   R                  R                  S5      nUGb  U R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      nU R                   R                  R                  S5      n	[        R                  R                  [        U	5      S9n
[        R                  " U5      n[        R                  " U5      n[        R                  " U5      n[        R                  " 5       nUR                  XR                  5       S	9  U
R                  n[        US
UUR!                  5       S SUR                  5       -   S9nUb  ["        R$                  R'                  [(        S-   [        U
R*                  R,                  5      -   S-   [        U
R,                  5      -   S-   U-   S-   U-   5      (       ab  ["        R.                  " [(        S-   [        U
R*                  R,                  5      -   S-   [        U
R,                  5      -   S-   U-   S-   U-   5        UR                  X_UXzS9  g UR                  5         g )Nr  r  r  r;  r  r   r   r   r  r  r  r  z/items/item_z/sku_z/images/r>  )r  r  r  	extensionr   )r   rk   r   rt   rP   rC  r$  r%  r'  r(  r   r)  r*  r+  r  r   r,  r@  rA  rB  r   r   r   rD  )r   r   r  r  r  r  r;  r  r   r   selectedSKUrk   r-  r.  r/  r  r0  s                    r   rE  SKUImageDetail.perform_updateK  s   ll''++M:"||((,,Z8H<<,,00@L<<,,00@L!\\..223CDN""&&t,BLL%%))'2E++//SZ/8K ##K0D**T"C**S/CZZ\FHHV$8$8$:H;##D+"[[]%(<(<(>>H '77>>$%+,,//01  +..)	*
 !! ##  %%
 
 II"()k003345 "" knn-	.
 %% ''  ))
 OO<hcqO  COOr"   r#   r5  )r%   r&   r'   r(   r  rP   rU   r   r  r   rE  r)   r#   r"   r   r  r  G  s!    ##%H)8r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)SKUOptionListi  r   r#   N)r%   r&   r'   r(   	SKUOptionrP   rU   r   SKUOptionSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s,      $$&H**+Oyr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SKUOptionDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)SKUOptionLanguageListi  skuOptionIdr   r#   N)r%   r&   r'   r(   SKUOptionLanguagerP   rU   r   SKUOptionLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    r  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SKUOptionLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)SKUDescriptionListi  r   r#   N)r%   r&   r'   r(   SKUDescriptionrP   rU   r   SKUDescriptionSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s,    %%))+H/*+Oyr"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SKUDescriptionDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)SKUDescriptionLanguageListi  skuDescriptionIdr   r#   N)r%   r&   r'   r(   SKUDescriptionLanguagerP   rU   r    SKUDescriptionLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r    r  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SKUDescriptionLanguageDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r	  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)ItemSubscriptionListi  r_  r   r_  r#   N)r%   r&   r'   r(   ItemSubscriptionrP   rU   r   r   ItemSubscriptionSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    sA    ''++-66u=H1,*+O "67r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ItemSubscriptionDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r\  r"   r  c                   x    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\/rSS/rSrg)ShoppingCartItemListi  r_  shoppingCartIdr   r#   N)r%   r&   r'   r(   ShoppingCartItemrP   rU   r   r   ShoppingCartItemSerializerr   r   rL  rM  r)   r#   r"   r   r  r    s:    ''++-66u=H1*+O('2r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ShoppingCartItemDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    r\  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)PurchaseShippingItemListi  r   r  r   r#   N)r%   r&   r'   r(   PurchaseShippingItemrP   rU   r   r   PurchaseShippingItemSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r    s@    #++//1::4@H5,*+O('2r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PurchaseShippingItemDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    ry  r"   r  c                   l    \ rS rSr\R
                  " SSS9r\R
                  " SSS9r " S S5      rSr	g	)
RequestReturnFilteri  r   r  r  r  c                        \ rS rSr\r/ SQrSrg)RequestReturnFilter.Metai  )r  purchaseShippingItemId&purchaseShippingItemId__shippingItemIdreturnStatusId__keyNamer  r  r   r#   N)r%   r&   r'   r(   RequestReturnr  r  r)   r#   r"   r   r  r    s    
r"   r  r#   Nr  r#   r"   r   r  r    s1    ((MuUK))]PTUL

 

r"   r  c                   x    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/r\rSrg)RequestReturnListi  r_  r#   N)r%   r&   r'   r(   r  rP   rU   r   r   RequestReturnSerializerDetailr   r4   r  r   rL  r  r  r)   r#   r"   r   r  r    s:    $$((*33E:H4,*+O)Or"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RequestReturnDetaili  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r    s    $$((*H4r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)SalesOrderItemListi 	  r   salesOrderIdr   r#   N)r%   r&   r'   r(   SalesOrderItemrP   rU   r   r   SalesOrderItemSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r   	  s@    %%))+44T:H/,*+O&0r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SalesOrderItemDetaili	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  	  r  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)FavoriteListi	  r   r  r   r#   N)r%   r&   r'   r(   FavoriterP   rU   r   r   FavoriteSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  	  s@    ##%..t4H),*+O"H-r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)FavoriteDetaili	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  	  r   r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)ClientItemRateReviewListi	  r_  r  r   r#   N)r%   r&   r'   r(   ClientItemRateReviewrP   rU   r   r   ClientItemRateReviewSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  	  s@    #++//1::5AH5,*+O"H-r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ClientItemRateReviewDetaili"	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  "	  ry  r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)ClientSupplierRateReviewListi'	  r_  r  r   r#   N)r%   r&   r'   r(   ClientSupplierRateReviewrP   rU   r   r   "ClientSupplierRateReviewSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  '	  s@    '//335>>uEH9,*+O"L1r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)ClientSupplierRateReviewDetaili/	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  /	  rd  r"   r  c                   z    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rS/rSrg)FeedbackListi4	  r_  r  r#   N)r%   r&   r'   r(   FeedbackrP   rU   r   r   FeedbackSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  4	  s=    ##%..u5H),*+O"|r"   r  c                   j    \ rS rSr\R
                  R                  5       R                  S5      r\	r
Srg)FeedbackDetaili<	  r_  r#   N)r%   r&   r'   r(   r  rP   rU   r   r   r  r   r)   r#   r"   r   r  r  <	  s'    ##%..u5H)r"   r  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/rSS/rSrg)RequestListiA	  r_  r  isDoner#   N)r%   r&   r'   r(   RequestrP   rU   r   r   RequestSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   r  r  A	  s>    ""$--e4H(,*+O"H-r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RequestDetailiI	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  I	  r  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyTypeListiN	  r#   Nr%   r&   r'   r(   
PolicyTyperP   rU   r   PolicyTypeSerializerr   r)   r#   r"   r   r  r  N	  rW  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyTypeDetailiS	  r#   Nr  r#   r"   r   r  r  S	  rW  r"   r  c                   |    \ rS rSr\R
                  " SS\R                  R                  5       S9r	 " S S5      r
Srg)	PolicyHeaderFilteriX	  policyTypeId__namer  r:  c                        \ rS rSr\rSS/rSrg)PolicyHeaderFilter.Metai_	  policyTypeIdpolicyTypeNamer#   N)r%   r&   r'   r(   PolicyHeaderr  r  r)   r#   r"   r   r  r  _	  s    
r"   r  r#   N)r%   r&   r'   r(   r   rG  r  rP   rU   r  r  r)   r#   r"   r   r  r  X	  s4    66'##'')N
 
r"   r  c                   V    \ rS rSr\R
                  R                  5       r\r	\
/r\rSrg)PolicyHeaderListig	  r#   N)r%   r&   r'   r(   r  rP   rU   r   PolicyHeaderSerializerr   r   rL  r  r  r)   r#   r"   r   r   r   g	  s)    ##'')H-*+O(Or"   r   c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyHeaderDetailio	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  o	  rn  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)PolicyHeaderLanguageListit	  policyHeaderIdr   r#   N)r%   r&   r'   r(   PolicyHeaderLanguagerP   rU   r   PolicyHeaderLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r  t	  rv  r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyHeaderLanguageDetaili{	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r
  r
  {	  ry  r"   r
  c                   X    \ rS rSr\R
                  R                  5       r\r	\
/rS/rSrg)PolicyDescriptionListi	  r  r#   N)r%   r&   r'   r(   PolicyDescriptionrP   rU   r   PolicyDescriptionSerializerr   r   rL  rM  r)   r#   r"   r   r  r  	  s-     ((,,.H2*+O()r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyDescriptionDetaili	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  	  r  r"   r  c                   Z    \ rS rSr\R
                  R                  5       r\r	\
/rSS/rSrg)PolicyDescriptionLanguageListi	  policyDescriptionIdr   r#   N)r%   r&   r'   r(   PolicyDescriptionLanguagerP   rU   r   #PolicyDescriptionLanguageSerializerr   r   rL  rM  r)   r#   r"   r   r  r  	  s/    (00446H:*+O-|<r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PolicyDescriptionLanguageDetaili	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  	  s    (00446H:r"   r  c                   j    \ rS rSr\R
                  R                  5       R                  S5      r\	r
Srg)RechargeCostListi	  r_  r#   N)r%   r&   r'   r(   RechargeCostrP   rU   r   r   RechargeCostSerializerr   r)   r#   r"   r   r  r  	  s'    ##'')2259H-r"   r  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RechargeCostDetaili	  r#   N)r%   r&   r'   r(   r  rP   rU   r   r  r   r)   r#   r"   r   r  r  	  rn  r"   r  c                   l    \ rS rSr\R
                  " SSS9r\R
                  " SSS9r " S S5      rSr	g	)
RechargeFilteri	  r   r  r  r9  c                        \ rS rSr\r/ SQrSrg)RechargeFilter.Metai	  )	sessionIdr  r  	startDateendDater#   N)r%   r&   r'   r(   Recharger  r  r)   r#   r"   r   r  r!  	  s    
r"   r  r#   N
r%   r&   r'   r(   r   r  r#  r$  r  r)   r#   r"   r   r  r  	  s0    &&-USI$$5QG	
 	
r"   r  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/r\rS/rSrg)RechargeListi	  r_  r  r#   N)r%   r&   r'   r(   r%  rP   rU   r   r   r{   r   r4   r  r  r  r   rL  r  r  r  r)   r#   r"   r   r(  r(  	  sJ    ##%..u5H),#002EFO$O"OMr"   r(  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)RechargeDetaili	  r#   N)r%   r&   r'   r(   r%  rP   rU   r   r{   r   r)   r#   r"   r   r*  r*  	  r   r"   r*  c                   l    \ rS rSr\R
                  " SSS9r\R
                  " SSS9r " S S5      rSr	g	)
PaymentFilteri	  r   r  r  r9  c                        \ rS rSr\r/ SQrSrg)PaymentFilter.Metai	  )r   r  subscriptionId
rechargeIdr#  r  r$  r#   N)r%   r&   r'   r(   r   r  r  r)   r#   r"   r   r  r.  	  s    
r"   r  r#   Nr&  r#   r"   r   r,  r,  	  s0    &&-USI$$5QG
 
r"   r,  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/r\rS/rSrg)PaymentListi	  r_  descriptionDetailr#   N)r%   r&   r'   r(   r   rP   rU   r   r   PaymentSerializerr   r4   r  r  r  r   rL  r,  r  r  r)   r#   r"   r   r2  r2  	  sI    ""$--e4H(,#002EFO#O()Mr"   r2  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)PaymentDetaili	  r#   N)r%   r&   r'   r(   r   rP   rU   r   r4  r   r)   r#   r"   r   r6  r6  	  r  r"   r6  c                   H    \ rS rSr\r\r\R                  \
/r\rS/rS rSrg)SupplierPaymentListi	  r3  c                     U R                   R                  R                  S5      nUbA  [        R                  R                  [        US9[        US9-  5      R                  S5      nU$ [        SS05      e)Nr   r   r   r_  r   r   )	r   rf   r   r   rP   rQ   r   r   r   )r   r   results      r   r    SupplierPaymentList.get_queryset	  sq    \\..22<@
!__++:6z:; huo  MG%9:;;r"   r#   N)r%   r&   r'   r(   r4  r   r4   r  r  r  r   rL  r,  r  r  r   r)   r#   r"   r   r8  r8  	  s1    (,#002EFO#O()M	<r"   r8  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  /rS/rSrg)AccessoryListi	  r   r  r#   N)r%   r&   r'   r(   	AccessoryrP   rU   r   r   AccessorySerializerr   r4   r  r  r  rL  r  r)   r#   r"   r   r=  r=  	  sB      $$&//5H*,#001OHMr"   r=  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)AccessoryDetaili	  r#   N)r%   r&   r'   r(   r>  rP   rU   r   r?  r   r)   r#   r"   r   rA  rA  	  r  r"   rA  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rSrg)AccessoryTransactionListi 
  r_  r   accessoryIdr#   N)r%   r&   r'   r(   AccessoryTransactionrP   rU   r   r   AccessoryTransactionSerializerr   r4   r  r  r  r   rL  rM  r)   r#   r"   r   rC  rC   
  sI    #++//1::5AH5,#002EFO+];r"   rC  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)AccessoryTransactionDetaili
  r#   N)r%   r&   r'   r(   rE  rP   rU   r   rF  r   r)   r#   r"   r   rH  rH  
  ry  r"   rH  c                       \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\R                  \/rSS/rS/rSrg)EmployeeListi
  r   r  r  fullNamer#   N)r%   r&   r'   r(   EmployeerP   rU   r   r   EmployeeSerializerr   r4   r  r  r  r   rL  rM  r  r)   r#   r"   r   rJ  rJ  
  sS    ##%..t4H),#002EFO,Mr"   rJ  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)EmployeeDetaili
  r#   N)r%   r&   r'   r(   rL  rP   rU   r   rM  r   r)   r#   r"   r   rO  rO  
  r   r"   rO  c                   |    \ rS rSr\R
                  R                  5       R                  S5      r\	r
\r\/r/ SQrSrg)SystemTrafficListi
  rt  )countrycitystatedeviceIPopenFromr#   N)r%   r&   r'   r(   SystemTrafficrP   rU   r   r   SystemTrafficSerializerr   r4   r  r   rL  rM  r)   r#   r"   r   rQ  rQ  
  s;    $$((*33NCH.,*+OKr"   rQ  c                   L    \ rS rSr\R
                  R                  5       r\r	Sr
g)SystemTrafficDetaili%
  r#   N)r%   r&   r'   r(   rW  rP   rU   r   rX  r   r)   r#   r"   r   rZ  rZ  %
  r  r"   rZ  )r$  r'  r@  PILr   r	   r   snow_flake.modelssnow_flake.serializersdjango_filters.rest_frameworkr   r   r   r  django_filtersrest_framework.responser
   django.db.modelsr   django.core.files.uploadedfiler   rest_framework.exceptionsr   django.viewsr   django.httpr   r   snow_flake_api.settingsr   r   r   BaseAuthenticationr   r+   PageNumberPaginationr4   r=   r@   ro   ListAPIViewrw   r   ListCreateAPIViewr   RetrieveUpdateDestroyAPIViewr   r   r	  r  r9  rH  rP  rS  rY  r[  rf  rj  rp  rr  rx  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-  r1  r6  r8  r=  r?  rE  rH  rM  rO  rT  rV  r[  r^  rc  rf  rj  rl  rp  rr  ry  r{  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  	FilterSetr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r$  r&  r+  r-  r1  r3  r6  rI  rP  rR  rV  rX  r\  r^  rc  re  ri  rk  ro  rs  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,  r2  r6  r8  r=  rA  rC  rH  rJ  rO  rQ  rZ  r#   r"   r   <module>rm     s    	 	  #  $ = % 2 4 ,  ? .  $  . * %D.;; DF><< FJ;; 
 ? ? Z

 ? ? Z
z8
z>> 8
v@<,, @<F{
t {
|*8-- **X:: *
;8-- ;*X:: *
(X// (V?x<< ?D6X77 64xDD 4
,X// ,
,x<< ,
A(44 AAHAA A.x11 .
.>> .
8x99 86!F!F 6l+H.. +
+h;; +
5H66 53hCC 3R.x11 .
.>> .
8x99 86!F!F 6
-h00 -
-== -
7h88 75 E E 5
022 0/(?? /
9 : : 97("G"G 7
.x11 .
.>> .
8x99 86!F!F 6
$(,, $)H99 )
3(44 31HAA 1
** '(77 '
122 1/(?? /
x)) &66 &
0x11 0.>> .

A33 
A08@@ 0
:!;!; :88#H#H 8
?x11 ?.>> .
RX// RH,h;; ,X6X77 64xDD 4
'** 'T4(77 4n122 1/(?? /
4X77 4
4xDD 4
>X%?%? ><x'L'L <
4X77 4
4xDD 4
>X%?%? ><x'L'L <
855 2XBB 2
<8#=#= <:X%J%J :
1(44 1
1HAA 1
;("<"< ;9H$I$I 9
IX// I,x<< ,6X77 64xDD 4
 ++  (888 (

@++ 
@(888 (
$855 $2XBB 2
$H66 $3hCC 3
$++ $(888 (
9h00 9-== -
$x11 $.>> .
$ : : $
'++ 
*22 /(?? /
8-- *X:: *
/22 //(?? /
&X77 &4xDD 4
9855 9x2XBB 2
<x11 <.>> .
h00 -== -
2855 22XBB 2$+x11 +.>> .

G-- 
*(44 *(1HAA 1
>** >'(77 '
-X// -,x<< ,
#h** #(
"" (
Vx)) "&66 &
0x11 0.>> .
-22 -/(?? /
9 : : 97("G"G 748-- 4*X:: *)(,, )
H99 

!! 
2.h(( .%55 %
.8-- .b<X:: <D!H.. !+h;; +
5H66 53hCC 3!33 !08@@ 0
:!;!; :88#H#H 8
8855 82XBB 2
3855 32XBB 2
3x99 36!F!F 6

'++ 
"*22 *5(?? 5
133 108@@ 0
.8-- .*X:: *
.x99 .6!F!F 6
28#=#= 2:X%J%J :
$8-- $*X:: *
.(,, .)H99 )
,X// ,
,x<< ,

** 
)x11 ).>> .
8x99 86!F!F 6
*H66 *3hCC 3
=H$>$> =;h&K&K ;.x11 ..>> .
W&& 
 $8-- $*X:: *

G%% 
**(,, *)H99 )
<(.. <&H.. +h;; +
<x99 <6!F!F 6
8-- *X:: *
L22 L/(?? /r"   