<?php
$ras = $_GET['ras'];

$bulto = $_GET["bulto"];
$ola = $_GET["ola"];
$transportista = $_GET["transportista"];
$posicion = $_GET["posicion"];
$fechades = $_GET["fechades"];
$fechahas = $_GET["fechahas"];
$estado = $_GET["estado"];

$ficexcel = "RAMPA_$ras.csv";
$filename = "../descargas/excel/" . trim($ficexcel);
$downloadfile = "./descargas/excel/" . trim($ficexcel);

$apertura = "w";
$file = fopen($filename, $apertura);   /// BORRAR LOG
$lineatxt = "Posicion;Bulto;Num Palet;Ola;Transportista;Estado;Momento Inicio;Tiempo colocacion";
graba_fichero($file, $lineatxt);
$config = require('config.php');
$conexion = $config['conexion'];
$conn = pg_connect($conexion);
cargadatos($conn, $ras, $bulto, $ola, $transportista, $posicion, $fechades, $fechahas, $estado, $file);
fclose($file);
pg_close($conn);
echo '{"status":"ok","filename":"' . $downloadfile . '"}';

function cargadatos($conn, $ras, $bulto, $ola, $transportista, $posicion, $fechades, $fechahas, $estado, $file)
{

	$sql = "SELECT COALESCE(zona, ' ') AS ZONA, COALESCE(soporte, ' ') AS soporte, momento_inicio, a.pic AS bulto, b.wave_name AS ola, b.carrier AS transportista, 
		divisor, total_fotos, momento_inicio, momento_fin, errores,
		EXTRACT(EPOCH FROM momento_fin) - EXTRACT(EPOCH FROM momento_inicio) AS segundos
		FROM peticiones a LEFT JOIN dhl_link_id b ON a.pic = b.inventory_id
		WHERE ras = '$ras'";

	if ($bulto != "") {
		$sql .= " and trim(a.pic)='$bulto'";
	}
	if ($ola != "") {
		$sql .= " and trim(b.wave_name)='$ola'";
	}
	if ($transportista != "") {
		$sql .= " and trim(b.carrier)='$transportista'";
	}
	if ($posicion != "") {
		$sql .= " and trim(zona)='$posicion'";
	}
	if ($fechades != "") {
		$sql .= " and momento_inicio > '$fechades'";
	}
	if ($fechahas != "") {
		$sql .= " and momento_inicio < '$fechahas'";
	}
	if ($estado != "") {
		$sql .= " and errores = $estado";
	}

	$sql .= " order by momento_inicio desc limit 600";

	$results = pg_query($conn, $sql);
	while ($row = pg_fetch_array($results)) {

		$estado = 1;
		$txtEstado = 1;
		switch ($row['errores']) {
			case '-':
				$estado = 0;
				$txtEstado = "OK";
				break;
			case '9999':
				$estado = 9999;
				$txtEstado = "ERROR";
				break;
			case '9998':
				$estado = 9998;
				$txtEstado = "WARNING";
				break;
		}

		$mpeticion = substr($row['momento_inicio'], 8, 2) . '-' . substr($row['momento_inicio'], 5, 2) . '-' . substr($row['momento_inicio'], 0, 4) . ' ' . substr($row['momento_inicio'], 11, 8);
		
		$tiempo = '-';
		if (trim($row['segundos']) != '') {
			$tiempo = trim($row['segundos']) . ' Seg';
		}

		$csvLine = $row['zona'] . ";" . $row['bulto'] . ";" . $row['soporte'] . ";" . $row['ola'] . ";" . $row['transportista'] . ";" . $txtEstado . ";" . $mpeticion . ";" . $tiempo . ";";
		graba_fichero($file, $csvLine);
		//$conn=null;

	}

	pg_free_result($results);
}

function graba_fichero($file, $lineatxt)
{

	fwrite($file, "$lineatxt" . PHP_EOL);
}
