
    Xhj                        d dl Z d dlmZmZmZmZ d dlmZ d dlm	Z	 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mZ d d	lmZ  ed
dg      Zej1                  d       ee       ee      fdede	fd       Zej5                  d       eej6                         ed       ee       ee      fdededede	fd       Zej1                  d       ee       ee      fdededede	fd       Zej1                  d       ee       ee      fdedede	fd       Zej1                  d       ee       ee      fdededede	fd       Zej?                  d       ee       ee      fdedede	fd        ZejA                  d!       eej6                         ed       ee       ee      fdededee   dede	f
d"       Z!y)#    N)	APIRouterDependsFile
UploadFile)get_db)Session)FamilyCoreDatumUpdateFamilyCoreDatum	UserLogin)FamilyCoreDatumClass)get_current_active_user)DropboxClass)Optionalz/family_core_dataFamily_Core_Data)prefixtags/session_userdbc                 <    t        |      j                         }d|iS Nmessage)r   get_all)r   r   datas      P/var/www/intrajisbackend.com/public_html/app/backend/routers/family_core_data.pyindexr      s     #++-Dt    z/store.	form_datasupportc                 V   t        |      }|j                  t        | j                        dz   t        | j                        z   d|dt
        j                  j                  t
        j                  j                  t                          }t        |      j                  | |      }d|iS )N_partida_nacimiento/birth_certificates/namedescriptionr   dropbox_pathcomputer_pathr   )r   uploadstremployee_rutrutospathjoindirname__file__r   store)r   r   r   r   dropbox_clientfilenamer   s          r   r2   r2      s    !"%N$$#i.D.D*E*KcR[R_R_N`*`  oC  JQ.DTVT[T[T`T`acahahapapqyazT{ % }H  #)))X>Dtr   z/edit/{rut}/{get_type_id}r,   get_type_idc                 B    t        |      j                  d| |      }d|iS )Nr+   r   r   get)r,   r5   r   r   r   s        r   editr9   "   s(      #''[IDtr   z
/edit/{id}idc                 >    t        |      j                  |       }d|iS r   )r   	get_by_id)r:   r   r   r   s       r   r9   r9   )   s$      #--b1Dtr   z/family/edit/{id}c                 B    t        |      j                  d| |      }d|iS )Nr:   r   r7   )r:   r5   r   r   r   s        r   r9   r9   0   s(      #''b+>Dtr   z/delete/{id}c                    t        |      j                  d| d      }t        |      j                  |       }|dk(  rF|d   d k7  s|d   dk7  r%t        |      j                  d|j                        }|dk(  rd}d|iS |}d|iS d}d|iS )Nr:      r    r#   r   r   )r   r8   deleter   r   )r:   r   r   family_core_dataresponser   s         r   rA   rA   7   s    +B/33D"a@#B'..r2H1}I&$.2B92MQS2S#B'../EGWG_G_`Hq=D t	 D t tr   z/update/{id}c                 z   t        |      j                  d| d      }|dk7  r|d k7  rt        |      }|j                  t	        |j
                        dz   t	        |j                        z   d|dt        j                  j                  t        j                  j                  t                          }t        j                  |      }|d   d k7  r/|d   dk7  r't        |      j                  dt	        |d               }	t        |      j                  | ||      }
d	|
iS t        |      j                  | |      }
d	|
iS )
Nr:   r?   r@   r!   r"   r#   r$   r   r   )r   r8   r   r)   r*   r+   r,   r-   r.   r/   r0   r1   jsonloadsrA   update)r:   r   r   r   r   rB   r3   r4   family_core_data_dictrC   r   s              r   rG   rG   K   s>   +B/33D"a@"}D%b)!((c)2H2H.IC.ORUV_VcVcRd.d  sG  NU.DTVT[T[T`T`acahahapapqyazT{ ) } $

+; < +t38Mi8X\^8^#B'../EsK`ajKkGlmH#B'..r9hG t $B'..r9=tr   )"rE   fastapir   r   r   r   app.backend.db.databaser   sqlalchemy.ormr   app.backend.schemasr	   r
   r   +app.backend.classes.family_core_datum_classr   app.backend.auth.auth_userr   r-   !app.backend.classes.dropbox_classr   typingr   rB   r8   r   postas_formr2   intr9   rA   patchrG    r   r   <module>rV      s    8 8 * " Q Q L > 	 : 
	 
 c$+,C$DT[\bTc 	 '  
 x './F/F'G_cdg_h  EL  Md  Ee  u|  }C  uD _ R\   yB   kr  ! 12=DE\=]mtu{m| S c  cj  3 l#+23J+K[bci[j C y QX  $ )*<CD[<\lstzl{ C S 	 bi  + (-45L-M]dek]l c  SZ  )& '7>?T?\?\7]  @D  EI  @J  fm  nE  fF  V]  ^d  Ve s 4 hpq{h|   Zc   LS  (r   