
    f~                        d dl mZ d dlZd dlmZ dedefdZd Z G d d	ej                        Z
 G d
 dej                        Z G d dej                        Z G d dej                        Z G d dej                        Zy)    )modelsN)numletnumreturnc                     g d}g d}g d}t        |       dkD  rt        | d         nd}| dd  \  }}|dk7  r||    dnd|t        |         z   |t        |         z   S )	N)
 unodostrescuatrocincoseissieteochonueve)
r   dieciveintiz
treinta y zcuarenta y zcincuenta y z
sesenta y z
setenta y z
ochenta y z
noventa y )
r   ciento
doscientostrescientoscuatrocientos
quinientosseiscientossetecientosochocientosnovecientos   r    r   )lenint)r   unidadesdecenascentenascientosdecenaunidads          >C:\Users\user\PycharmProjects\TransitoApp\Biometrico\models.pyarmar_cientosr)      sz    ^H+G=H !X\c#a&kqGXNFF'.!|x !#ws6{?SSV^_bci_jVkkk    c                    d}d }t         j                   j                  | j                  |      |      t         j                   j                  d|      kD  rmt         j                   j                  | j                  |      |      t         j                   j                  d|      k  rt        |       t         j                   j                  | j                  d      |      k(  rd}t	        d       |dv rt	        d       t         j                   j                  t        | j                  |            |      t         j                   j                  d|      kD  r[t         j                   j                  t        | j                  |            |      t         j                   j                  d|      z
  }n?t         j                   j                  d|      j                         }n|dk(  rt	        d	       t         j                   j                  t        | j                  |            |      t         j                   j                  d
|      kD  r[t         j                   j                  t        | j                  |            |      t         j                   j                  d
|      z
  }nKt         j                   j                  d|      j                         }nt	        d       t         j                   j                  t        | j                  |            |      t         j                   j                  d|      kD  rZt         j                   j                  t        | j                  |            |      t         j                   j                  d|      z
  }n]t         j                   j                  d|      j                         }n.t         j                   j                  d|      j                         }t	        d|| |       |S )Nz%H:%M:%S0:00:00z11:59:59z8:00:00zesta entre las 6:30 y las 12:00)      zfin de semanar   agentesz6:30:00funcionarioszvalor devuelto:)datetimestrptimestrftimestrprinttime)horatipodiaformatr6   s        r(   hora_retrasor;      s   FD""4==#8@ARARA[A[\egmAnns{  tE  tE  tN  tN  OS  O\  O\  ]c  Od  ek  tl  nv  n  n  nH  nH  IS  U[  n\  t\t9h''00y1I&QQD/0%</"  ))#dmmF.C*DfMPXPaPaPjPjktv|P}}((11#dmmF6K2LfUX`XiXiXrXrs|  E  YF  F((11)VDIIKQwi $$--c$--2G.H&QT\TeTeTnTnox  {A  UB  B#,,55c$--:O6PRXY[c[l[l[u[uv  BH  \I  ID#,,55iHMMODn%$$--c$--2G.H&QT\TeTeTnTnox  {A  UB  B#,,55c$--:O6PRXY[c[l[l[u[uv  BH  \I  ID#,,55iHMMOD  )))V<AAC	
T4.Kr*   c                   8    e Zd Z ej                  d      Zd Zy)Departamento<   
max_lengthc                     | j                   S N)nombreselfs    r(   __str__zDepartamento.__str__2   s    {{r*   N)__name__
__module____qualname__r   	CharFieldrC   rF    r*   r(   r=   r=   /   s    6r*Fr*   r=   c                       e Zd Z ej                  d      Z ej                  d      Z ej                  ddd      Z ej                  ddd      Z	 ej                  eej                  dd      Z ej                  ddd      Z ej                  dd	
      Z ej"                  d      Z ej                  ddd      Z ej                  dd
      Z ej                  dd
      Z ej                  dd
      Z ej                  dd
      Z ej0                  ddd      Z ej                  dd
      Zd Z	 d fd	Z xZS )	Empleados
   r?   Tuniquer>   )r@   nullblank)	on_deleterQ   rR   d   zAGENTES DE CONTROL DE TRANSITOr@   defaultrV   x   zEl Guabo   
0000000000   	7.1.05.10	   r   r   
max_digitsdecimal_placesrV      CEROc                 8    | j                    d| j                   S )Nr   )nombres	apellidosrD   s    r(   rF   zEmpleados.__str__G   s    ,,q 011r*   c                     t        j                  | j                        j                  j	                         | _        t        t        | #          y rB   )	nlNumerosueldoa_letrasuppersueldo_letrassuperrM   saverE   force_insertforce_updateusingupdate_fields	__class__s        r(   rn   zEmpleados.saveJ   s6     99T[[1::@@Bi"$r*   FFNN)rG   rH   rI   r   rJ   codigoIntegerFieldid_biometricord   re   
ForeignKeyr=   CASCADEdepartamento
EmailFieldemailcargoBooleanFieldestado	direccionciudadtelefonopartida_presupuestariacertificacion_numeroDecimalFieldri   rl   rF   rn   __classcell__rt   s   @r(   rM   rM   5   sU   6r*F%&%%T2MF4@Gf"4dCI"""<&..dY]^L
&

s4
@E
&

b1Q
RE6t,Ff#4dCI6r:>FVLAH+6++r+N)))RL6!AaHF"&""c6BM2 QU% %r*   rM   c                   x    e Zd Z ej                  dd      Z ej                  dd      Z ej                  eej                        Z
 ej                  dd      Z ej                  dd      Z ej                  dd      Z ej                  d	d
d      Z ej                  dd      Z	 d fd	Z xZS )ContratoTrQ   rR   rS   rX   r   rU   r[   r\   r]   r   r   r^   ra   rb   c                 z   | j                   s?t        | j                  j                         | _         | j                  j                  | _        | j                  sQ| j                  j                  | _        | j                  j
                  | _        | j                  j                  | _        t        t        | '          y rB   )
ri   floatempleadorl   r~   r   r   rm   r   rn   ro   s        r(   rn   zContrato.save[   s}     {{dmm223DK!%!<!<Dzz}}**DJ&*mm&H&HD%(,(L(LD'ht!#r*   ru   )rG   rH   rI   r   	DateFieldfecha_inicio	fecha_finry   rM   rz   r   rJ   r~   r   r   r   ri   rl   rn   r   r   s   @r(   r   r   Q   s    !!!t$7LvT6IVyFNNCH
&

c2
6E-V--[Q+6++r;O V  AaKF$F$$VDM QU$ $r*   r   c                       e Zd Z ej                  d      Z ej                  eej                        Z	 ej                  dd      Z ej                  dd      Z ej                  dd      Z ej                  dd      Z ej"                  d      Z ej&                  d      Z ej&                  d      Z	 d	 fd	Z xZS )
MarcacionesTrO   r   r      Marcación RegularrW   Fc                    | j                   st        t        | j                  j	                         | j
                  j                  | j                  j                                     | _         | j                   dkD  r| j                  dk(  rd| _
        n| j                   dk(  rd| _
        t        | j                          t        t        | ;          y )Nr,   FAtrasor   )retrasor4   r;   hora_marcacionr6   r   departamento_idfechaweekdayferiadodetalle_marcacionr5   rm   r   rn   ro   s        r(   rn   zMarcaciones.savev   s     ||\$*=*=*B*B*DdmmFcFceieoeoeweweyz{DL||I%$,,*='/&y()=&$,,k4%'r*   ru   )rG   rH   rI   r   rw   id_marcacionry   rM   rz   r   DateTimeFieldr   	TimeFieldr   r   r   r7   	TextFieldr   r   justificador   rn   r   r   s   @r(   r   r   j   s    $$$D1LVy6>>BH'6''T=NfD5G
&

4
0E			t$	/D&f&&/CE###E2KF.G QU( (r*   r   c                   0   e Zd Z ej                  eej                        Z ej                  d      Z	 ej                  d      Z ej                         Z ej                  dd      Z ej                  ddd	
      Z ej"                  dd      Zy)Permisosr   FrW   T)auto_now_addr   r   r]   r   )rV   r_   r`   N)rG   rH   rI   r   ry   rM   rz   r   r   justificabler   r   fecha_salidar   hora_salidar   horasr   detalle_permisorK   r*   r(   r   r      s    VyFNNCH&6&&u5L
&


-E!!!#L   d6K
&

aAa
HE$F$$$T:Or*   r   )	django.dbr   r1   nltr   rg   r4   r)   r;   Modelr=   rM   r   r   r   rK   r*   r(   <module>r      sy      	ls 	ls 	l>6<< % %8$v|| $2(&,, (8;v|| ;r*   