
    G8g,                         d dl Z d dlZd dlZd dlZd dl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 d dlmZ dZd	Zd
gZdZdZd Zd Zd Zd Zd Zd Zd Zd ZdS )    N)send_screenshotsend_websocket_messageobtenerDatosPorCodigoPostal	cerrarTab)obtenerCodigoDeEstado)datetime)Credentials)build)service_accountz6/var/www/wsoft.com.mx/carteraplus-automatizador/files/atlasz,https://www.googleapis.com/auth/spreadsheetszf/var/www/wsoft.com.mx/carteraplus-automatizador/python/servicesgmm/seguro-cotizas-api-spreadsheet.json c                   K   | |vr	|i i d|| <   |||          d         vr	 |                     d           d {V }|||          d         |<   n# t          $ r}Y d }~d S d }~ww xY w|||          d         vr>||          d         |                                          d {V }|||          d         |<   n||          d         |         }t          d| |||           d {V }d S d S )N)browsercontextspagesr   T)accept_downloadsr   r   )new_context	Exceptionnew_pagevalidar_inicio_sesion)		websocketr   tab_idclients_contextsaseguradoracontextepagecontinuaOperacions	            O/var/www/wsoft.com.mx/carteraplus-automatizador/python/servicesgmm/gmm_atlas.pyinicializar_gmm_atlasr       sc     &&&.52PR"S"SY #I.z:::))4)@@@@@@@@g8?y!*-f55   fffff %i0999#I.z:6BKKMMMMMMMMd59y!'*622 i(1&9d 4B	6K[]hiiiiiiii! ;:s   -A 
A$A$c                 R   K   |d         dk    rt          ||||           d {V  dS )N
id_paqueteatlas_gmm_transformaT)goToAtlasTransforma)urlr   r   r   
form_logins        r   r   r   1   sC      !777
i1A:
N
NNNNNNNN	    c                 h   K   ||          d         |         }t          | dd|dd           d {V  d S )Nr   progresoATLASzCotizador disponible)typenamer   estado)r   )r   r   r   r&   r   s        r   r$   r$   :   sl      	)	$W	-f	5$y#	+ + 	 	         r'   c           	        K   ||          d         |         }|                     d          }|d         D ]A}|d         |k    r3|dk    rn*|dk    rn#|dk    rn|dk    rn|dk    rn|d	k    rn|d
k    r	  nB|d         D ]}|d         |k    rd|d<   d|                                v rn|dk    rft          |           d {V \  }}t          j        d           d {V  t          | d|||d           d {V  t          | ||           d {V  nB|dk    rn:|dk    r't          |d                   }	t          d|	           n|dk    r&t          |d                   }	t          d|	           n|dk    r&t          |d                   }	t          d|	           n|dk    r&t          |d                   }	t          d|	           n|dk    r|d         d         }
t          d|
           nd|dk    rt          ||d                    nG|dk    rt          ||d                    n*|dk    rt          |d                   }	n|d k    rn|d!k    r	  n	 d S )"Nr   campoModificadodatosnombreapellidoPaternoapellidoMaternocodigoPostalgenerofechaNacimientomostrarCamposAdicionalescamposAdicionalesr   opciones	separadorcotizarGMMAtlas   extraer_prima_texto)r+   r   tablaprima_textocontinuarCotizacion2lugarResidenciavalorz	CODIGO!!!
tipoPolizatipoPlancatalogoHonorariosdeducibleAplicaEnAccidentesr   zDEDUCIBLE APLICAcesionDeComisioncalculoIvaFronterizocobBasicaSumaAseguradacobBasicaDeduciblecobBasicaCoaseguro)getlowercotizar_api_atlasasynciosleepr   r   r   printobtenerCodigoTipoPolizaobtenerCodigoTipoPlanobtenerCodigoCatalogoHonorariosobtenerCodigoSumaAsegurada)r   r   r   	form_datar   campo_modificadocampo
pago_anualresultado_cotizacioncodigoprimera_letras              r   handle_datos_basicos_atlasr]   G   ss     	)	$W	-f	5$]]#455!  e X***	X	%	%.000.000.~-- 	/x''.000.999. e) +, ,- 1 1eX***eJ 
(..00	0	00001B91M1M+M+M+M+M+M+M(
(mA$Y''#	1
 1
   	 	 	 	 	 	 	 	6+;<<<<<<<<<<5551000&uW~66k6""""|++(w88k6""""z))&uW~66k6""""3330w@@k6""""<<<gq) -0000111g////555g////777+E'N;;533353335ea +h
 	&r'   c                 @    |                      |          }|dk    rdS |S )NF)find)cadena	subcadenaindices      r   strpos_likerd      s&    ;;y!!&r\\5Mr'   c                 ,  K   |                                                     t          |                                           }|                    dg           }g }d}|D ]4}|D ]/}t	          |d          durd}|du r|                    |           05|S )N)spreadsheetIdrangevaluesTPlanF)rh   rL   SPREADSHEET_IDexecuterd   append)RESULT_NAMEsheetresultrh   rowsfindPlanrowcells           r   obtenerListaPorFilart      s       <<>>N+NNVVXX&::h##& 
$(  c  	T6	"	"%	/	/ 
T		D 
+r'   c                     t          j        | d          }t          j                    }|j        |j        z
  |j        |j        f|j        |j        fk     z
  }| S )Nz%Y-%m-%d)r   strptimetodayyearmonthday)fecha_nacimiento
nacimientohoyedads       r   calcular_edadr      sW    "#3Z@@J
.

C8jo%#)SW)=AQS]Sa@b)bcD9r'   c                   K   d }t           j                            t          t                    }t          dd|          }|                                }g }ddddd	dd
ddddig}|D ]}|d         |                    d          }dk    r}t          d | d         D             d          }t          d | d         D             d          }	t          d | d         D             d          }
| d|	 d|
 	                                }n"t          fd| d         D             d           }|Ld
k    r|dk    rdn	|dk    rdn|}ndk    rt          |          }|r|r|                    ||ggd           i }|                     dg           D ]M}|                    d          |                    d          }|                    d          }r
|r||d|<   N|                                D ]G\  }}|d         }|d         }|dk    r|)|r'|                    |t          |          ggd           H|rEd|d}|                                                    t           |                                           }t%          d!|           d {V }t%          d"|           d {V }t%          d#|           d {V }|d$d%         }|d$d%         }|d$d%         }g d&}|d$         }g }t'          |          D ]g\  }}|                    |||         	                                ||         	                                ||         	                                d'           h||fS )(N)scopessheetsv4)credentialsr1   zCOTIZACION!C30)r1   coordsr6   zCOTIZACION!E30r5   zCOTIZACION!D30r4   r   c              3   >   K   | ]}|d          d k    |d         V  dS r1   rB   N .0items     r   	<genexpr>z$cotizar_api_atlas.<locals>.<genexpr>   s6      hhtTRZ^_gMgMgT']MgMgMgMghhr'   r0   r   c              3   >   K   | ]}|d          dk    |d         V  dS )r1   r2   rB   Nr   r   s     r   r   z$cotizar_api_atlas.<locals>.<genexpr>   8      &{&{W[\dWeizWzWztG}WzWzWzWz&{&{r'   c              3   >   K   | ]}|d          dk    |d         V  dS )r1   r3   rB   Nr   r   s     r   r   z$cotizar_api_atlas.<locals>.<genexpr>   r   r'    c              3   @   K   | ]}|d          k    |d         V  dS r   r   )r   r   r1   s     r   r   z$cotizar_api_atlas.<locals>.<genexpr>   s6      __d8nX^F^F^d7mF^F^F^F^__r'   	MasculinoHOMBREFemeninoMUJER)rg   rh   r8   rB   coord)rB   r   USER_ENTERED)valueInputOptiondata)rf   bodyzCOTIZACION!H:HzCOTIZACION!I:IzCOTIZACION!J:Jr<      )ANUAL	SEMESTRAL
TRIMESTRALMENSUAL)zForma de PagozPrimer RecibozRecibos SubsecuentesTotal)r   r	   from_service_account_fileKEYSCOPESr
   spreadsheetsrL   nextstripr   rl   itemsstrrh   batchUpdaterj   rk   rt   	enumerate)rV   credsservicern   updatesr0   rX   r   valor_nombrevalor_apellido_paternovalor_apellido_maternorB   values_dictr   keyr   r   ro   row1row2row3filtered_row1filtered_row2filtered_row3formas_pagorY   rZ   i
forma_pagor1   s                                @r   rN   rN      s     
%

%
?
?F
?
S
S%(De444'



 
 % ' #344 ,<==#344~	%  A Ae8_FYYx  F hhy7Ihhhjlmm!%&{&{7AS&{&{&{}  "A  "A!%&{&{7AS&{&{&{}  "A  "ASS"8SS;QSSYY[[ ____	'0B___aeff X#{22((5JCVCV\a%%(((&&%  	Ae 	A
..6ugY??
@
@
@ + }}0"55 = =eYYx  FIIgEIIgE =% =&+e<<k&$$&& 		 		ic4MEME{{UnnJJ<.  	 	 	
  [( D \\^^''n4'PPXXZZF"#3U;;	;	;	;	;	;	;$"#3U;;	;	;	;	;	;	;$"#3U;;	;	;	;	;	;	;$ qs)-qs)-qs)-???+ Aw* -- 	 	ma!!%(+1133"/"2"8"8":": #))++	# # 	 	 	 	 
)	))r'   )
websocketsjsonrO   sysservicesgmm.gmm_utilsr   r   r   r   servicesgmm.constants_atlasr   r   google.oauth2.credentialsr	   googleapiclient.discoveryr
   google.oauth2r   RUTA_FOLDERsessionr   r   rj   r    r   r$   r]   rd   rt   r   rN   r   r'   r   <module>r      s`   % % % % % % % % % % % % % % % % q q q q q q q q q q q q = = = = = =       1 1 1 1 1 1 + + + + + + ) ) ) ) ) ) G

8	9nj j j6    X	 X	 X	v    .  d* d* d* d* d*r'   