
    Xhr                        d dl mZ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mZmZ d dlmZ d dlmZ d d	lZd d	lZd d	lZ ed
dg      Zej3                  d       ee      fdedefd       Zej3                  d       eej6                         e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j?                  d       ee      fdedefd       Z ej?                  d       ee      fdedefd       Z!ej3                  d       ee      fdedefd       Z"y	)    )	APIRouterDependsFile
UploadFileHTTPException)get_db)CarbonMonoxideClass)
EmailClass)	FileClass)CarbonMonoxideListCarbonMonoxideReportRequest)Session)datetimeNz/carbon_monoxidesCarbonMonoxides)prefixtags/carbon_monoxidedbc                     t        |      j                  | j                  | j                  | j                  | j
                        }d|iS )Nmessage)r	   get_allbranch_office_id
since_date
until_datepage)r   r   carbon_monoxide_datas      P/var/www/intrajisbackend.com/public_html/app/backend/routers/carbon_monoxides.pyindexr       s`    .r2::?;[;[]l]w]w  zI  zT  zT  Ve  Vj  Vj  k+,,    z/store	form_datasupportc                    	 t        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                  ||      }	t        |      j                  | |       d|	iS # t        $ r}
t        d	d
t        |
             d }
~
ww xY w)Nz%Y_%m_%d_%H_%M_%S   . r   _r     zError al procesar: status_codedetail)r   nowstrftimeuuiduuid4hexfilenamesplitr   uploadr	   store	Exceptionr   str)r"   r#   r   	timestamp	unique_idfile_extensionfile_category_nameunique_filenameremote_pathr   es              r   r6   r6      s   TLLN++,?@	JJL$$Ra(	<?7CSCS<S))//4R8Y[.IWYKq1^4DE`i_jjklukv]w+,Ao->?B-&&w<B%%i=7## T6I#a&4RSSTs   CC
 
	C1C,,C1z/delete/{id}idc                     t        |      j                  |       }t        j                  |      }|d   d   }| }t	        |      j                  |      }|dk(  rt        |      j                  |        d|iS )Nr   r#   successr   )r	   getjsonloadsr   delete)r@   r   patent_data	file_namer>   r   s         r   rF   rF   0   sv    %b)--b1K**[)K23I>IKKm"";/G)B&&r*wr!   z/download/{id}c                     t        |      j                  |       }t        j                  |      }|d   d   }| }t	        |      j                  |      }t        j                  |      j                  d      }||dS )Nr   r#   zutf-8)rH   	file_data)	r	   rC   rD   rE   r   downloadbase64	b64encodedecode)r@   r   r   rH   r>   file_contentsencoded_files          r   rK   rK   A   s    .r266r:::&:;$%;<YGIKKbM**;7M##M299'BL ! r!   z
/edit/{id}c                     	 t        |      j                  |       }|st        dd      d|iS # t        $ r}t        ddt	        |             d }~ww xY w)Ni  zPatente no encontradar+   r   r*   zError al obtener el iva: )r	   rC   r   r7   r8   )r@   r   rG   r?   s       r   editrR   S   sk    Z)"-11"5 C8OPP ;'' Z6OPSTUPVx4XYYZs   ,/ 	AAAz/send_reportrequestc                    t        | j                         d}| j                  D ]  }t        |      j                  |d         }t	        j
                  |      }|d   }t        |      j                  |d         }|r	|d| dz  }|dz  }|dt        |d	         z   d
z   t        |d         z   dz   t        |d         z   dz   z  }|dz  } t        dd      }|j                  | j                  d|      }	d|	iS )Nu(   <h2>Reporte de Monóxido de Carbono</h2>r@   r   r#   z
<img src="z" height="400" /><br>z<ul>z<li>Sucursal: branch_officez. Fecha de Registro: 
added_dateu   , Medición: measure_valuez.</li>z</ul>zinformacion@jisparking.comzpksh nfit pcwj dfteu   Informe de Monóxido de Carbonor   )printselected_carbon_monoxidesr	   rC   rD   rE   r   r8   r
   
send_emailemail)
rS   r   email_contentitemr   datacarbon_datafile_supportemail_clientresults
             r   send_reportrc   c   s\   	'
+
+,>M11 !-b155d4jAzz/*12 }((Y)?@z,7LMMM)CO0L,MMPggjmny  {G  oH  kI  I  L[  [  ^a  bm  n}  b~  ^    BJ  J  	J ! :<QRL$$W]]4UWdeFvr!   )#fastapir   r   r   r   r   app.backend.db.databaser   )app.backend.classes.carbon_monoxide_classr	   app.backend.classes.email_classr
   app.backend.classes.file_classr   app.backend.schemasr   r   r   sqlalchemy.ormr   r   rL   rD   r0   carbon_monoxidespostr    as_formr6   rF   intrC   rK   rR   rc    r!   r   <module>rp      s   G G * I 6 4 Q Q "    
	 
 s=DV_ -- -7 - -
 x  '(>(> ?t*&/TTT 	T !T. (!(  c  w   )   &'$+FO  '  (" l# ' ZS Zg Z $Z ~&6=fo  G  'r!   