<?php

require_once ("config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
require_once ("config/conexion.php");//Contiene funcion que conecta a la base de datos


//CONSULTA
		 $q = $_GET['q'];
		 $marca= $_GET['marca'];
		 $rubro= $_GET['rubro'];
		 $presentacion= $_GET['presentacion'];
		 $est=$_GET['est'];
		 
if($est=="")
{
	$tituloReporte = "Inventario Consolidado";	 
if($_GET['rubro']!="" && $_GET['q']=="" && $_GET['marca']=="" && $_GET['presentacion']=="")
{
$sql="select * , sum(existencia) AS consolidado from products where tipo_producto='".$rubro."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where tipo_producto='".$rubro."' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']=="")
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto AND marca";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto AND marca");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']=="")
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto AND marca";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto AND marca");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']=="")
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND tipo_producto='".$rubro."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']!="")
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND status_producto='".$presentacion."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']!="")
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']=="") 
{
$sql="select * , suma(existencia) AS consolidado from products where tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion." AND nombre_producto LIKE '%".$q."%' group by nombre_producto");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']=="") 
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' AND tipo_producto='".$rubro."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']=="") 
{
$sql="select * , sum(existencia) AS consolidado from products group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where status_producto='".$presentacion."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * , sum(existencia) AS consolidado from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' group by nombre_producto");
}
else if($_GET['rubro']=="" && $_GET['q']=="" && $_GET['marca']!="" && $_GET['presentacion']=="") 
{
$sql="select * , sum(existencia) AS consolidado from products where marca='".$marca."' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' group by nombre_producto");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']=="") 
{
$sql="select * , sum(existencia) AS consolidado from products where nombre_producto LIKE '%".$q."%' group by nombre_producto";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where nombre_producto LIKE '%".$q."%' group by nombre_producto");
}
}



else
{
$tituloReporte = "Inventario en la tienda ".$est." por el rubro ".$rubro."";
if($_GET['rubro']!="" && $_GET['q']=="" && $_GET['marca']=="" && $_GET['presentacion']=="")
{
$sql="select * from products where tipo_producto='".$rubro."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where tipo_producto='".$rubro."' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']=="")
{
$sql="select * from products where marca='".$marca."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']=="")
{
$sql="select * from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']=="")
{
$sql="select * from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']!="")
{
$sql="select * from products where marca='".$marca."' AND status_producto='".$presentacion."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']!="")
{
$sql="select * from products where marca='".$marca."' AND status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']=="") 
{
$sql="select * from products where tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']!="") 
{
$sql="select * from products where status_producto='".$presentacion."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion." AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']!="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']=="") 
{
$sql="select * from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='".$marca."' AND tipo_producto='".$rubro."' AND almacen='".$est."'");
}

else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']=="") 
{
$sql="select * from products where almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']=="" && $_GET['presentacion']!="") 
{
$sql="select * from products where status_producto='".$presentacion."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' AND almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']=="" && $_GET['rubro']!="" && $_GET['presentacion']!="") 
{
$sql="select * from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where status_producto='".$presentacion."' AND tipo_producto='".$rubro."' AND almacen='".$est."'");
}
else if($_GET['rubro']=="" && $_GET['q']=="" && $_GET['marca']!="" && $_GET['presentacion']=="") 
{
$sql="select * from products where marca='$marca' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where marca='$marca' AND almacen='".$est."'");
}
else if($_GET['marca']=="" && $_GET['q']!="" && $_GET['rubro']=="" && $_GET['presentacion']=="") 
{
$sql="select * from products where nombre_producto LIKE '%".$q."%' AND almacen='".$est."'";
$count_query = mysqli_query($con, "SELECT count(*) AS numrows from products where nombre_producto LIKE '%".$q."%' AND almacen='".$est."'");
}

}
 
$item = 0;
$consulta=mysqli_query($con,$sql);
   
   
 
		/** Se agrega la libreria PHPExcel */
		require_once 'lib/PHPExcel/PHPExcel.php';

		// Se crea el objeto PHPExcel
		$objPHPExcel = new PHPExcel();

		// Se asignan las propiedades del libro
		$objPHPExcel->getProperties()->setCreator("Fontur") //Autor
							 ->setLastModifiedBy("Tecnologia") //Ultimo usuario que lo modificó
							 ->setTitle("Reporte en Excel")
							 ->setSubject("Reporte en Excel")
							 ->setDescription("Iventario")
							 ->setKeywords("inventario")
							 ->setCategory("Reporte excel");

	

		
		$titulosColumnas = array('item', 'Codigo', 'Tipo Rubro', 'Producto', 'Marca', 'Presentacion', 'Actualizado','Existencia', 'Precio Costo', 'Precio Venta',);
		
		$objPHPExcel->setActiveSheetIndex(0)
        		    ->mergeCells('A1:I1');
						
		// Se agregan los titulos del reporte
		$objPHPExcel->setActiveSheetIndex(0)
					->setCellValue('A1',  $tituloReporte)
        		    ->setCellValue('A3',  $titulosColumnas[0])
		            ->setCellValue('B3',  $titulosColumnas[1])
					->setCellValue('C3',  $titulosColumnas[2])
        		    ->setCellValue('D3',  $titulosColumnas[3])
            		->setCellValue('E3',  $titulosColumnas[4])
					->setCellValue('F3',  $titulosColumnas[5])
		            ->setCellValue('G3',  $titulosColumnas[6])
        		    ->setCellValue('H3',  $titulosColumnas[7])
					->setCellValue('I3',  $titulosColumnas[8])
					->setCellValue('J3',  $titulosColumnas[9]);
            		
        		   
		
		//Se agregan los datos
		$i = 4;
		$item=1;
		while($dato=mysqli_fetch_array($consulta))
		{
			if($est==""){ $cantidad=$dato['consolidado'];}
			else{ $cantidad=$dato['existencia'];}
			
			$objPHPExcel->setActiveSheetIndex(0)
        		    ->setCellValue('A'.$i,  $item)
		            ->setCellValue('B'.$i,  $dato['codigo_producto'])
					->setCellValue('C'.$i,  $dato['tipo_producto'])
        		    ->setCellValue('D'.$i,  $dato['nombre_producto'])
					->setCellValue('E'.$i,  $dato['marca'])
            		->setCellValue('F'.$i,  $dato['status_producto'])
					->setCellValue('G'.$i,  $dato['date_added'])
		            ->setCellValue('H'.$i,  $cantidad)
        		    ->setCellValue('I'.$i,  $dato['precio_producto'])
            		->setCellValue('J'.$i,  $dato['precio_venta']);				
					
					$i++;
					$item++;
		}
		
		$estiloTituloReporte = array(
        	'font' => array(
	        	'name'      => 'Verdana',
    	        'bold'      => true,
        	    'italic'    => false,
                'strike'    => false,
               	'size' =>16,
	            	'color'     => array(
    	            	'rgb' => 'FFFFFF'
        	       	)
            ),
	        'fill' => array(
				'type'	=> PHPExcel_Style_Fill::FILL_SOLID,
				'color'	=> array('rgb' => 'F00000')
			),
            'borders' => array(
               	'allborders' => array(
                	'style' => PHPExcel_Style_Border::BORDER_NONE                    
               	)
            ), 
            'alignment' =>  array(
        			'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        			'vertical'   => PHPExcel_Style_Alignment::VERTICAL_CENTER,
        			'rotation'   => 0,
        			'wrap'          => TRUE
    		)
        );

		$estiloTituloColumnas = array(
            'font' => array(
                'name'      => 'Arial',
                'bold'      => true,                          
                'color'     => array(
                    'rgb' => 'FFFFFF'
                )
            ),
            'fill' => array(
				'type'	=> PHPExcel_Style_Fill::FILL_SOLID,
				'color'	=> array('rgb' => 'F00000')
			),
            'borders' => array(
            	'top'     => array(
                    'style' => PHPExcel_Style_Border::BORDER_MEDIUM ,
                    'color' => array(
                        'rgb' => '143860'
                    )
                ),
                'bottom'     => array(
                    'style' => PHPExcel_Style_Border::BORDER_MEDIUM ,
                    'color' => array(
                        'rgb' => '143860'
                    )
                )
            ),
			'alignment' =>  array(
        			'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        			'vertical'   => PHPExcel_Style_Alignment::VERTICAL_CENTER,
        			'wrap'          => TRUE
    		));
			
		$estiloInformacion = new PHPExcel_Style();
		$estiloInformacion->applyFromArray(
			array(
           		'font' => array(
               	'name'      => 'Arial',               
               	'color'     => array(
                   	'rgb' => '000000'
               	)
           	),
           	
           	'borders' => array(
               	'left'     => array(
                   	'style' => PHPExcel_Style_Border::BORDER_THIN ,
	                'color' => array(
    	            	'rgb' => '3a2a47'
                   	)
               	)             
           	)
        ));
		 
		$objPHPExcel->getActiveSheet()->getStyle('A1:J1')->applyFromArray($estiloTituloReporte);
		$objPHPExcel->getActiveSheet()->getStyle('A3:J3')->applyFromArray($estiloTituloColumnas);		
		$objPHPExcel->getActiveSheet()->setSharedStyle($estiloInformacion, "A4:J".($i-1));
				
		for($i = 'A'; $i <= 'J'; $i++){
			$objPHPExcel->setActiveSheetIndex(0)			
				->getColumnDimension($i)->setAutoSize(TRUE);
		}
		
		// Se asigna el nombre a la hoja
		$objPHPExcel->getActiveSheet()->setTitle('INVENTARIO');

		// Se activa la hoja para que sea la que se muestre cuando el archivo se abre
		$objPHPExcel->setActiveSheetIndex(0);
		// Inmovilizar paneles 
		//$objPHPExcel->getActiveSheet(0)->freezePane('A4');
		$objPHPExcel->getActiveSheet(0)->freezePaneByColumnAndRow(0,4);

		// Se manda el archivo al navegador web, con el nombre que se indica (Excel2007)
		header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
		header('Content-Disposition: attachment;filename="Inventario.xlsx"');
		header('Cache-Control: max-age=0');

		$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
		$objWriter->save('php://output');
		exit;
		
?>