
    \gS                         d dl mZmZmZ d dlmZ d dlmZ d dlZ	d dl
Z
 e       Zej                  edgddgdg       dZd	Zd
Z eeee      Zd Zej%                  d       ed      fdefd       Zy)    )FastAPIFile
UploadFile)CORSMiddleware)TableN*T)allow_originsallow_credentialsallow_methodsallow_headerszRpatxeXDdZuJZIfTr7.734a61f1569b3a858451002068d5e0a7a47c23cfb96faa101284dc09a65f341aapphI6IdboDIR9P0l
ProductsV2c                 b    t        j                  |       s| t        d      t        d      fv ry| S )z)Convert problematic float or NaN to None.infz-infN)pdisnafloat)values    /var/www/html/lionshead/main.pysanitizer      s)    	wwu~5<v"??L    z/upload-sdr.filec           	         K   	 | j                          d {   }t        j                  t        j                  |j                  d                  }d}|j                         D ]y  \  }}t        |j                  d            }|s$i d|dt        |j                  d            dt        |j                  d            d	t        |j                  d
            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            dt        |j                  d            t        |j                  d            t        |j                  d            t        |j                  d            d }t        j                  d!| d"#      }|rt        j                  |d   d$   |       nt        j                  |       |d%z  }| d&|d'S 7 # t        $ r}	d(t        |	      d)cY d }	~	S d }	~	ww xY ww)*Nzutf-8r   zTM ARTICLE NUMBERzTM Article NumberzProduct LinezPRODUCT LINE	Subfamily	SUBFAMILYz
Style Namez
STYLE NAMEzOG Style NamezOG STYLE NAMEz
Color NamezCOLOR  NAMESeasonSEASONzPAR DatezNumber of Samples ReceivedzMarketing Sample Estimated DatezRep SMS/Photoshop CommentsLocationLOCATIONzSample Pass off DatezLionshead Received DatezFlatlay Shoot DatezOn Model Shoot DatezOn Models ShotzOn Models Shot (Y or N)Sample Return DateLast Updated DateTime
Updated By)r    r!   r"   z{TM Article Number} = '')formulaid   success)statusupsertederror)r(   message)readr   read_csvioStringIOdecodeiterrowsr   gettableallupdatecreate	Exceptionstr)
r   contentsdfr)   _rowtm_idfieldsexistinges
             r   
upload_sdrrA      s    .6$[[X__W%=>?kkmFAsSWW%89:E#U)@ A Xcggk&:; hsww|'<=	
  #''/*B!C hsww}'=> (3778#45 HSWWZ%89 -hsww?[7\.] 28CGGDe<f3g -hsww?[7\.] HSWWZ%89 '9O1P(Q *8CGG<U4V+W %hsww7K/L&M  &x8M0N'O!" !(3773L+M"N#$ '/sww7K/L&M)1#'':Q2R)S&sww|'<=)F. yy+DUG1)MyNHXa[.7V$MHG $J $::U %X  6!c!f556sE   LK* K'KK* &L'K* *	L3L LLLL)fastapir   r   r   fastapi.middleware.corsr   
pyairtabler   pandasr   r.   appadd_middlewareAIRTABLE_API_KEYBASE_ID
TABLE_NAMEr3   r   postrA    r   r   <module>rM      s    - - 2   	i   %%%   h 

4 -(,S	 /6: /6 /6r   