<?php
	session_start();
	include('conexion.php');	
	$cliente = $_SESSION['id_cliente'];
	$fecha_inicio = $_GET['fecha_inicio'];
	$fecha_fin = $_GET['fecha_fin'];
	$tarjeta = $_GET['tarjeta'];
	$_SESSION['tipo'] = 5;		
	date_default_timezone_set('America/Mexico_City');
	$time = time();
	$fini = date_create($fecha_inicio);
	$finiMuestra =  date_format($fini, 'Ymd');	
	$ffin = date_create($fecha_fin);
	$ffinMuestra =  date_format($ffin, 'Ymd');	
	$path = "./REPORTE ESTADO DE CUENTA.txt";
		
	$sql = "SELECT ";
	$sql .= "id_cliente, ";
	$sql .= "razon_social, ";
	$sql .= "nombre_comercial, ";
	$sql .= "saldo ";
	$sql .= "FROM ";
	$sql .= "clientes ";
	$sql .= "WHERE ";
	$sql .= "id_cliente =" . $cliente;
	
	$resultado = $iden->query($sql); 
								
	if(!$resultado) 
		die("Error: no se pudo realizar la consulta cliente");
	
	while($fila = $resultado->fetch_assoc()) 
	{
		$_SESSION['id_cliente'] = $fila['id_cliente'];
		$_SESSION['razon_cliente'] = $fila['razon_social'];
		$_SESSION['nombre_cliente'] = $fila['nombre_comercial'];
		$saldo_cliente = $fila['saldo'];
	}
	$resultado->free();
	$sql = "SELECT saldo from transacciones where id_cliente =".$cliente." and id_turno>= '".$finiMuestra."00"."' and id_turno<='" .$ffinMuestra."06"."' order by id_transaccion desc limit 1";
	$resultado = $iden->query($sql); 
								
	if(!$resultado) 
		die("Error: no se pudo realizar la consulta saldo");
	
	$saldo_cliente=0;
	while($fila = $resultado->fetch_assoc()) 
	{
		
		$saldo_cliente = $fila['saldo'];
	}
	$resultado->free();




	$_SESSION['saldo_muestra'] = number_format($saldo_cliente, 2, '.', ',');
	$file = fopen($path, "w+");
	
	fwrite($file, "REPORTE ESTADO DE CUENTA" ."\t\t\t\t".'Fecha:' ."\t". date("Y/m/d  H:i:s", $time) . PHP_EOL);
	fwrite($file, "". PHP_EOL);
	fwrite($file, "Cliente"."\t".$_SESSION["id_cliente"]. PHP_EOL);
	fwrite($file, "Razon Social"."\t".$_SESSION['razon_social']. PHP_EOL);
	fwrite($file, "Saldo"."\t".$_SESSION['saldo_muestra']. PHP_EOL);
	fwrite($file, "Fecha Inicio"."\t".$fecha_inicio. PHP_EOL);
	fwrite($file, "Fecha Fin"."\t".$fecha_fin. PHP_EOL);
	fwrite($file, 'Id'."\t". 'Id Venta'."\t".'F. Registro'."\t".'F. Contable'."\t".'Tipo'."\t".'Modo'."\t".'Cargo'."\t".'Abono'."\t".'Saldo'. PHP_EOL);

	$sql = "SELECT ";
	$sql .= "t.id_transaccion, ";
	$sql .= "t.fecha, ";
	$sql .= "concat(SUBSTRING(t.id_turno,7,2),'/',SUBSTRING(t.id_turno,5,2),'/',SUBSTRING(t.id_turno,1,4)) as id_turno, ";
	$sql .= "t.id_tipo, ";
	$sql .= "v.id_tag, ";
	$sql .= "t.descripcion, ";
	$sql .= "t.monto, ";
	$sql .= "t.saldo, ";
	$sql .= "ve.id_venta ";	
	$sql .= "FROM ";
	$sql .= "transacciones t ";
	$sql .= "left join transacciones_detalle td ";
	$sql .= "on(t.id_transaccion = td.id_transaccion) ";
	$sql .= "left join gaslight.ventas ve ";
	$sql .= "on(td.id_venta = ve.id_venta) ";
	$sql .= "left join vehiculos v ";
	$sql .= "on(v.id_vehiculo = t.id_vehiculo) ";
	$sql .= "where ";	
	$sql .= "t.id_cliente =" . $cliente . " ";
	$sql .= "and t.id_turno>= '" .$finiMuestra."00"."' and t.id_turno<='" .$ffinMuestra."06"."' ";
	if($tarjeta != 0)
		$sql.="and v.id_vehiculo = ".$tarjeta." ";
	$sql .= "order by t.id_turno,t.id_transaccion asc";
			
	$resultado = $iden->query($sql); 
								
	if(!$resultado) 
		die("Error: no se pudo realizar la consulta de transacciones".$sql);
			
	$monto_cargo = 0.00;
	$monto_abono = 0.00;
		
	while($fila = $resultado->fetch_assoc()) 
	{
		$id_transaccion = $fila['id_transaccion'];				
		$fecha = $fila['fecha'];
		$id_tipo = $fila['id_tipo'];
		$descripcion = $fila['descripcion'];
		$monto = $fila['monto'];
		$saldo = $fila['saldo'];
		$punto = '.';
		$pos = strpos($saldo, $punto);
		
		if($pos !== false)
			$saldo = $saldo . ".00";
		
		if($id_tipo == 1)
		{			
			$monto_cargo = $monto_cargo + $monto;
			$monto = $monto * -1;
			$tipo = "Consumo";		
			$cargo = $monto;
			$abono = '0.00';
		}
			
		if($id_tipo == 2)
		{
			$monto_abono = $monto_abono + $monto;
			$tipo = "Deposito";		
			$cargo = '0.00';
			$abono = $monto;					
		}
			
		if($id_tipo == 3)
		{
			$monto_cargo = $monto_cargo + $monto;
			$monto = $monto * -1;
			$tipo = "Ajuste cargo";	
			$cargo = $monto;
			$abono = '0.00';			
		}
			
		if($id_tipo == 4)
		{
			$monto_abono = $monto_abono + $monto;
			$tipo = "Ajuste abono";		
			$cargo = '0.00';
			$abono = $monto;	
		}
		$cargoMuestra = number_format($cargo, 2, '.', ',');
		$abonoMuestra = number_format($abono, 2, '.', ',');
		$saldoMuestra = number_format($saldo, 2, '.', ',');				 
		$date = date_create($fecha);
		$fechaMuestra =  date_format($date, 'd/m/Y h:m:s');				
		fwrite($file, $id_transaccion ."\t".$fila['id_venta'] ."\t".$fechaMuestra."\t".$fila['id_turno']."\t".$tipo."\t".$descripcion . " " . $fila['id_tag']."\t".$cargoMuestra."\t".$abonoMuestra."\t".$saldoMuestra. PHP_EOL);				
	}
	$resultado->free();			
	
	$monto_cargo = $monto_cargo * -1;
	$monto_cargoMuestra = number_format($monto_cargo, 2, '.', ',');
	$monto_abonoMuestra = number_format($monto_abono, 2, '.', ',');
	fwrite($file, "\t\t\t\t\t".'Totales'."\t".'$'. $monto_cargoMuestra."\t".'$'. $monto_abonoMuestra ."\t".'$'. $saldoMuestra.PHP_EOL);			
	mysqli_close($iden);
	fclose($file);
	if (file_exists($path)) 
	{
		header('Content-Description: File Transfer');
		header('Content-Type: application/octet-stream');
		header('Content-Disposition: attachment; filename="'.basename($path).'"');
		header('Expires: 0');
		header('Cache-Control: must-revalidate');
		header('Pragma: public');
		header('Content-Length: ' . filesize($path));
		ob_clean();
		flush();
		readfile($path);
		exit;
	}
?>