<?php
header('Content-Type: application/json;charset= utf-8');
require("dbinfo.php");
require("dl.php");
$con = mysqli_connect($sqlname, $username, $password, $db);
if(!$con){exit;}
mysqli_set_charset($con,"utf8");

$res = array();

$mensaje_array = array();


$tipo = 1;
if( $_REQUEST["tipo"] ) {  $tipo = $_REQUEST['tipo'];}


if ($tipo == 1)
{

//_CONTROL DE TRAMOS EN QUE EL PUNTO SINGULAR ASOCIADO NO ESTÁ EN EL VERTICE DEL COLECTOR

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "NOT EXISTS ";
$sql .= "(SELECT B.elem_red FROM cat_psingulares AS B WHERE B.activo = 1 AND ";
$sql .= "st_distance(ST_STARTPOINT(A.SHAPE),B.SHAPE) < 0.0000026956 ";
$sql .= "AND B.elem_red = id_psig_aa) ";
$sql .= "OR ";
$sql .= "NOT EXISTS ";
$sql .= "(SELECT B.elem_red FROM cat_psingulares AS B WHERE B.activo = 1 AND ";
$sql .= "st_distance(ST_ENDPOINT(A.SHAPE),B.SHAPE) < 0.0000026956 ";
$sql .= "AND B.elem_red = id_psig_ab) ";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin punto singular'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin PS ";
        array_push($mensaje_array,$mensaje);
    }
    else
    {
    $mensaje =  " 0 - Tramo sin PS ";
    array_push($mensaje_array,$mensaje);
    } 

}   
         


//_CONTROL DE PUNTOS SINGULARES QUE NO ESTÁ EN EL VERTICE DEL COLECTOR ASOCIADO

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "NOT EXISTS ";
$sql .= "(SELECT B.id_psig_aa FROM cat_tramos AS B WHERE B.activo = 1 AND ";
$sql .= "st_distance(A.SHAPE,ST_STARTPOINT(B.SHAPE)) < 0.0000026956 ";
$sql .= "AND A.elem_red = B.id_psig_aa) ";
$sql .= "AND ";
$sql .= "NOT EXISTS ";
$sql .= "(SELECT B.id_psig_ab FROM cat_tramos AS B WHERE B.activo = 1 AND ";
$sql .= "st_distance(A.SHAPE,ST_ENDPOINT(B.SHAPE)) < 0.0000026956 ";
$sql .= "AND A.elem_red = B.id_psig_ab) ";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Psingular sin tramo'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Tramo ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - PS sin Tramo ";
    array_push($mensaje_array,$mensaje);
    }  

}
          



}




if ($tipo == 2)
{

//_CONTROL DE TRAMOS SIN PS ASIGNADO

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= " ( A.id_psig_aa = 0 OR A.id_psig_ab = 0 )";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin dato PS'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin PS ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - Tramo sin PS ";
    array_push($mensaje_array,$mensaje);
    }  
}
          

//_CONTROL DE TRAMOS SIN COTAS ASIGNADAS

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= " ( A.zarriba < -20 OR A.zabajo < -20 )";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin dato Zamp'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin Zamp ";
        array_push($mensaje_array,$mensaje);
    }
    else
{
$mensaje =  " 0 - Tramo sin Zamp ";
array_push($mensaje_array,$mensaje);
}
} 




//_CONTROL DE TRAMOS SIN Z TAPA

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= " ( A.z_tapa_aa < -20 OR A.z_tapa_ab < -20 )";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin dato Z Tapa'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin Z Tapa ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - Tramo sin Tapa ";
    array_push($mensaje_array,$mensaje);
    }
    
}


//_CONTROL DE TRAMOS SIN TIPO DE SECCION

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= " A.tiposec = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin Seccion'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin Seccion ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - Tramo sin Seccion ";
    array_push($mensaje_array,$mensaje);
    }
}


//_CONTROL DE TRAMOS SIN TIPO DE TRAMO

$sql = "SELECT A.elemred AS ID ";
$sql .= ", (X(STARTPOINT(A.SHAPE)) + X(ENDPOINT(A.SHAPE))) / 2  AS XC ";
$sql .= ", (Y(STARTPOINT(A.SHAPE)) + Y(ENDPOINT(A.SHAPE))) / 2  AS YC ";
$sql .= "FROM cat_tramos AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= " A.tipotra = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Tramo sin Tipo'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Tramo sin Tipo ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - Tramo sin Tipo ";
    array_push($mensaje_array,$mensaje);
    }
}

        

}



if ($tipo == 3)
{

//_CONTROL DE PS SIN TRAMOS

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.tramos = ''";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'PS sin Tramos'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Tramos ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " 0 - PS sin Tramos ";
    array_push($mensaje_array,$mensaje);
    } 
} 
          

//_CONTROL DE PS SIN TIPO

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.tipo = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'PS sin Tipo'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Tipo ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " PS sin Tipo ";
    array_push($mensaje_array,$mensaje);
    } 
}  




//_CONTROL DE PS SIN z tapa

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.z_tapa < -20";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'PS sin Z Tapa'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Z Tapa ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " PS sin Z Tapa ";
    array_push($mensaje_array,$mensaje);
    } 
}  


//_CONTROL DE PS SIN z zab

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.z_ab < -20";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'PS sin Zab'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Zab ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " PS sin Zab ";
    array_push($mensaje_array,$mensaje);
    }
}  



//_CONTROL DE PS SIN profundidad

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_psingulares AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.profundidad = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'PS sin Profundidad'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - PS sin Profundidad ";
        array_push($mensaje_array,$mensaje);
    }else
    {
    $mensaje =  " PS sin Profundidad ";
    array_push($mensaje_array,$mensaje);
    }
}  



}



if ($tipo == 4)
{

//_CONTROL DE CAPTACION SIN COLECTOR

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_captaciones AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.id_tramo = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Captacion sin Tramo'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Captacion sin Tramo ";
        array_push($mensaje_array,$mensaje);
    }  else
    {
    $mensaje =  " 0 - Captacion sin Tramo ";
    array_push($mensaje_array,$mensaje);
    }
  }  



//_CONTROL DE CAPTACION SIN tipo

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_captaciones AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.tipo = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Captacion sin Tipo'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Captacion sin Tipo ";
        array_push($mensaje_array,$mensaje);
    }  else
    {
    $mensaje =  " 0 - Captacion sin Tipo ";
    array_push($mensaje_array,$mensaje);
    }
  } 



//_CONTROL DE CAPTACION SIN clase

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_captaciones AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.clase = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Captacion sin Clase'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Captacion sin Clase ";
        array_push($mensaje_array,$mensaje);
    }  else
    {
    $mensaje =  " 0 - Captacion sin Clase ";
    array_push($mensaje_array,$mensaje);
    }
  } 




//_CONTROL DE CAPTACION SIN z tapa

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_captaciones AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.z_tapa = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Captacion sin Z Tapa'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Captacion sin Z Tapa ";
        array_push($mensaje_array,$mensaje);
    }  else
    {
    $mensaje =  " 0 - Captacion sin Z Tapa ";
    array_push($mensaje_array,$mensaje);
    }
  } 




  //_CONTROL DE CAPTACION SIN z col

$sql = "SELECT A.elem_red AS ID ";
$sql .= ", X(A.SHAPE) AS XC ";
$sql .= ", Y(A.SHAPE) AS YC ";
$sql .= "FROM cat_captaciones AS A WHERE ";
$sql .= "A.activo = 1 AND ";
$sql .= "  A.z_col = 0";
$resultado = mysqli_query($con,$sql);
if ($resultado != FALSE){
	if (mysqli_num_rows($resultado) > 0){
		while($row = mysqli_fetch_assoc($resultado))
		{
            $elem = array(
                   'id'=>$row['ID'],
                   'xc'=>$row['XC'],
                   'yc'=>$row['YC'],
                   'tipo'=>'Captacion sin Z Col'
                     );
           array_push($res,$elem);
        }
        $mensaje =  mysqli_num_rows($resultado) . " - Captacion sin Z Col ";
        array_push($mensaje_array,$mensaje);
    }  else
    {
    $mensaje =  " 0 - Captacion sin Z Col ";
    array_push($mensaje_array,$mensaje);
    }
  } 



}







$resultado = null;


$res_total = array();
array_push($res_total,$res);
$elem = array('mensaje'=>$mensaje_array);
array_push($res_total,$elem);

mysqli_close($con);
echo json_encode($res_total);
?>