Untitled

mail@pastecode.io avatar
unknown
plain_text
17 days ago
4.9 kB
2
Indexable
Never
SELECT distinct on(vin.id_vinculacion,vininfo.numero_identificacion) 
    replace(CAST(vin.fecha_creacion AS varchar),'-','/') AS "Fecha y hora de creación",
    replace(CAST(vin.fecha_ultimo_estado AS varchar),'-','/') AS "Fecha de finalización",
    vin.id_vinculacion AS "ID Vinculación",
    vininfo.correo as "Correo cliente",
    vininfo.primer_nombre || ' ' || vininfo.segundo_nombre AS "Nombres",
    vininfo.primer_apellido AS "Primer apellido",
    vininfo.segundo_apellido AS "Segundo apellido",
    CASE WHEN vininfo.tipo_identificacion = 1 THEN 'CC' ELSE 'CE' END AS "Tipo doc",
    vininfo.numero_identificacion AS "No de Documento",
    CASE
    WHEN (data_log.resumen like '%Enviar Respuestas Cuestionario%') THEN 'Preguntas Reto'
    WHEN (data_log.resumen like '%Verificar Codigo OTP%') THEN 'Validación OTP'
    END AS "Autenticacion",
    CASE WHEN vinc.validado = 1 THEN 'Aprobado' ELSE 'Rechazado' END AS "Resultado validación",
    CASE 
        WHEN EXISTS (
            SELECT 1
            FROM tbl_validations tvalid
            WHERE tvalid.id_vinculacion = vin.id_vinculacion
            AND tvalid.validation = true
            AND tvalid.tipo_identificacion = tc.id_tipo_identificacion
            AND tvalid.num_identificacion = tc.numero_identificacion
        ) 
        THEN 'SI'
        WHEN NOT EXISTS (
            SELECT 1
            FROM tbl_validations tvalid
            WHERE tvalid.id_vinculacion = vin.id_vinculacion
        )
        THEN ''
        ELSE 'NO'
    END AS "Validacion_registraduria",
    data_log.celular AS "Celular",
    vindet.codigo_encargo::varchar AS "Producto",
    cons.nombre_constructora AS "Constructora",
    cons.nit AS "NIT Constructora",
    proy.codigo AS "Cod Proyecto",
    proy.nombre_proyecto AS "Nombre Proyecto",
    subproy.codigo AS "Cod Subproyecto",
    subproy.nombre AS "Subproyecto",
    CASE
    WHEN (vin.etapa = 1) THEN 'Validacion de identidad'
    WHEN (vin.etapa = 2) THEN 'Datos básicos'
    WHEN (vin.etapa = 3) THEN 'Información financiera'
    WHEN (vin.etapa = 4) THEN 'Generación de documentos'
    WHEN (vin.etapa = 5) THEN 'Enviado a firmas'
    WHEN (vin.etapa = 6) THEN 'Firmado'
    WHEN (vin.etapa = 7) THEN 'Previnculacion'
    ELSE 'En Proceso'
    END AS "Estado del proceso",
    user_functionary.nombre_usuario AS "Usuario asesor",
    CASE WHEN user_functionary.id_tipo_identificacion = 1 THEN 'CC' ELSE 'CE' END AS "Tipo doc asesor",
    user_functionary.numero_identificacion AS "No doc asesor",
    user_functionary.celular AS "Celular asesor",
    vinc.porcentaje AS "Porcentaje participacion",
    vin.firmas as Firmas,
    vindet.apartamento AS "Apartamento",
    vindet.torre AS "Torre",
    vindet.piso AS "Piso",
    vindet.tipo_vinculacion AS "Tipo vinculacion",
    vindet.categoria AS "Categoria",
    vindet.tipo_contrato AS "Tipo contrato"
    FROM tbl_vinculacion_info_basica AS vininfo
    join tbl_vinculacion as vin
    on vin.id_vinculacion  = vininfo.id_vinculacion 
    join tbl_vinculacion_comprador AS vinc
    on vinc.id_vinculacion = vin.id_vinculacion
    join tbl_compradores as tc
    on tc.id_compradores = vinc.id_comprador  
    JOIN tbl_detalle_vinculacion AS vindet
    ON vindet.id_vinculacion = vin.id_vinculacion
    LEFT JOIN tbl_datacredito_log AS data_log
        ON data_log.id_vinculacion::integer = vin.id_vinculacion::integer
        AND (
            data_log.resumen = 'Generando Codigo OTP'
            OR data_log.resumen LIKE '%Enviar Respuestas Cuestionario%'
            OR data_log.resumen LIKE '%Verificar Codigo OTP%'
        )
    LEFT JOIN tbl_usuario AS user_functionary
    ON user_functionary.id_usuario::integer = vin.creado_por::integer
    LEFT JOIN tbl_proyecto as proy
    ON proy.id_proyecto = vin.id_proyecto
    LEFT JOIN tbl_constructora as cons
    ON cons.id_constructora = proy.id_constructora
    LEFT JOIN tbl_encargo as enc
    ON vindet.codigo_encargo = enc.cuenta
    LEFT JOIN tbl_subproyecto as subproy
    ON subproy.id_subproyecto = enc.id_subproyecto OR subproy.id_subproyecto = vindet.codigo_subproyecto::INTEGER
    where (vininfo.id_vinculacion , vinc.id_comprador) 
    in (select  vin.id_vinculacion, comp.id_compradores 
    from tbl_vinculacion as vin JOIN tbl_vinculacion_comprador AS vcomp
    ON vcomp.id_vinculacion = vin.id_vinculacion AND vcomp.fecha_ultimo_estado is not null
    JOIN tbl_compradores AS comp
        ON comp.id_compradores = vcomp.id_comprador
    join tbl_vinculacion_info_basica as vininfo 
    on vininfo.id_vinculacion  = vcomp.id_vinculacion
    where comp.numero_identificacion = '79842391') 
    AND cast(vin.fecha_ultimo_estado AS date) BETWEEN '2024-01-01' AND '2024-09-16' 
    AND vin.fecha_ultimo_estado is not null 
    order by vin.id_vinculacion, vininfo.numero_identificacion,  vinc.fecha_ultimo_estado desc;
Leave a Comment