
    =S{eQ(                     |   d dl Z d dl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m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l m!Z! d dl"m#Z# g dZ$ ed      d        Z% ed      d        Z& ed      d        Z'd Z(d Z)d Z* ed      d        Z+ ed      d        Z,y)    N)messages)login_required)
connection)SumCount)HttpResponseHttpResponseRedirect)render)PlacasExtenos)	Plantilla)CantidadTipoEstadisticaFechaTotalUsuariosFechaRubroEstadisticaUsuarioTipo)Archivos)TipoDocumento)render_to_pdf)Informe)EneroFebreroMarzoAbrilMayoJunioJulioAgosto
SeptiembreOctubre	Noviembre	Diciembrelogin_)	login_urlc                    t         j                   j                         j                         j                  }t         j                   j                         j                         j                  }| j
                  j                  d      r$t        | j
                  j                  d            }| j
                  j                  d      r$t        | j
                  j                  d            }t        ||       t        j                  j                  ||      j                  d      }t        j                  j                  ||      j                  d      }t        j                  j                  ||      j                  d      }t        j                  j                         }|j!                  d      j#                  t%        d            j                  d      |j!                  d      j#                  t%        d            j                  d      |j!                  d      j#                  t%        d            j                  d      |j'                         |j'                         t(        |d	z
     d
z   t+        |      z   |j'                         |j                  d      j'                         t,        j                  j                         t.        j                  j                         t(        t1        dt         j                   j                         j                  d	z         D cg c]  }| c}d}t3        | d|      S c c}w )Nym)fecha__monthfecha__yearfecha)fecha_entrega__monthfecha_entrega__yearfecha_entregaid)contar    T)estadoi  )informescostospplacasimcmmesplacastplacase	consultas
documentosmesesaniosz
index.html)datetimenowdatemonthyearGETgetintprintr   objectsfilterorder_byr   r   allvaluesannotater   countr=   strr   r   ranger
   )	requestr8   anior3   r4   ppplacasacontextos	            8C:\Users\user\PycharmProjects\TransitoApp\Index\views.pyindexrX      su   





!
&
&
(
.
.C  "'')..D{{s%&{{s$%	#dO__##T $ hw  ##d $ hw  
		 d 
 
h  >>F??7+44E$K4HQQRYZw'00d0DMMgV99_-66eDk6JSSTcd^^\\^CEl3s4y(,,.--t-,224OO'')#++//1"4):):)>)>)@)E)E)IJK!KH ',x00 Ls   )	Mc           
      ~	   | j                   r<t        | j                          t               }| j                  j	                  d      rXt        j
                  j	                  | j                  j	                  d            }| j                  j                         |_        | j                   j	                  d      |_	        | j                   j	                  d      |_
        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d	      |_        | j                   j	                  d
      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                   j	                  d      |_        | j                  j	                  d      s| j                  j                         |_        | j                   j	                  d      dk(  rd|_        nd|_        |j;                          t        | j                   j	                  d             | j                  j	                  d      rt=        j>                  | t<        j@                  d       tC        d| j                   j	                  d      d| j                   j	                  d      d| j                  j	                  d            S t=        j>                  | t<        j@                  d       tC        d       S tD        jD                  jG                         jI                         tJ        j
                  jM                         tN        j
                  jM                         d!}tQ        | d"|      S )#Nr.   r.   	matriculartvr*   placatiposervicio	duplicadorodajeestikersrecargosmodificaciontonelajecuvdominiototalusuariobloqueosincostopublicoonTFz+Los datos se han modificado exitosamente..!repcostos?f1=f1&f2=f2#z'Los datos se han creado exitosamente..!rcostos)r*   r;   r<   zregistroCostos.html))POSTrG   r   rD   rE   rH   userget_full_namemodificado_pornumero_especie_matriculanumero_especie_rtvr*   r]   r^   r_   r`   ra   estikerrc   rd   re   rf   rg   rh   ri   rj   duplicado_sin_costoingresado_porrl   saver   add_messageSUCCESSr	   r?   r@   rA   r   rK   r   r
   )rQ   	plantillarV   s      rW   registroCostosr   8   ss   ||gll+	;;??4 ''++w{{t/D+EI'.||'A'A'CI$+2<<+;+;K+H	*%,\\%5%5e%<	$((1	((1	||''/	"<<++J7	#LL,,[9	 ))(3	!,,**:6	"<<++J7	&||//?	"<<++J7	ll&&u-	!,,**95	((1	!,,**95	#LL,,Y7	&-ll&6&6z&B	%{{t$$+LL$>$>$@I#<<I&,"I#Iglly)*;;??4   (*:*:<ij'GLLDTDTUYDZ[b[g[g[k[klp[qryr}r}  sB  sB  CG  sH  )I  J  J  (*:*:<ef'	22 ""&&(--/__((*#++//1H
 '0::    c                 ^   | j                   j                  d      rR| j                   j                  d      r7| j                   j                  d      }| j                   j                  d      }njt        t        j                  j	                         j                               }t        t        j                  j	                         j                               }t        ||       t        j                         5 }|j                  dt        |      t        |      g       |j                  dt        |      t        |      g       |j                  dt        |      t        |      g       |j                  dt        |      t        |      g       |j                  dt        |      t        |      g       |j                          d d d        t        j                  j                  t        j                  j                  |d      t        j                  j                  |d      g	      }|t        j                  j	                         j                         t        j                  j!                         t"        j                  j!                         d
}t%        | d|      S # 1 sw Y   xY w)Nro   rq   ConsultarTotalesFechasConsultartTotalUsuariosFechasConsularTotalesUsuarioTipocantidadTiporubro%Y-%m-%dfecha__range)r4   r*   r;   r<   zreporteCostos.html)rD   rE   rO   r?   r@   rA   rG   r   cursorcallproccloser   rH   rI   strptimer   rK   r   r
   )rQ   ro   rq   r   r4   rV   s         rW   reporteCostosr   i   s   {{t!6;;??4 ;;??4 x  $$&++-.x  $$&++-.	"RL				 03r73r72CD7#b'#b'9JK4s2ws2w6GHBB'89#b'3r7!34 ##''00Z@''00Z@B $ F
 !!%%',,.__((*#++//1	H '.x88% s   8CJ##J,c                  |    t         j                  j                  d      D ]  } d| _        | j	                           y )Nz
2023-07-27)r*   u   Erick González Cadena)r   rH   rI   r|   r}   )ps    rW   modificacion_usuarior      s5    %%L%9 2	r   c                 4   | j                   rt        | j                         t        | j                  d         }|j	                          t        |j
                  j                         t        j                  |j
                  j                        }d}|j                         D ]  \  }}t        |       t        t        |d         j                  d      d   |d   |d   |d	   |d
   |d   |d   |d   |d   |d   |d   |d   |d   t        |d                |d   dk(  rd}	 t        di dt        |d         j                  d      d   d|d   d|d   dt        |d         d	t        |d	         d
t        |d
         dt        |d         dt        |d         dt        |d         dt        |d         dt        |d         dt        |d         dt        |d         d|d   d|d| j                  j                         j	                           i }t!        | d|      S #  t        d|z  t        |d         j                  d      d   |d   |d   |d	   |d
   |d   |d   |d   |d   |d   |d   |d          Y xY w)Nfile)	documentoFr*   r1   r   r]   r_   r`   ra   stikerrecargord   re   rf   rg   rh   rl   ri   SITr^   rz   rc   r|   z[%s] No se registro: zmigrarCostos.html )rt   rG   FILESr   r}   r   pathpd
read_exceliterrowsrO   splitr   floatru   rv   r
   )rQ   ardfrl   rX   rowrV   s          rW   migrarCostosr      s   ||gmmmmF+
 		bll ]]2<<,,-++- 	hJE3#J#c'l#))#.q1#g,s:sS^O_h-Hc)nn%c*oc%jYPST[P\]`aj]klopst}p~lA 9~t#h c'l+11#6q9V g, #3z?3	
 $C$45 !X/ "#h-0 #3y>2 "'s>':!; #3z?3 c%j) "#i.1  G- !^ $  #*,,"<"<">!" $&3	h<H '-h77h-e3CG4E4K4KC4PQR4SUXY`Uacfgqcrtw  yD  uE  GJ  KS  GT(mS^.)3z?CJIX[\cXdhs   )C>H99AJc                 z   g }g }d}t         j                  j                  t        j                  j	                  | j
                  j                  d      d      t        j                  j	                  | j
                  j                  d      d      g      }|j                  d      j                  t        d            }|D ]]  }t        |d   t        |d                |j                  t        |d                d	t        |d   d
z
     z  }|j                  |       _ d|d|}|j                  dd      S )N ro   r   rq   r   r(   rh   rh   z%sr0   z	'data': [z],'labels': '")r   rH   rI   r?   r   rD   rE   rL   rM   r   rG   r   appendr=   replace)rQ   labelsdatajsontr4   xr'   s          rW   generar_json_por_mesr      s   F
D
E##(2C2C2L2LW[[__]aMbdn2o&&w{{t'<jI2K# LFMM.)22W2FF aaj 12E!G*%&
uQ~&q()
)a	
 ,0
7E==S!!r   c                 `   t         j                  j                         }t        | j                  j                  d      | j                  j                  d             | j                  j                  d      r| j                  j                  d      r|j                  t        j                  j                  | j                  j                  d      d      t        j                  j                  | j                  j                  d      d      g      }t        j                  j                         }| j                  j                         |t        j                  j                  | j                  j                  d      d      t        j                  j                  | j                  j                  d      d      ||j                  t        d            |j                  d      j                  t        d      	      |j                  d
d      j                         |j                  d
d      j                         t        j                  j                         t         j                  j                         |j                  t        d            |t#        |       d}t%        d|      S )Nro   rq   r   r   suma)r   CARRO)tipo__icontains)nT)rl   r   MOTOCICLETAtotalesr   )ri   r4   ro   rq   estadisticanumeronumero_carrosnumero_carros_publicosnumero_motos_publicospor_usuarios
por_rubrosrh   
totalmesesgraficozpdfCostos.html)r   rH   rK   rG   rD   rE   rI   r?   r   r   ru   rv   	aggregater   rN   r   r   r   r   )rQ   r4   r   rV   s       rW   
pdf_costosr      s   ""$F	'++//$
!67{{t!6"++44W[[__T5JJW&&w{{t'<jIK  
 $$((*K,,,,.''(=zJ''(=zJ!''S['9#**7*CMMPSTZP[M\"(--g-"V"\"\"^!'t]![!a!a!c)11557]]&&(&&S^&< &w/H" )(33r   c                 p   t         j                  j                  | j                  j                  d            }|j                  }t
        j
                  j                         j                         }|j                          t        j                  | t        j                  d       t        d|d|      S )Nr.   rZ   zRegistro Eliminado..!rn   rp   )r   rH   rE   rD   r*   r?   r@   rA   deleter   r~   ERRORr	   )rQ   r   ro   rq   s       rW   eliminarcostor      s~    w{{t45AwwB##%BHHJ0GHB ?@@r   )-r?   pandasr   django.contribr   django.contrib.auth.decoratorsr   	django.dbr   django.db.modelsr   r   django.httpr   r	   django.shortcutsr
   Consultas.modelsr   r   Costos.modelsr   Estadistica.modelsr   r   r   r   r   Index.modelsr   Oficios.modelsr   TransitoApp.snnipersr   Vial.modelsr   r=   rX   r   r   r   r   r   r   r   r   r   rW   <module>r      s      # 9   ' : # , # p p ! ( . x (# 1 $ 1D (#.; $.;` (#9 $98
-8^"  (#4 $48 (#A $Ar   