o
    $a                     @   s   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
T d dlT d dlT d dlT d dlZd dlT d dlZd dlZdejej fd	d
Zedd Zedd Zd dlmZ d dlZdd Zdd Zdd Z	 dS )    )render)login_required)User)HttpResponseRedirect)logout)*N   c                    s   d  fddt| D S )N c                 3   s    | ]}t  V  qd S )N)randomchoice).0_chars Q/home/deybis/data/django/django_ruthia/sistemTransferencia/Transferencia/views.py	<genexpr>   s    z!id_cod_bloqueo.<locals>.<genexpr>)joinrange)sizer   r   r   r   id_cod_bloqueo   s   r   c                 C   sl   | j  s	tdS | j j}z| j j}d}tjj|d}|jj|j	jjkr&d}W n   d}Y t
| dd|iS )N/login/r	   id_usuario__usuarioadministradorzbloqueado.htmlcargo)useris_authenticatedr   usernameCajasobjectsget
id_usuariopk
id_oficinar   )requestusrr   Cr   r   r   	bloqueado   s   
r(   c                 C   s  | j jstdS zQ| j dr3| j j}| j jstjj|d}t	jj
|dd r.tdW S tdW S | j j}tjj|d}|jrV|jjrV|jjrVt }|d	}|d
}|d}tjj
||jjd st|j|d}|  tjj|jd}	d}
|	jd kr
|	jdkr
t|	jd}|d	}
d	}d}t||t|
|tdd krt||t|
| }nd}|dkrtjj
|jj|djddd tdW S tjj
|jj|dj|jdd tjj
|jddg|jd stdt  d|j|d}|  tdW S tjj
|jj|djddd tdW S tjj
|d|jjd r1tdW S tjj
|j|jddgd sQtdt  d|j|d}|  tdW S td W S    td  Y S )!Nr   zMain.add_oficinausuariosi)id_gerente__usuario
subGerentez/Movimientos_admin_tem/z/Personales/r   z%H:%Mz%Y-%m-%dz%Y-%m-%d %H:%M:%S)fecha_ingreso__icontainsr"   )r"   fecha_ingreso)r#   r	   z%I:%M %pr   
   )minutes)r"   r.   no)horaMorar(   /	pendiente
autorizado)id_caja_solicitante
estado__inid_user_solicitanteb)
codigo_autestador9   r7   z/bloqueado/)r.   r(   r"   )r7   r9   r8   z/cerrar/)r   r   r   has_permr   is_staffGerenter    r!   Gerente_conffilterexistsr   r<   r$   estado_oficinar"   datetimenowstrftimeHoraIngresoPersonalr#   savehoraIngresostrptime	timedeltaupdatesecondsCodigo_desbloqueo_sistemar   )r%   r&   Gerr'   starthoraIfecha1fechaThiCChoraCfechaConvertFMTtimeDsolr   r   r   autentificar%   sb   





"
  


 

r[   )HttpResponsec                 C   s2   | j d}|r|dd }|S | j d}|S )NHTTP_X_FORWARDED_FOR,r   REMOTE_ADDR)METAr!   split)r%   x_forwarded_foripr   r   r   get_client_ipq   s   rd   c                 C   sJ   | j d}|dkr |d kr tjj|d rtdS t| dS t| dS )Nr   r	   r)   z/validacion_codigo/zvalidacion1.html)POSTr!   Personalr    rA   rB   r   r   )r%   r&   r   r   r   Validacion_1_view{   s   

rg   c                 C   s.   | j d}|dkr|d krtdS t| dS )Ncodigor	   r   zvalidacion2.html)re   r!   r   r   )r%   codr   r   r   Validacion_2_view   s   
rj   )django.shortcutsr   django.contrib.auth.decoratorsr   django.contrib.auth.modelsr   django.httpr   django.contrib.authr   Main.modelsProcess.modelsMaintenance.modelsConsult.modelssysrD   stringr
   ascii_lowercasedigitsr   r(   r[   r\   jsonrd   rg   rj   r   r   r   r   <module>   s2   

H
	
