
    Xh                        d dl Z d dlmZm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 d dlmZ d dlmZ d d	lmZmZ d d
lmZ d dlZd dlmZmZ d dlmZmZmZmZ  eddg      Zej7                  d       ee
       ee      fdededefd       Zej;                  d       ee      fdedefd       Zej;                  d       ee      fdededefd       Z ej;                  d       ee      fde!defd       Z"ejG                  d       ee      fdedefd        Z#ej7                  d!       ed"       ed"       ed"       ed       ed       ee
       ee      fd#ed$ee!   d%ee!   d&ee!   d'ee   dedefd(       Z$y))    N)ListOptional)	APIRouterDependsFormHTTPException)get_current_active_user)get_db)Session)	FileClass)IntershipClass)
UploadFileFile)datetime)	UserLoginIntershipList)r   r   r   r   z/interships
Interships)prefixtags/
internshipsession_userdbc                     t        |      j                  | j                  | j                  |j                  |j
                  | j                        }d|iS Nmessage)r   get_allbranch_office_idinternrol_idrutpage)r   r   r   datas       J/var/www/intrajisbackend.com/public_html/app/backend/routers/interships.pyindexr%      sZ    "%%j&A&A:CTCTVbViVikwk{k{  ~H  ~M  ~M  NDt    z
/edit/{id}idc                     	 t        |      j                  |       }|st        dd      d|iS # t        $ r}t        ddt	        |             d }~ww xY w)Ni  u   Pasantía no encontrada)status_codedetailr   i  u   Error al obtener la pasantía: )r   getr   	Exceptionstr)r'   r   intership_dataes       r$   editr0      sh    	`'+//3C8QRR>** `6UVYZ[V\U]4^__`s   ,/ 	AAAz//questions_answers/{intership_id}/{question_id}intership_idquestion_idc                 <    t        |      j                  | |      }|S )N)r   get_answers)r1   r2   r   r   s       r$   questions_answersr5   '   s    R ,,\;GGNr&   z/support/{support}supportc                 B    | }t        |      j                  |      }d|iS r   )r   r+   )r6   r   remote_pathfiles       r$   get_supportr:   -   s&    KR=[)Dtr&   z/delete/{id}c                 
   t        |      j                  |        t        dd      D ]W  }t        |      j                  | |      }|d   s$|d   }t	        |      j                  |      }|dk(  sIt        d| d       Y ddiS )N      imagesuccesszArchivo asociado a la pregunta z eliminado correctamente.r   )r   deleteranger4   r   print)r'   r   r2   r.   r8   r   s         r$   r@   r@   5   s    2b!Q| `'+77KH'"(1Km**;7G)#7}D]^_` y!!r&   z/store.r   	questionsanswersobservationsfilesc                    t        |      j                  | |j                        }t        t	        |            D ]  }|r|t	        |      k  r||   nd }	d }
|	r|	j
                  dk7  rt        j                         j                  d      }t        j                         j                  d d }d|	j
                  v r|	j
                  j                  d      d   nd}d}|r
| d| d| n| d| }| d| }
t        |      j                  |	|
       |r|t	        |      k  r
||   r||   nd }t        |      j                  |||   ||   ||
        d	|d
S )Nzempty-file.jpgz%Y_%m_%d_%H_%M_%S   . 	intership_u   Pasantía creada con éxito)r   internship_id)r   storer!   rA   lenfilenamer   nowstrftimeuuiduuid4hexsplitr   uploadstore_answer)r   rC   rD   rE   rF   r   r   rN   ir6   r8   	timestamp	unique_idfile_extensionfile_category_nameunique_filenameobservation_values                    r$   rO   rO   E   sw    #2&,,-=|?O?OPM3y>" 
#CJ%(Dw''+;; //0CDI

((!,I@CwGWGW@WW--33C8<]_N!,M[1YKq8HIdmcnnopyoza{O/0/1BCKbM  +6  ,C4E0E,WX/LO_c 	
 	r''aLAJ	
+
: 5}UUr&   )%jsontypingr   r   fastapir   r   r   r   app.backend.auth.auth_userr	   app.backend.db.databaser
   sqlalchemy.ormr   app.backend.classes.file_classr   #app.backend.classes.intership_classr   r   r   r   rT   app.backend.schemasr   r   
intershipspostr%   r+   intr0   r5   r-   r:   r@   rO    r&   r$   <module>rn      s    ! ; ; > * " 4 > $   8 8 8


 ?FG^?_ovw}o~ m 9 el  
  ' 
`S 
`g 
` 
` ABIPQW C c w  C
 $%,3FO  '  & >"")&/ "s " " #"  I9c"4j"4j%&=>&/(V(VCy(V #Y(V s)	(V
 
(V (V 	(V (Vr&   