+
    iY                     J    ^ RI Ht ^ RIHtHtHt R tR tR tR tR t	R t
R	# )
    )get_connection)datetime	timedeltatimezonec           
      :    R p\        4       ;_uu_ 4       pVP                  4       pVP                  W34       VP                  4       pV'       d~   V^ ,          pV^,          pVR8X  d+   V^,           RV^,           RV^,           RV^,           2pM*VR	9   d   V^,          pM\	        RV 24        RRR4       R# RVRV/uuRRR4       # \	        RV  24        RRR4       R#   + '       g   i     R# ; i  \
         d   p\	        RT 24       h Rp?ii ; i)
z
            SELECT RequestTypeID, FirstName, MiddleName, LastName, SecondLastName, BusinessName, Email 
            FROM Profiles WHERE USERID = ?
        EMPLEADO zRequestTypeID desconocido: NNombreEmailu$   No se encontró perfil para UserID: Error: )DISCANDISEUAu   DISMÉXu   CLIMÉXCLIEXTr   cursorexecutefetchoneprint	Exception)	UserIDcheck_user_queryconnr   datarequest_type_idr   r
   es	   &        eC:\Users\victor.barrera\Documents\proyectos\elepV3\Elep\src\Consultas_SQL\Security\UserPasswordSQL.pyconsultar_profiler      s   $ [[]FNN+Y7??$D"&q'Q"j0 $Qy$q'!DG9Ad1gYGF %(ZZ!!WF 77HIJ) * !&'59+ 0 <VHEF3 :  smsM   C; BC'4C; >C'
C; C'C; 'C8	2C; 8C; ;DDDc                 "    R p\         P                  ! 4       \        RR7      ,           p\        4       ;_uu_ 4       pVP	                  4       pVP                  W .4       VP                  4       pV'       g   \        RV  R24        RRR4       R# RpWV3pVP                  Wx4       VP                  4       ^ ,          p	VP                  4        V	uuRRR4       #   + '       g   i     R# ; i  \         d   p
\        RT
 24       h Rp
?
ii ; i)zA
            SELECT COUNT(*) FROM Users WHERE UserID = ?
        i  )minuteszError: El UserID z no existe en la tabla UsersNz
                INSERT INTO ActivationTokens (UserID, Token, CreatedAt, ExpiresAt, IsUsed)
                OUTPUT INSERTED.ActivationTokenID
                VALUES (?, ?, GETDATE(), ?, 0);
            zError guardando token: )r   utcnowr   r   r   r   fetchvalr   r   commitr   )r   Tokenr   
expires_atr   r   
user_countinsert_queryvaluestoken_idr   s   &&         r   
save_Tokenr)   /   s    * __&4)@@
[[]F NN+X6*J)&1MNO L Z0F NN<0(+HKKM7 :  's+,sA   :C/ ACC/ ?C
C/ C,	&C/ ,C/ /D:D		Dc                   ^ RI pVP                  R4      p V '       g   \        R4      hV P                  4       pRp\	        4       ;_uu_ 4       pVP                  4       pVP                  WC34       VP                  4       pRRR4       X'       g"   RV 2pVP                  V4       \        V4      hV#   + '       g   i     L;; i  \         d    h \         d   p	TP                  RT  RT	 24       h Rp	?	ii ; i)u   
Busca el módulo correspondiente a la ruta proporcionada.
Retorna una tupla (ModuleID, CompanyID, DivisionID, DepartamentID)
o lanza LookupError si no se encuentra.
Nuser_accessu2   Ruta vacía o nula proporcionada a get_ModuleID().z
            SELECT ModuleID, CompanyID, DivisionID, DepartamentID
            FROM Modules
            WHERE LOWER(RutaPython) = LOWER(?)
        u*   Módulo no encontrado en BD para la ruta: zError en get_ModuleID(z): )logging	getLogger
ValueErrorstripr   r   r   r   warningLookupErrorr   error)
rutar,   loggerruta_limpiaLoduleID_queryr   r   r   msgr   s
   &         r   get_ModuleIDr8   \   s     }-F QRR jjl [[]FNN>>:??$D  >{mLCNN3c""    -dV3qc:;s@   C /C 3B4C "C 4C	?C C:C:C55C:c                     R p\        4       ;_uu_ 4       pVP                  4       pVP                  W34       VP                  4       pVuuRRR4       #   + '       g   i     R# ; i  \         d   p\        RT 24       h Rp?ii ; i)z^
            SELECT CompanyID,DivisionID,DepartamentID FROM Profiles WHERE UserID = ?
        Nr   r   r   r   r   r   r   )r   r6   r   r   r   r   s   &     r   .get_CompanyID_DivisionID_DepartamentID_Profiler;      st     [[]FNN>95??$D   sms4   A) 4A

A) A&	 A) &A) )B4BBc                 @    R p\        4       ;_uu_ 4       pVP                  4       pVP                  W34       VP                  4       pV^ ,          p\	        RV4       VuuRRR4       #   + '       g   i     R# ; i  \
         d   p\	        RT 24       h Rp?ii ; i)zD
            Select RoleID from UserRoles where UserID  = ?
        z------------------------>Nr   r   )useridRoleID_queryr   r   r   RoleIDr   s   &      r   
get_RoleIDr@      s     [[]FNN<3??$D!WF-f5   sms5   A> A	A*
A> *A;	5A> ;A> >B	BBc                 *    R p\        4       ;_uu_ 4       pVP                  4       pVP                  W V34       VP                  4       pV^ ,          pVuuRRR4       #   + '       g   i     R# ; i  \         d   p\        RT 24       h Rp?ii ; i)zX
            Select count(*) from RoleModules where RoleID = ? AND ModuleID = ?
        Nr   r:   )r?   ModuloIDpermiso_queryr   r   r   permisor   s   &&      r   get_permisorE      s     [[]FNN=(*<=??$D1gG   sms4   A3 >A
A3 A0	*A3 0A3 3B>BBN)Consultas_SQL.conexionr   r   r   r   r   r)   r8   r;   r@   rE        r   <module>rI      s1   
 2 2 2%P+Z)X "rH   