<?php

if (isset($_SESSION['tipousuario']))
		{if ($_SESSION['tipousuario']=='1')
		header ('location:menu_personal.php');
		}
date_default_timezone_set('America/Bogota');
require_once 'PHPExcel/PHPExcel.php';
//PHPExcel_Shared_Font::setAutoSizeMethod(PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT);
		// Se crea el objeto PHPExcel
		$objPHPExcel = new PHPExcel();


		// Se asignan las propiedades del libro
		$objPHPExcel->getProperties()->setCreator("Saireh") //Autor
							 ->setLastModifiedBy("Saireh") //Ultimo usuario que lo modificó
							 ->setTitle("Reporte Asientos")
							 ->setSubject("Reporte Asientos ")
							 ->setDescription("Reporte")
							 ->setKeywords("reporte")
							 ->setCategory("Reporte Asientos");


    $head=array('fill' => array('type' => PHPExcel_Style_Fill::FILL_SOLID,'color' => array('rgb' => 'a5a5a5')),
		'font' => array('color'=> array('rgb' => '000000')));
	$header=array("dTipoDocumento","dConsecutivo","dTercero","dDescripcion","dFecha","dVencimiento","Concepto","Cuenta","SubCuenta","mDebito","mCredito","mDescripcion","Cedula","mmmm","Departamento","localidad");
	$dpto=array();
	$cargo=array();

	/*$sql=mysql_query("SELECT * FROM tablas WHERE lower(tabla)='departamento' and id=".trim($_SESSION['id_validar']));
	while($row = mysql_fetch_array($sql)){
		$dpto[$row['codigo']]=$row['detalle'];
	}*/
    $i=2;
    $cedula="";
	$sql=mysql_query($consulta);
	$num_filas=mysql_num_rows($sql);

	$sql2=mysql_query($consulta_concepto_total);
	$concepto_total = mysql_fetch_array($sql2);

	while($row = mysql_fetch_array($sql)){
		if($cedula<>$row['cedula']){//nuevo row
		    if ($i != 2) {
				$total = ($sum_debito - $sum_credito);
				$objPHPExcel->getActiveSheet() ->setCellValue("C".$i,$cedula)
												->setCellValue("D".$i,"Nomina del ".$row['desperiodo'])
												//->setCellValue("E".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
												->setCellValue("E".$i,"")
												//->setCellValue("F".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
												->setCellValue("F".$i,"")
												->setCellValue("G".$i,"")
												->setCellValue("H".$i,$concepto_total["cuenta"])
												->setCellValue("I".$i,$concepto_total["subcuenta"])
												->setCellValue("J".$i,0)
												->setCellValue("K".$i,$total)
												->setCellValue("L".$i,$concepto_total["detalle"])
												->setCellValue("M".$i,$temp_cedula)
												->setCellValue("N".$i,"0")
												->setCellValueExplicit("O".$i,str_pad($temp_departamento, 6, "0", STR_PAD_LEFT))
												->setCellValue("P".$i,$localidad);
				$sum_credito = 0;
				$sum_debito = 0;
				$i++;
			}
			//asignar la cedula
		   $cedula=$row['cedula'];
		   $objPHPExcel->getActiveSheet()->setCellValue("A".$i,"NP")
									   ->setCellValue("B".$i,"")
									   ->setCellValue("C".$i,$cedula)
									   ->setCellValue("D".$i,"Nomina del ".$row['desperiodo'])
									   //->setCellValue("E".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
									   ->setCellValue("E".$i,"")
									   //->setCellValue("F".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
									   ->setCellValue("F".$i,"")
									   ->setCellValue("G".$i,"");
	        $i++;
		}
		$cuenta=$row['cuenta'];
		$subcuenta=$row['subcuenta'];
		$localidad=$row['unidad'];
		//consultar eps del empleado
		if ($row['concepto'] == "1501" || $row['concepto'] == "1101" || $row['concepto'] == "1102" || $row['concepto'] == "1103" || $row['concepto'] == "1104" || $row['concepto'] == "1210" || $row['concepto'] == "1211" || $row['concepto'] == "1212" || $row['concepto'] == "1581" || $row['concepto'] == "2064" || $row['concepto'] == "2069" ) {
			$consulta_cta_labor = mysql_query("SELECT cuenta_labor, subcuenta_labor FROM personal WHERE codigo = '".$cedula."'");			 
			$result_cta_labor = mysql_fetch_array($consulta_cta_labor);
			$cuenta = $result_cta_labor["cuenta_labor"];
			$subcuenta = $result_cta_labor["subcuenta_labor"];
		}
		
		//asignar el excel
		$objPHPExcel->getActiveSheet()->setCellValue("C".$i,$cedula)
									->setCellValue("D".$i,"Nomina del ".$row['desperiodo'])
									//->setCellValue("E".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
									->setCellValue("E".$i,"")
									//->setCellValue("F".$i,date("d/m/Y", strtotime(substr(trim($row['desperiodo']), -10))))
									->setCellValue("F".$i,"")
									->setCellValue("G".$i,$row['concepto'])
									->setCellValue("H".$i,$cuenta)
									->setCellValue("I".$i,$subcuenta)									  
									->setCellValue("J".$i,$row['tipo']=='D'?0 : ($row['monto']) )
									->setCellValue("K".$i,$row['tipo']=='D'? ($row['monto']) : 0)
									->setCellValue("L".$i,$row['desconcepto'])
									->setCellValue("M".$i,$cedula)
									->setCellValue("N".$i,"0")
									->setCellValueExplicit("O".$i,str_pad($row['departamento'], 6, "0", STR_PAD_LEFT))
									->setCellValue("P".$i,$localidad);
		
		
		//$objPHPExcel->getActiveSheet()->getStyle("N".$i)->getNumberFormat()->setFormatCode('0000');
		if ($row["tipo"]=='D') { $sum_credito += ($row['monto']); }
		else { $sum_debito += ($row['monto']); }

		//cuando se haga el calculo de nomina
		$temp_cedula = $row['cedula'];
		$temp_departamento = $row['departamento'];
		$temp_cuentalabor = $row['cuenta_labor'];
		$temp_concepto = $row['concepto'];
		$i++;
		//para el ultimo registro del excel
		if ($i >= $num_filas) {
		    $total = ($sum_debito - $sum_credito);
			$objPHPExcel->getActiveSheet()
										->setCellValue("G".$i,"")
										->setCellValue("H".$i,$concepto_total["cuenta"])
										->setCellValue("I".$i,$concepto_total["subcuenta"])
										->setCellValue("J".$i,0)
										->setCellValue("K".$i,$total)
										->setCellValue("L".$i,$concepto_total["detalle"])
										->setCellValue("M".$i,$temp_cedula)
										->setCellValue("N".$i,"0")
								        ->setCellValueExplicit("O".$i,str_pad($temp_departamento, 6, "0", STR_PAD_LEFT))
										->setCellValue("P".$i,$localidad);
		}

	}

	 $j=0;
	$letra='A';
	for($j=0;$j<count($header);$j++){
		$objPHPExcel->getActiveSheet()->setCellValue($letra."1",$header[$j]);
		$objPHPExcel->getActiveSheet()->getColumnDimension($letra)->setAutoSize(true);
		$letra++;
	}



	// Se asigna el nombre a la hoja
	$objPHPExcel->getActiveSheet()->setTitle('CONTABILIDAD');
	// 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');
$nombrearch="Asientos_nomina";
//header('Content-Type: application/vnd.ms-excel');
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$nombrearch.'.xlsx"');
header('Cache-Control: max-age=0');
header('Cache-Control: max-age=1');
header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0
//$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
