
    hY&                     @    d dl mZ defdZd Zd ZdefdZd Zd	 Z	y
)    )get_connectiontipo_contactoc                 .   	 t               }|dddS |j                  d      }d}|j                  || f       |j                         }|j	                          |j	                          dd|d	S # t
        $ r}dd
t        |       dcY d }~S d }~ww xY w)Nr      Error de conexiónsuccessmessageT
dictionaryzCSELECT * FROM listado_tablas_prospectos WHERE estado_contacto  = %s   tablas obtenidas correctamenter   r	   dataError: r   cursorexecutefetchallclose	Exceptionstr)r   
conexionBDr   querylist_tableses         K/var/www/dev.api.imparables.com.co/api_imparables/crm/procesos/marketing.pyget_lista_tablas_tipo_contactor      s    
#%
/ 
 ""d"3Uum-.oo' 	7
 	

  
 Q)
 	

s#   A0 AA0 0	B9B	BBc                 p   	 t               }|Addddt               v rj                          dt               v r|r|j                          S S S | j                  d      }| j                  d      }| j                  dd	      }| j                  d
d      }|dk(  xs |dkD  }t	               }t        |      dk(  rEddg dddddt               v rj                          dt               v r|r|j                          S S S ||vrEddg dddddt               v rj                          dt               v r|r|j                          S S S |j                  d      }d| d}	|rq|j                  |	       |j                         }
t        |
      }dd|
|d	d	ddt               v r|j                          dt               v r|r|j                          S S S |d	z
  |z  }|	dz   }|j                  |||f       |j                         }
|dk(  rd| d}nd| d}|j                  |       |j                         d   }||z  ||z  dk7  rd	ndz   }dd|
|||ddt               v r|j                          dt               v r|r|j                          S S S # t        $ r[}ddt        |       g ddddcY d }~dt               v rj                          dt               v rr|j                          S S S d }~ww xY w# dt               v rj                          dt               v rr|j                          w w w xY w)Nr   r   r   r   r   r   tablaSeleccionadapager   pageSize   i'  F#No se encontraron tablas permitidasr   r	   r   totalRecords
totalPagescurrentPageTabla no permitidaTr
   zK
            SELECT 
                t.*
            FROM 
                z; t
            ORDER BY 
                t.id DESC
        Datos obtenidos correctamentez LIMIT %s OFFSET %s
ProspectoszSELECT COUNT(*) AS total FROM z t WHERE t.estado_etapa = 1z ttotalr   )r   localsr   gettraer_tablas_permitidaslenr   r   r   fetchoner   r   )r   r   r   r   tablar    	page_sizetraer_todos_los_datostablas_validas
base_query	registrostotal_recordsoffsetpaginated_querycount_queryr+   total_pagesr   s                     r   datos_tabla_seleccionadar<   "   s   h#%
/D vxLLN68#
 )3# 1,-xx"HHZ+	 !*Q C)e2C 12~!# @ ! d vxLLN68#
 )3#W & / ! P vxLLN68#
 )3#C ""d"3  		
 !NN:&)I	NM  :! - Z vxLLN68#
 )3#K Qh)+F(+@@ONN?Y,?@)I , >ugE`a >ugRHNN;'OO%g.E I-uy7HA7M!STUK  :! %)#& vxLLN68#
 )3#  
 Q)
 	
 vxLLN68#
 )3#
 vxLLN68#
 )3#sJ   J A2J >J AJ BJ 	K4K/-K4.K7 /K44K7 7>L5c                  p   	 t               } | dddS | j                  d      }d}|j                  |       |j                         }g }t	        |      dkD  r|D cg c]  }|d   	 }}|j                          | j                          |S c c}w # t        $ r}ddt        |       dcY d }~S d }~ww xY w)	Nr   r   r   Tr
   z'SELECT * FROM listado_tablas_prospectosnombre_tablar   )r   r   r   r   r/   r   r   r   )r   r   r   tablasnombre_tablasitemr   s          r   r.   r.      s    
#%
/ 
 ""d"39u"v;?>DEdT.1EME F  
 Q)
 	

s5   B A	B B(#B B 	B5B0*B50B5r   c                    	 t               }|Addddt               v rj                          dt               v r|r|j                          S S S | j                  d      }| j                  d      }| j                  dd	      }| j                  d
d      }|d	z
  |z  }t	               }t        |      dk(  rAddddt               v rj                          dt               v r|r|j                          S S S ||vrAddddt               v rj                          dt               v r|r|j                          S S S | j                  d      r| j                  d      sAddddt               v rj                          dt               v r|r|j                          S S S |j                  d      }t        | j                  d            }	|dk(  r|	dz  }	d| d|	 d}
n	d| d|	 d}
t        d|
       |j                  |
||f       |j                         }d}	t        | j                  d            }	|dk(  r|	dz  }	d| d|	 d}n	d| d|	 d}t        d|       |j                  |       |j                         d   }||z  ||z  dk7  rd	ndz   }dd ||||d!dt               v r|j                          dt               v r|r|j                          S S S # t        $ rW}dd"t        |       dcY d }~dt               v rj                          dt               v rr|j                          S S S d }~ww xY w# dt               v rj                          dt               v rr|j                          w w w xY w)#Nr   r   r   r   r   r   r   r    r   r!   r"   Fr#   r(   camposz2No se encontraron campos para realizar la busquedaTr
   r*   z AND t.estado_etapa = 1zZ
                SELECT 
                    t.*
                FROM
                    z t
                zh
                ORDER BY 
                    t.id DESC
                LIMIT %s OFFSET %s
            z[
                SELECT 
                    t.*
                FROM 
                    query1 z7
            SELECT COUNT(*) AS total
            FROM z t
            z
            z?
                SELECT COUNT(*) AS total
                FROM r+   r)   r$   r   )r   r,   r   r-   r.   r/   r   creacion_where_dinamicoprintr   r   r0   r   r   )r   r   r   r   r1   r    r2   r8   r4   where_dinamicor   r6   r:   r+   r;   r   s                   r   !filtrado_dinamico_busqueda_camposrI      s   l#%
/L vxLLN68#
 )3#G 1,-xx"HHZ+	(i' 12~!# @p vxLLN68#
 )3#k & /d vxLLN68#
 )3#_ xx!(); OX vxLLN68#
 )3#S ""d"30(1CDL(77N G   !	E G   !	E 	huuy&12OO%	0(1CD L(77N  KW   !K
 	h{#{#!'*	)593D3IaqQ 6!%
 vxLLN68#
 )3#  
 Q)
 	

 vxLLN68#
 )3#
 vxLLN68#
 )3#sI   K A*K 6K ;&K C<K 	L7 L20L71L: 2L77L: :>M8c                     d}g }| j                         D ]  \  }}|	|j                  | d| d       ! |r|ddj                  |      z   z  }|S )NrE   z LIKE '%z%'z	 WHERE t.z AND t.)itemsappendjoin)rC   rH   condicionescampovalors        r   rF   rF     sk    #\\^ 	@LE5 ""eWHUG2#>?	@ kINN;,GGGN    c                  *   	 t               } | dddS | j                  d      }d}|j                  |       |j                         }|j	                          | j	                          dd|d	S # t
        $ r}dd
t        |       dcY d }~S d }~ww xY w)Nr   r   r   Tr
   zSELECT * FROM estados_etapasr   r   r   r   r   )r   r   r   estados_etapasr   s        r   traer_estados_etapasrT   '  s    
#%
/ 
 ""d"3.u* 7"
 	

  
 Q)
 	

s#   A. AA. .	B7BBBN)
cnxpdor   r   r   r<   r.   dictrI   rF   rT    rQ   r   <module>rX      s9    !
 
>iV
6m4 m`
rQ   