U
    ñQ e3/  ã                   @   s²   d dl Z d dlmZ d dlmZmZ d dlmZ 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	„ Zd
d„ Zdd„ Zdd„ Zdd„ Zdd„ Zddd„Zdd„ Zdd„ ZdS )é    N)Úmessages)ÚHttpResponseRedirectÚHttpResponse)Úrender)ÚPlacasÚPlacaProvisionalÚExtenosÚDuplicadoPlacasÚBanco)ÚTipoDocumento)Úrender_to_pdfc                 C   s6   t jj| j d¡dt j ¡ tj ¡ dœ}t| d|ƒS )NÚid©r   )ÚenlaceÚ	consultasÚ
documentoszconsultas.html)r   ÚobjectsÚgetÚGETÚallr   r   )ÚrequestÚcontexto© r   ú,/var/www/html/TransitoApp/Consultas/views.pyr      s
    ýr   c                 C   s   | j rît| j  d¡ƒ}t| j  d¡ƒ}t| j  d¡ƒ}t| j  d¡ƒ}d|t t|ƒd¡|f }d}| j  d¡r>d}t||d	 ƒD ]œ}zftt|ƒƒd
kr¼d|t t|ƒd¡|f }d}nd|t t|ƒd¡|f }d}tjj	||d 
¡  W q† tk
r  }	 ztd||	ƒ W 5 d }	~	X Y q†X q†t | tjd||f ¡ n°t||d	 ƒD ]ˆ}zjtt|ƒƒd
kr€d|t t|ƒd¡|f }nd|t t|ƒd¡|f }tjj	|tj ¡  ¡ d 
¡  W n   td|ƒ Y nX qLt | tjd||f ¡ tj ¡ tj ¡ tj ¡ tj ¡ dœ}
t| d|
ƒS )NÚs1Ús2ZdiÚdfz%s%s%sé   Ú Úpvé   r   é   ÚCARROÚMOTO)ÚnumeroÚtipozNo se genero:z5Se generaron placas provisionales desde: %s, hasta %s)r$   Úfecha_ingresoz'Se generaron placas desde: %s, hasta %s)ÚplacasZprovisionalesr   r   zgenerador_placas.html)ÚPOSTÚstrr   ÚintÚzfillÚrangeÚlenr   r   ÚcreateÚsaveÚ	ExceptionÚprintr   Úadd_messageÚSUCCESSr   ÚdatetimeÚnowÚdater   r   r   r   )r   r   r   Úd1r   ZstriZstrpr%   ÚiÚerrorr   r   r   r   Úgenerador_placas   sJ     

ÿ"ür:   c                 C   s¨  d}| j  d¡rVz tjjt | j  d¡¡d}W n$   t | tjd¡ t	dƒ Y S X | j
rj|jsttj ¡  ¡ |_t | j
 d¡¡|_t | j
 d¡¡|_| j
 d¡|_d	|_| j|_| j
 d
¡|_t | j
 d¡¡|_t | j
 d¡¡|_t | j
 d¡¡|_| j
 d¡|_| j
 d¡|_| j
 d¡|_| j
 d¡|_| ¡  t | tjd¡ t|jƒ t	d|j  ƒS |t!j "¡ t#j "¡ tjj$d	dt%j "¡  &d¡dœ}t'| d|ƒS )Nr   Úplaca©r$   z"No hay ninguna placa registrada..!r'   ÚnombresÚ	apellidosÚcedulaTÚnumero_tramiteÚcedula_propietarioÚnombres_propietarioÚapellidos_propietarioÚbancoÚnumero_pagoÚ
fecha_pagoÚ
valor_pagoz!Datos registrados exitosamente..!zplacas?placa=%s©ÚestadoÚnombre)r;   r   r   ZplacasentregadasZbancoszplacas.html)(r   r   r   r   r)   Úupperr   r2   ÚERRORr   r(   Úfecha_entregar4   r5   r6   r=   r>   r?   rI   ÚuserÚusuarior@   rA   rB   rC   Úbanco_idrE   rF   rG   r/   r3   r1   r$   r   r   r   Úfilterr
   Úorder_byr   )r   r;   r   r   r   r   r'   B   sD     
ûr'   c                 C   sN  t j ¡ }| jrÜ|j| j d¡d}| ¡ jrDt ƒ }| j d¡|_n| ¡ }| j d¡|_t	j	 
¡  ¡ |_t	j	 
¡ t	jdd  ¡ |_t | j d¡¡|_t | j d¡¡|_| j|_| ¡  t | tjd¡ td	|j ƒS |tj ¡ tj ¡ d
œ}| j d¡rB|j| j d¡d}d|i}|jdkr6t| d|ƒS t| d|ƒS t| d|ƒS )Nr;   r<   ZfechasolicitudéZ   )ÚdaysÚpropietarior%   u-   Se ha registrado una renovaciÃ³n de placa..!!zplacas_provisional?placa=%s©r'   r   r   Úpr   r#   zpdf_placa_moto.htmlzpdf_placa_p.htmlzplacas_provisional.html)r   r   r   r(   rQ   r   ÚfirstÚfecha_solicitudr$   r4   r5   r6   Úfecha_emisionÚ	timedeltaÚfecha_caducidadr)   rK   rU   Útipo_serviciorN   rO   r/   r   r2   r3   r   r   r   r   r%   r   )r   r'   r;   r   r   r   r   Úplacaprovisionaln   s:    

ý ÿr^   c                 C   sè  d }d }d }| j  d¡rPztjj| j  d¡d}W n   t | tjd¡ Y nX ztjj| j  d¡dd}W n   Y nX | j  d¡rÈtjj| j  d¡d}d|_	| 
¡  t | tjd	¡ td
|j ƒS | jrº|jr^tƒ }tj ¡  ¡ |_||_t | j d¡¡|_t | j d¡¡|_| j d¡|_d|_| j|_| 
¡  t | tjd¡ td
|j ƒS tj ¡  ¡ |_t | j d¡¡|_t | j d¡¡|_| j d¡|_d|_| j|_| 
¡  ||tj ¡ tj ¡ tj ¡ dœ}t| d|ƒS )Nr;   r<   z6La placa que solicita no existe en la base de datos..!F)Zplaca__numeroÚ	eliminador_   r   TzRegistro se ha eliminado..!zduplicado_placas?placa=%sr=   r>   r?   zSe ha registrado..!)r;   Z
duplicadosr   r   Z
entregadaszplacas_duplicado.html) r   r   r   r   r   r2   rL   r	   rQ   r_   r/   r   r$   r(   rI   r4   r5   r6   rM   r;   r)   rK   r=   r>   r?   rN   rO   ÚINFOr   r   r   r   )r   r;   Ú	duplicadoÚdplÚddr   r   r   r   ÚduplicadoPlaca’   sZ    ûrd   c                 C   sv   d }d }| j  d¡r,tjj| j  d¡d}ntjj| j  d¡d}tj ¡ || j ¡ t	j 
¡ tj 
¡ |dœ}td|ƒS )NÚdpr   r   )Úfechar;   Zfuncionarior   r   ra   zentrega_placa.html)r   r   r	   r   r   r4   r5   rN   Úget_full_namer   r   r   r   )r   r;   re   r   r   r   r   Úimprimir_actaÆ   s    úrh   r   c                 C   sˆ   g }d}t t|ƒt|ƒƒD ]`}zN|r>| t t|ƒd¡ | }n| t t|ƒd¡ }tjj|d}| |¡ W q   Y qX qt|ƒ |S )Nr   r   r<   )	r,   r*   r)   r+   r   r   r   Úappendr1   )rW   ÚsÚdÚhZlistaÚplÚxÚpxr   r   r   Úbuscar_rangosØ   s    rp   c              	   C   sº  d }zô| j  d¡dkrp| j  d¡dkrptjj| j  d¡| j  d¡d}t | tjd| j  d¡| j  d¡f ¡ n†| j  d¡dkr´tjj| j  d¡d}t | tjd| j  d¡ ¡ nB| j  d¡dkrötjj| j  d¡d}t | tjd| j  d¡ ¡ W n   Y nX | j  d¡rRt| j  d¡| j  d	¡| j  d
¡| j  d¡ƒ}t | tjd¡ | j  d¡rttjjdd 	d¡}| j  d¡r–tjjdd 	d¡}|t
j ¡ tj ¡ dœ}t| d|ƒS )NÚf1r   Úf2©Zfecha_entrega__gteZfecha_entrega__ltezlistado del %s al %s)rM   zlistado la fecha: %srW   rj   ÚdesdeÚhastau   BÃºsqueda por rangos numÃ©ricosÚfFrH   r$   ÚtTrV   zreporte_placas.html)r   r   r   r   rQ   r   r2   r`   rp   rR   r   r   r   r   )r   r'   r   r   r   r   Úreporte_placasè   s<     

þ
ÿ .ýrx   c              
   C   sv  d }d }d}d}d}d}d}d}d }	| j  d¡rŽtjj| j  d¡| j  d¡d d¡}	d}
tj | j  d¡|
¡ ¡ }tj | j  d¡|
¡ ¡ }| j  d¡rø| j  d¡}| j  d¡}| j  d	¡}| j  d
¡}t	| j  d¡| j  d¡| j  d	¡| j  d
¡ƒ}	| j  d¡rtjjdd d¡}	d}| j  d¡rDtjjdd d¡}	d}|	||||t
 |d¡t
 |d¡||dœ	}td|ƒS )Nr   rq   rr   rs   r$   z%Y-%m-%drW   rj   rt   ru   rv   FrH   Únorw   TÚyesr   )	r'   rq   rr   rW   rj   rt   ru   rv   rw   zreporte_placas_pdf.html)r   r   r   r   rQ   rR   r4   Ústrptimer6   rp   r)   r+   r   )r   rq   rr   rW   rj   rw   rv   rt   ru   r'   Údate_formatr   r   r   r   Úreporte_placas_pdf
  sT    

þý.

÷r}   )r   r   r   r   )r4   Údjango.contribr   Údjango.httpr   r   Údjango.shortcutsr   ÚConsultas.modelsr   r   r   r	   r
   ZOficios.modelsr   ÚTransitoApp.snnipersr   r   r:   r'   r^   rd   rh   rp   rx   r}   r   r   r   r   Ú<module>   s   	,,$4
"