
    JhD                     8   d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlmZm	Z	 d dl
mZ d dlT d dlT d dlmZ edk    rdZndZd	Zd
Zda	 d Z	 d Zd Zd Z	 d Zd Zd Zd Zd Zd Zd Zd Zd Zd Z	 d Z d Z!	 d Z"d Z#	 d Z$d Z%d  Z&	 d! Z'd" Z(dS )#    N)datetime	timedelta)Create)*)platformdarwinzD/Users/wsoft/Documents/wsoft.com.mx/carteraplus-automatizador/files/z6/var/www/wsoft.com.mx/carteraplus-automatizador/files/zhttps://smartoffice.hdi.com.mx/Dhttps://smartoffice.hdi.com.mx/dashboard/operaciones/pagosPendientes c                 X  K   |                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|                      dd          }|d	k    r t          |d
         dd           d {V  dS t          d
|d
         i           d {V  |d         |d<   |d         |d<   |dk    r$t          |d         |d
         d           d {V }t	          |d                    d {V \  }}		 t          dt          |                      t          |          dk    rV|d         d         dk    rD|d          }
t          j        	                    d|
 d          rt          j
        d|
 d           t          |          dk    r+t          |d
         dd           d {V  |dk    rd|d         }|d          }
t          ||
           d {V \  }}}t          i |ddd           d {V  t          d
|d
         i           d {V  |D ]n}t                                           |d                   }t          |          r||d<    |||           d {V  Pt          |d
         dd           d {V  o|dz   | d<   d| d<   || d<   || d<   || d<   t!          |            d {V  n8t          |d
         d d           d {V  |durt#          ||           d {V  t          |          dk    rWt          |	          dk    rFt          |d
         d d           d {V  t%          |d
         |d         d!           d {V  d S d S d S )"NdataFconexionprimeraEjecucionpbrowserpagereconteo   id_tarea	err_bucler   statusid_conexionsessioncredenciales)r   r   	subtareaszSUBTAREAS TOTALES    r   funcionverificaLoginSesion../sessions/.jsonsiTocultarNavegadoru   Conexión establecida)loginMessagerefreshsubtareaerr_f	terminador   r   )getactualizarStatusTareaactualizarConteoUsoTareaobtenerDatosConexionorganizaSubtareasprintlenospathexistsremove actualizarStatusNavegadorAbiertoinicializarPlaywrightenviarMensajeglobalscallableejecutarProcesosHdicerrarPlaywrightactualizarFechaLogin)
parametrosr   r   r   r   r   r   r   subtareasNavegadorsubtareasWhatsappr   r"   itemr   s                 =/var/www/wsoft.com.mx/carteraplus-automatizador/python/hdi.pyr9   r9      s      nnVU33$ nnZ77( nn%7?? nnS%00! nnY66' nnVU33$ nnZ77(!mm
tJ/?;!W!W
Z
ZZZZZZZZ5 JZ0@"BDDDDDDDDD'$y/!&)$~ %)D<O]abl]m+o+oqqqqqqqqH 1B(;BW0X0X*X*X*X*X*X*X'' 8S"46688999	
""!Y'+@@@&(g	5w555	6	6 1
	////000	
!! +$z:JVZ,\,\
^
^^^^^^^^ 	D  01&(g45EwOOOOOOOOa$ ^T^3JW\^^^_________$
D4D&FHHHHHHHHH" f f		d9o..g	'		 fZgdD!!!!!!!!!! /d:>NZa0b0beeeeeeeeee&.lJz%*J!"%&JsO%,Jy%)Jv
j
)
)))))))))
*$z:JVa,b,b
e
eeeeeeee	Q(((((((((	
""s+<'='='B'B
tJ/?;!W!W
Z
ZZZZZZZZ
d:.>tTaOb d d
f
ffffffffff #"'B'B    c                 `  K   d}d}|                     |            d {V  |                    d           d {V  t          d|d         i           d {V  t          j        d           d {V  |                    d           d {V }|t          k    rt          d|d         i           d {V  t          ||           d {V }|r]t          d|d         i           d {V  t          |d         |d         d           d {V  |                     |            d {V  nd}|S )	NFTnetworkidler      () => window.location.hrefr   r(   )	gotowait_for_load_stater+   asynciosleepevaluate
urlInicialiniciar_sesionr;   )urlr   r   sesionIniciadacontinuaOperacion
url_actuals         r@   validar_inicio_sesionrQ   h   s     .		#  ///////// JZ0@"BDDDDDDDDDa ]]#?@@@@@@@@*:
"j$z2B$D
F
FFFFFFFF)$55555555N  $
D4D&FHHHHHHHHH Z0@QUVcQd"f"fhhhhhhhhhIIcNN	rA   c                 T  K   |d         }|d         d         }|d         d         }t           j                            d| d          rt          j        | d           d}|                     d           d {V }t          d	|           |d
k    rjd}|                     d                                           d {V  |                     d                              |           d {V  |                     d                                           d {V  |                     d                              |           d {V  | 	                    dd                                           d {V  | 
                    d           d {V  t          j        d           d {V  | 	                    ddd                                           d {V }t          d|           |dk    rd}nd}n|                     d                                           d {V  |                     d                              |           d {V  |                     d                                           d {V  |                     d                              |           d {V  | 	                    dd                                           d {V  t          j        d           d {V  d}	 |                     d                              d                              d          }	|	                                 d {V rd}nt          d           d}dS n)# t&          $ r}
t          d           d}Y d }
~
dS d }
~
ww xY w|du rt          d           t)          |d          d!         d"d#           d {V  t+          |d$         d"d%           d {V  t-          i |d&d'd(           d {V  t          j        d'           d {V  t-          i |d)d'd*           d {V  t/          j        d           d S |                     d           d {V }t          d+||           |du r|d,k    rTt-          i |d&d'd(           d {V  t          j        d'           d {V  t-          i |d)d'd*           d {V  dS | j                            d-| d.           d {V  t-          i |d)ddd/           d {V  dS t          d0           | j                            d-| d.           d {V  t-          i |d)ddd/           d {V  t          j        d           d {V  | 
                    d           d {V  dS )1Nr   r   campo1campo2./r    TrE   zCARGANDO.......z+https://portalagentes.hdi.com.mx/Login.aspxFUsuariou   Contraseñabuttonu   INICIAR SESIÓNnamerC   
   cellu<   El usuario y/o password no es válido, favor de verificarlo.)rY   exactzVALIDANDO:: r   Entrar   divu(   Usuario o contraseña incorrecto Aceptar)has_textr   zENTRA EN EL ELSE, TODO BIEN.z(AL PARECER HAY ERROR DE INICIO DE SESIONr%   _iderr_sessionra   r   r   r   zERROR DE INICIO DE SESION.r   r#   	conectador
   )r#   statusLoginzENTRA EVALUACION:: elsez(https://smartoffice.hdi.com.mx/dashboardr   )r1   )r#   re   saveSessionzACCEDIENDO Y GUARDANDO...)r0   r1   r2   r3   rJ   r.   get_by_labelclickfillget_by_rolerG   rH   rI   countget_by_placeholderlocatorfilternth
is_visible	ExceptionactualizarStatusSubtarear*   r6   sysexitcontextstorage_state)r   r   r   usuariopasswordv1rP   error_sesionerrorSesionrn   es              r@   rL   rL      s     &''1''1( W^^''''(( !I   "]]#?@@@@@@@@*:&&&@@@	B


I
&
&
,
,
.
........


I
&
&
+
+G
4
44444444


M
*
*
0
0
2
22222222


M
*
*
/
/
9
99999999


8*;

<
<
B
B
D
DDDDDDDD

"
"=
1
11111111
-

))&7u  ~B)  C  C  I  I  K  K  K  K  K  K  K  KL	.,'''akkkk

!
!)
,
,
2
2
4
44444444

!
!)
,
,
1
1'
:
::::::::

!
!-
0
0
6
6
8
88888888

!
!-
0
0
5
5h
?
????????


8(

3
3
9
9
;
;;;;;;;;
-

KU##**4^*__ccdeffg!!##	#	#	#	#	#	# ,---t	 	
    *+++kTTTTT
 D	
4555
"T*-=e-DP]$_$_
a
aaaaaaaa
tJ/?=!Y!Y
[
[[[[[[[[
a4a1N]^aaa
b
bbbbbbbb
-


H4HAHHH
I
IIIIIIIIHQKKKKK}}%ABBBBBBBBJ	
#R444	Tzz	A	A	Aete5RabeeefffffffffmALtLRLLLMMMMMMMMMu l((.KW.K.K.K(LLLLLLLLL^t^RaX\^^^_________t'(((L&&,I7,I,I,I&JJJJJJJJJ\T\2AVZ\\\]]]]]]]]]M!$$]333333333Ts   A*M. .
N8NNc                   K   t          i |d|d         dd           d {V  t          d| |           d {V }|rmt          |d         |d         d           d {V  t          i |d|d         dd           d {V  t          |d	         d
         dd           d {V  d S t          i |d|d         dd           d {V  t          |d	         d
         dd           d {V  d S )NTr   u   Intentando iniciar sesión)login_intentor   mensajer	   r   r(   u   ¡Sesión validada con éxito!r%   ra   r'   rc   zDatos incorrectos)r6   rQ   r;   rs   )r   r   rO   s      r@   r   r      s       D  DT-EX  fB  D  D  D  	E  	E  E  E  E  E  E  E  E12xz~  AE  F  F  F  F  F  F  F  F `
d:.>tTaOb d d
f
ffffffff
  J4  J$tMGZ  hH  J  J  J  K  K  K  K  K  K  K  K  K
"T*-=e-DP[$]$]
_
__________ |4|$tMGZgz|||
}
}}}}}}}}
"T*-=e-DP[$]$]
_
__________rA   c                   K   t          |d         d         dd           d {V  t          t          | |           d {V }|rt          i |ddd           d {V  |                     dd	
                                           d {V  t          j        d           d {V  |                                 4 d {V }|                     dd
                                           d {V  	 |j	         d {V }t           |d          d}|                    |           d {V  t          d|           t          j        d           d {V  t          i |ddi           d {V  g }t          ||d|           d {V  n'# t          $ r}t          d|           Y d }~nd }~ww xY wd d d           d {V  d S # 1 d {V swxY w Y   d S d S )Nr%   ra   iniciadorc   zObteniendo prima por pagarrD   rd   rW   descargar ExportarrX   imgexcelr   	_porpagarzRUTA ARCHIVO COMPLETA:r   r#   Actualizando sistemar   ERROR)rs   rQ   rK   r6   rk   ri   rH   rI   expect_downloadvalueRUTA_FOLDERsave_asr.   leerExcelPorPagarrr   )r   r   rO   download_infodownloadrutaArchivodatosr}   s           r@   exportarReportePorPagarr      s1      4
+;E+Bj"Z"Z\\\\\\\\\1*dDIIIIIIII 
a4a1N]^aaa
b
bbbbbbbb
 

8*>

?
?
E
E
G
GGGGGGGG
-

 ##%%       U1177999999999&,,,,,,,$@d9o@@@{+++++++++&444mAOtO^5LOOPPPPPPPPPk1e<<<<<<<<<<   gq                              s=   0G
6BFG

F4F/*G
/F44G


GGc                   K   t          d| |           d{V }|rt          j        d           d{V  |                     d           d{V }|dk    r6|                     d           d{V  |                     d           d{V  t          j        d           d{V  |                     d                              d           d{V  |                     d	d
                              d           d{V  t          j        d           d{V  | j	        
                    d           d{V }t           |d          d}t          |d          5 }|                    |                                 d{V            ddd           n# 1 swxY w Y   t          ||           d{V  t!          |d         d         dd           d{V  dS dS )z
  PARA LEER EL PDF DEBES TENER INSTALADO ESTO:
  pip3 install camelot-py --break-system-packages
  pip3 install opencv-python --break-system-packages
  apt-get install ghostscript
  pip3 install ghostscript --break-system-packages
  zChttps://portalagentes.hdi.com.mx/Agente/PrimasPendientesDePago.aspxNrD   rE   z?https://portalagentes.hdi.com.mx/Agente/Anuncios_Generales.aspxrC   z*#ctl00_ContentPlaceHolder1_ddlLineaNegocioTabrW   zConsultar Primas PendientesrX   Enterr^   z:https://portalagentes.hdi.com.mx/Agente/VisorReportes.aspxr   z_porpagarpdf.pdfwbr%   ra   r'   rc   )rQ   rH   rI   rJ   rF   rG   rn   pressrk   requestr)   r   openwritebodyleerExcelPorPagarV2Geminirs   )r   r   rO   rP   responser   fs          r@   exportarReportePorPagarV2r     s       22wy}  @D  E  E  E  E  E  E  E  E `
-

}}%ABBBBBBBBJVVVII[\\\\\\\\\$$]333333333
-


,,C
D
D
J
J5
Q
QQQQQQQQ


8*G

H
H
N
Nw
W
WWWWWWWW
-

\%%&bccccccccH C$y/CCCK	k4	 	  %AggHMMOO######$$$% % % % % % % % % % % % % % % $D+
6
66666666
"T*-=e-DP[$]$]
_
__________+` `s   ".FF #F c                 F    | dk    rdS | dk    rdS | dk    rdS | dk    rdS d	S )
Nr   AnualrD   	Semestral   
Trimestral   Mensualr
    )
forma_pagos    r@   generaFormaPagoTextor   >  sA    1__7Q;Q<R92rA   c                     | dk    rd|                      dd          fS |dk    rd|                     dd          fS |dk    rd|                     dd          fS |dk    rd|                     dd          fS dS )	N$.00zC. Vencida 1 - 15$r
   zC. Vencida 1 - 30zC. Por Vencer 1 - 15u   C. Por Vencer más de 16)Error0)replace)importe_vencida_1_15importe_vencida_1_30importe_porvencer_1_15importe_porvencer_mas_16s       r@   generaMontoYSeccionr   J  s    V## 4 < <S D DDDv%% 4 < <S D DDD''!#9#A#A#b#I#III6))%'?'G'GB'O'OOO<rA   c                   K   t          j        ||d           }d }t          t          |                    D ]}d|j        |         j        v r|} n|t          d          |j        |         |_        ||dz   d                              d          }|	                    t                    }|                                D ]O\  }}|                                                                s	d|j        v r n|j        d         d	k    rJd}	|d
k    rd}	n|dk    rd}	i ddd| d         d         d|	 d|j        d          d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d|j        d         d |j        d!         d"|j        d#         d$|j        d%         d&|j        d'         d(|j        d)         d*|j        d+         }
|                    |
           Q	 	 t          | d,         d-|id.           d {V }t!          | d/         d0         d1d2           d {V  t#          i | dd-|d3dd4           d {V  d S )5N
sheet_nameheaderu   Tipo de pólizau1   No se encontró la cabecera con 'Tipo de póliza'r   Tdropr
   r   nanr   AUTOSu   DAÑOScompaniahdiclave_agenter   tipo_poliza - 
id_oficinarD   numero_polizanumero_incisor   poliza_anteriorr^   inicio_vigencia   fin_vigencia   fecha_emision   nombre_asegurado	   frecuencia_pagorZ   prima_total_pagada   n_serie_ultimo_recibo_pagador   fecha_limite_pago   adeudo   r   arrHdiPorPagarr   reportesr%   ra   r'   rc   optarrmostrar_datosarrayexcelProcesado)pandas
read_excelranger/   ilocvalues
ValueErrorcolumnsreset_indexastypestriterrowsisnullanyappendregistrarRecibosrs   r6   )r   r   nombrePestanar   df
header_rowi_rowramoregistrorespuestaReciboss               r@   r   r   W  s     tLLL" *R>>  aBGAJ---je . 
H
I
II wz""*	*q.//&&D&11" 
yy~~"  ! !fa
zz|| R3:--e
x{eDdd	!		d%d>*>: ..!.. CHQK	
 sx{ sx{ ! ! chqk sx{ #(1+ " CHRL %chrl 38B<  !H& 
LLG-]@Scsuza|/~/~  A  A  A  A  A  A  A  A
"T*-=e-DP[$]$]
_
________
  F4  F$JZchAkAk  @D  F  F  F  G  G  G  G  G  G  G  G  G  G  GrA   c                 4  K   d}ddd}	 t          | d          5 }d|                     d          d         |d	ffg}t          j        |||
          }d d d            n# 1 swxY w Y   |                                S # t
          $ r}dg icY d }~S d }~ww xY w)Nz6https://segurocotizas.com/coti/api_reportes_gemini.phpzReporte HDI Por Pagarpruebas)identificadorapp_id_secretrbpdf/zapplication/pdf)r   filesreporte)r   splitrequestspostjsonrr   )r   rM   payloadarchivor   r   r}   s          r@   convertirPdfAJSONGeminir    s     @#6UU'		k4	 	  ?G))#..r2G=NOPQes>>>h? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
 ==??	   s@   A? 9A A?  A$$A? 'A$(A? ?
B	BBBc                 <    ddddd}|                     | d          S )NANUAL	SEMESTRAL
TRIMESTRALMENSUAL)r   rD   r   r   OTRO)r)   )valorformas_pagos     r@   r   r     s'    KK+		'	''rA   c                    g }|D ]S}d}t          d          }d}t          |                    dd          |                    dd          |                    dd          |                    dd                    \  }}d	| d
         d         | d|                    dd           d|                    dd          d|                    dd          ||                    dd          |                    dd          |                    dd          |                    dd          |                    dd          ||d}|                    |           U|S )Nr   rD   r
   cartera_vencida_1_15_diasr   cartera_vencida_1_30_diascartera_por_vencer_1_15_diascartera_vencida_mas_de_16_diasr   r   r   r   descripcion_del_endosopolizapruebaserie_reciboconducto_de_cobro	aseguradoinicio_de_vigencia)r   r   r   r   r   numero_recibor  f_pagotipo_endosoconducto_cobror   r   r   importetipo_cartera)r   r   r)   r   )	r   r  r   r   r   r   r"  r!  r   s	            r@   transformar_reporter#    sm   
%  cD%a((JJ/	gg)622	gg)622	gg,f55	gg.77	 L' >*>:HH)A2!F!FHHwwx,,ggnb11WW5r:: 3R88''+r22!5r::77#7<<"! H& 
LL	,rA   c                 V  K   t          |           d {V }g }t          |d                   dk    rR|d         }t          | |          }|D ]}|                    |           t	          | d         d|id           d {V }t          | d         d         dd	           d {V  d S )
Nr  r   r   r   r   r%   ra   r'   rc   )r  r/   r#  r   r   rs   )r   r   r   r   r  registros_transformadosr   r   s           r@   r   r     s     *;77777777(
%(9
!##y!G1$@@+  ll8 .]@Scsuza|/~/~  A  A  A  A  A  A  A  A 4
+;E+Bk"["[]]]]]]]]]]]rA   c                 <  K   t          j        |ddd          }t                              d |D                       }d}|                                D ]W\  }}|                                D ]5\  }}|                    dd          }d	|                                v r|} n6|dk    r nX|dk    rd}	|j        d d |f         D ](}|	d
z   }		 t          |          }
 n# t          $ r Y %w xY wg }t          |                                          D ]a\  }}d}|j        d                             dd          }|                    d          }|j        d                             d          }|d         dk    s|j        d         dk    r|d}|d         }t          t          |d
                             }t          |j        d         |j        d         |j        d         |          \  }}d| d|j        d          d|j        d         ||j        d         ||j        d         |j        d         |j        d         |j        d         |j        d         ||d}|                    |           ct!          | d         d         dd            d {V  d S d S )!NstreamallT)flavorpages
split_textc                     g | ]	}|j         
S r   )r   ).0tables     r@   
<listcomp>z'leerExcelPorPagarV2.<locals>.<listcomp>  s    555U555rA   r   
r
   r  r   r   r    rD   r   r   r  r   r   rZ   r   r   r   r   r^   r   r   )r   r   r   r   r  r  r  r  r   r   r   r   r!  r"  r%   ra   r'   rc   )camelotread_pdfpdconcatr   itemsr   lowerr   intr   	enumerater  r   r   r   rs   )r   r   tablesall_datapoliza_foundyr   xr   filaInicialenteror   indexr   item_11r   r  importe_mas_16r"  r!  r   s                        r@   leerExcelPorPagarV2rD    s      KRVWWW&YY55f55566(
 ,!!##  faIIKK  5mmD"%%e	U[[]]	"	" 
# be  B Kqqq,/ 	 	!OkU    E00 ( (
s
 d$$T3//gc""gx{((--j 
r		SXa[B.. mqzn*C
1,>,>@@j138A;SXVX\[ikklG 0038A;00!&x{(1+HQK8A;$! h$ ll8 #T*-=e-DP[$]$]
_
__________} s   C  
C-,C-c                 t  K   t          i |ddd           d {V  |                     d           d {V  |                     d           d {V  t          j        d           d {V  |                     dd	                                           d {V  |                     d
d	                                           d {V  |                                 4 d {V }|                     dd	                                           d {V  	 |j         d {V }t           |d          d}|
                    |           d {V  g }t          ||d|           d {V  n'# t          $ r}t          d|           Y d }~nd }~ww xY wd d d           d {V  d S # 1 d {V swxY w Y   d S )Nu   Obteniendo pólizas por renovarrD   rd   4https://smartoffice.hdi.com.mx/dashboard/operacionesrC   r^   r   renovarrX   rW   r   r   r   _porrenovarr   r   )r6   rF   rG   rH   rI   rk   ri   r   r   r   r   leerExcelPorRenovarrr   r.   )	r   r   ejecutorr   r   r   r   r   r}   s	            r@   exportarReportePorRenovarrK  O  s     dd/Q`adddeeeeeeeee		HIIIIIIIII  /////////a 	Y//55777777777(<==CCEEEEEEEEE!!## 
 
 
 
 
 
 
}


5w

/
/
5
5
7
77777777$*******h"@DO@@@k[)))))))))ek1e<<<<<<<<<<   GQ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s=   '0F'AE-,F'-
F7FF'FF''
F14F1c                 	  K   t          j        ||d           }d }t          t          |                    D ]}d|j        |         j        v r|} n|t          d          |j        |         |_        ||dz   d                              d          }|	                    t                    }|                                D ]\  }}|                                                                s	d|j        v r n|j        d         d	k    rJd
}		 i ddd|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                         d|j        d                                          d!|j        d"                                         d#|j        d$                                         d%|j        d&                                         d'|j        d(                                         d)|j        d*                                         |j        d+                                         |j        d,                                         |j        d-                                         |j        d.                                         |j        d/                                         |j        d0                                         |j        d1                                         |j        d2                                         |j        d3                                         |j        d4                                         |j        d5                                         |j        d6                                         |j        d7                                         d8}
|                    |
           t!          i | dd9|d:dd;           d {V  t#          j        |           d S )<Nr   z
Id Oficinau,   No se encontró la cabecera con 'Id Oficina'r   Tr   r
   r   r   -r   r   r   r   numero_cotizacionr   rD   poliza_actualr   r   r   r^   r   r   r   r   r   r   estatus_polizar   nip_perfil_agenterZ   nombre_agenter   r   r   rfc_asegurador   beneficiario_preferenter   giro                                          )	ubicaciontipo_productomonedar   paqueteprima_neta_emitidafinanciamientocesion_comisionderechos_polizaivaprima_total_emitidar    n_serie_del_ultimo_recibo_pagadoarrHdiPorRenovarr   r   )r   r   r   r/   r   r   r   r   r   r   r   r   r   r   stripr   r6   r0   r3   )r   r   r   r   r   r   r   r   r   r   r   s              r@   rI  rI  h  s     tLLL" *R>>  arwqz(((je ) 
C
D
DD wz""*	*q.//&&D&11" 
yy~~"  2 2fa
zz|| R3:--e
x{eD %  CHQK%%''  38A;,,..	 
 sx{((**  sx{((**  sx{((**  !**,,  !**,,  chqk''))  sx{((**  ))++  38B<--//  sx|))++  #(2,,,..   sx|))++! "  "!3!3!5!5# $ chrl  ""% & 8B<%%''x|))++""$$"++--"##%%HRL..00**,,"++--"++--Xb\!! Xb\//11HRL..00*-(2,*<*<*>*>?     HD 
LL
 	  F  FHZch?k?k  @D  F  F  F  	G  	G  G  G  G  G  G  G  G)KrA   c                   K   t          i |ddd           d {V  |                     d           d {V  |                     d           d {V  t          j                    }|t          d          z
                      d          }|t          d	          z                       d          }|                     d
                                           d {V  |                     d
          	                    |           d {V  |                     d
          
                    d           d {V  |                     d
          	                    |           d {V  |                     d
          
                    d           d {V  |                     d          	                    |           d {V  |                     d          
                    d           d {V  |                     d          	                    |           d {V  |                     d          
                    d           d {V  |                     dd          
                    d           d {V  t          j        d           d {V  |                                 4 d {V }|                     d          }|                    d                              d          }	|	                                 d {V  	 |j         d {V }
t$           |d          d}|
                    |           d {V  t          i |ddi           d {V  t          j        d           d {V  t          i |ddi           d {V  t          j        d           d {V  t          i |ddd           d {V  t)          ||           d {V  n'# t*          $ r}t-          d|           Y d }~nd }~ww xY wd d d           d {V  n# 1 d {V swxY w Y   t          j        d           d {V  d S )Nu   Obteniendo pólizas canceladasrD   rd   zAhttps://agentes360.qualitas.com.mx/group/guest/polizas-canceladasrC      )daysz%d/%m/%Yr[  zFecha Inicior   r   z	Fecha FinrW   BuscarrX   r   z&p:has-text('Selecciona el formato de')ar   r   _cancelacionesr#   u   Procesando informaciónr   r^   r
   r   )r6   rF   rG   r   nowr   strftimerm   ri   rj   r   rk   rH   rI   r   rn   rp   r   r   r   leerExcelCancelacionesrr   r.   )r   r   rJ  r   fecha_actualfecha_siete_dias_antesfecha_siete_dias_despuesr   parrafosenlacer   r   r}   s                r@   exportarReporteCancelacionesr    s     cc/P_`cccddddddddd		UVVVVVVVVV  /////////,(9"+=+=+==GG
SS*YB-?-?-??II*UU 	//55777777777//445KLLLLLLLLL//55g>>>>>>>>>//445KLLLLLLLLL//55e<<<<<<<<<,,112JKKKKKKKKK,,227;;;;;;;;;,,112JKKKKKKKKK,,2259999999991177@@@@@@@@@a!!##       }||DEEHc""&&q))F
,,..$*******h"CDOCCCk[)))))))))PTP>3MPPQQQQQQQQQM!NTN>3JNNOOOOOOOOOM!HTH2AHHHIIIIIIIII"45555555555   GQ                          & 	as>   5APCO%$P%
P	/P?PP		P
P(+P(c                 H  K   t          j        |d           }dddddddd	d
d	}i }|                                D ]q}|                    |g                                          }||         j        d         }|||                             |g                   j        d         }||f||<   ri }	|                                D ]G\  }\  }}|j        ||j        	                    |          dz   f         }
||         }|
dk    r|
nd|	|<   Hd }t          t          |                    D ]}d|j        |         j        v r|} n|t          d          |j        |         |_        ||dz   d                              d          }|                    t                     }g }|                                D ]\  }}|                                                                s	d|j        v r n|j        d         dk    rH|j        d         d|j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d         |j        d          d!}|                    |           t)          i | d|	d"|d#dd$           d {V  t+          j        d%           d {V  t)          i | dddd&           d {V  t/          j        |           d S )'N)r   oficinanumero_agenteagentecallecolonia	cp_estadotelefonorfccedula_numero)	zOFICINA:zNUM. AGENTE:zAGENTE:zCALLE:zCOLONIA:zCP; ESTADO:u
   TELÉFONO:zRFC:u   CÉDULA NÚMERO:r   r   r   r
   u   DÍAu&   No se encontró la cabecera con 'DÍA'r   Tr   r   r^   r   r   r   r   rV  rX  rZ  r\  r`  ra  )diar   r   r  endoso_originalendoso_modificadorf  u   fecha_emisiónr   
prima_netaprima_totalr  causaobservacionesarrHdiCancelacionesr   )r   cabecerar   r   r   )r#   re   r$   )r   r   keysisinr   rA  r6  r   r   get_locr   r/   r   r   r   r   r   r   r   r   r6   rH   rI   r0   r3   )r   r   r   keywords_mappingposiciones_palabras_clavepalabra_claveresultado_busquedacolumnafiladatos_agenter  nueva_claver   r   r   r   r   r   s                     r@   ry  ry    s     T222" #'
 
 !',,.. ? ?m-115577 !34:1=Gbk//06q9D04gm,, ,(A(G(G(I(I @ @$m_dGGD"*,,W5599:E"=1K).%RL *R>>  a"""je # 
=
>
>> wz""*	*q.//&&D&11" 
yy~~" %  fa
zz|| R3:--e
x{e Xa[hqk!8A;HRLHRLXb\8B<x|x| H" 
LL  c  c,bw  AF  ZI  ZI  ]a  c  c  c  	d  	d  d  d  d  d  d  d  daTTrdTTTUUUUUUUUU)KrA   c                   K   d}	 |                                   d {V }|                    di                               di                               d          }|rft          j        |          }d}t           t
           }t          |d          5 }|                    |           d d d            d S # 1 swxY w Y   d S d S # t          $ r}d}Y d }~d S d }~ww xY w)NFr   ObjetoreportePDFBAse64Tr   )	r  r)   base64	b64decoder   nombrePolizar   r   rr   )r   canresponse_json
pdf_base64pdf_datar   pdf_filer}   s           r@   handle_responser  W  sO     #"--//))))))M""62..228R@@DDEWXXJ !!*--hc"2L22kT"" !hx   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !! ! 
   
CCCCCCCs<   BC B8+C 8B<<C ?B< C 
CCCc                   K   t          d|            d}	 t                              di                               di                               d          }t          d|           d S # t          $ r}d}Y d }~d S d }~ww xY w)NzRESPONSE:::Fr   r  r  zBASE 64)r.   r  r)   rr   )r   r  r  r}   s       r@   handle_response_porpagarr  h  s      x   # ""62..228R@@DDEWXXJ	)Z     
   
CCCCCCCs   AA* *
B4A<<Bc                   K   t          d| |           d {V }|d         d         |d         d<   |r|                     d           d {V  t          i |d|d         d          dd           d {V  t          |d         d                   |d         d<   |                     d	                                           d {V  t          j        d
           d {V  |                     d	                              |d         d                    d {V  | 	                                 d {V  t          j        d
           d {V  |d          d|d         d          da
|                     dt                     |                     d	                              d           d {V  |                                 4 d {V }|                     d|d         d                                        d|d         d          d                                           d {V  t          i |ddd           d {V  t          j        d           d {V  |j         d {V }d d d           d {V  n# 1 d {V swxY w Y   t%          t&           t           t                     d {V  t          i |ddddt(          d         t(          d         t          dd           d {V  d S d S )NrF  r%   r   r  rC   u   Procesando archivos de póliza r   rd   rt  rD   r   _poliza_.pdfr   r   z#pago_u	   Póliza: rM  zSubiendo archivos a la nuber   u   ¡Documentos disponibles!Tr
   type)r   r  	no_polizar  )r#   re   r   descarga)rQ   rG   r6   r   rm   ri   rH   rI   rj   pauser  onr  r   expect_popuprn   get_by_textr   subirArchivoAS3r   rJ  )r   r   rO   
page1_infopage1s        r@   obtenerDocumentoPolizar  |  s     12hjnptuuuuuuuu  $J/@$z8 f

"
"=
1
11111111
  C4  C1oSWXbScdlSm1o1o~  C  C  C  D  D  D  D  D  D  D  D  D!$T*%5h%?!@!@DX

!
!(
+
+
1
1
3
33333333
-



!
!(
+
+
0
0j1A(1K
L
LLLLLLLL
**,,
-

 9oOOtJ/?/IOOOLGGJ(((

!
!(
+
+
1
1'
:
::::::::  "" % % % % % % %jLL>$z"28"<>>??KKLuX\]gXhiqXrLuLuLuvv||~~~~~~~~~dTd3Q`adddeeeeeeeeeM!$$$$$$$e	% % % % % % % % % % % % % % % % % % % % % % % % % % % [8,88,
G
GGGGGGGG
  e4  e1L[\os  KM  W_  `f  Wg  v~  G  vH  T`  Bc  Bc  e  e  e  f  f  f  f  f  f  f  f  f  f  f5f fs   B#J
JJc                   K   |                      d           d {V  d}t          |ddd          }|                                }|j        dk    rt	          |j                  |d         d	          d
|d         d          d|d         d          d}d|d          }|                    ||          }	d}
t          j        |
 |d          d|d          d          }|                                 d|d          d|d          d}t          |d          5 }|
                    |j                   d d d            n# 1 swxY w Y   |                    ||dd           t          j        |           d}
t          j        |
 |d          d|d          d          }|                                 d|d          d|d          d}t          |d          5 }|
                    |j                   d d d            n# 1 swxY w Y   |                    ||dd           t          j        |           	 |                                 d S # t          $ r}t!          d|           Y d }~d S d }~ww xY w)NrC   testfirefoxFi N  )r   r   headless	autoClose	CONNECTEDr?   clientez', te informamos que tu recibo de pago: recibouR    ya venció, te invitamos a que realices el pago correspondiente por el monto de: r!  z@. Si ya pagaste favor de confirmar con el *comprobante de pago.*521whatsappzFhttps://wsoft1.s3.us-east-1.amazonaws.com/segurocotizas/automatizador/r   	_recibos_r  r  rU   r   zRECIBOS.pdfr
   r  z
POLIZA.pdfzERROR CLIENT)rG   r   startstaterr   sendTextr  r)   raise_for_statusr   r   contentsendFiler0   r3   closer.   )r   r   rJ  r   your_session_namecreatorclientmessagephone_numberresultrM   	respuestaruta_destinor  r}   s                  r@   notificarAClienteRecibor    sy       /////////,i%[`aaa'==??& ]k!!gm$$$	*  _  _S[\bScdlSm  _  _  BJ  KQ  BR  S\  B]  _  _  _'-x
+--, ??<11& 	Q#lcU4	?UUXh=OUUUVV) Id9oHH0BHHH,L$ %7MM)#$$$% % % % % % % % % % % % % % % 	//,mR@@@)L 	Q#lcT4	?TTHX<NTTTUU) Hd9oGGx/AGGG,L$ %7MM)#$$$% % % % % % % % % % % % % % % 	//,lB???)L
LLNNNNN	   	.!s<   E  EEHHH9I 
I4I//I4c           	      ^  K   d}d}d}d}d}t          j        d           d {V  |||||d}g }g }	|d         |d         d         |d         d         |d         d         |d         d	         |||	d
}
t          |
           d {V  t          |d         d         dd           d {V  d S )Nr
   r   )r  r  	direccionr   poliza_renovadar   r%   r   
id_clienter   r  )r   r   r  r   r  
comisionesdatos_principalesdatos_adicionalesra   r'   rc   )rH   rI   registrarDatosAutogeneradosrs   )r   r   clienteTelefono
clienteRFCclienteDireccionpolizaAnteriorpolizaRenovadarowPrincipaldatos_recibosr   datosAutogeneradoss              r@   obtenerDatosClienter    s     /*..a!%% , -
%-(*%o6*%l3*%o6*%o6%	 	 	$%7999999999 4
+;E+Bk"["[]]]]]]]]]]]rA   ))rH   r0   r  rt   r   r  r  r2  r   r   WPP_Whatsappr   utilslectoresr   r   urlLoginrK   r  r9   rQ   rL   r   r   r   r   r   r   r  r#  r   rD  rK  rI  r  ry  r  r  r  r  r  r   rA   r@   <module>r     s   @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ ( ( ( ( ( ( ( (                    xV++H+.S
Ng Ng Ngd  6T T Tx` ` `  :&` &` &`V
 
 

 
 
JG JG JG^  ( ( ($ $ $N^ ^ ^"S` S` S`n  2S S Sl+ + +ZW W Wv  "  (f f fB2 2 2b^ ^ ^ ^ ^rA   