<?php
session_start();

if (isset($_SESSION['tipousuario']))
		{if ($_SESSION['tipousuario']=='1')
		header ('location:menu_personal.php');
		}
		
if  (trim($_SESSION['nombre_validar'])=='') header ('location:index.php');
///////////////////////////////////////////////// inicio del programa ////////////////////////////////////////////////////////////////
include ("fphp.php");
$enlace=cargar_conexion();
$consulta=mysqli_query($enlace,"select * from periodo where id='".$_SESSION['id_validar']."' order by nomina,periodo desc limit 1");
if (mysqli_num_rows($consulta)!=0){
	$row=mysqli_fetch_array($consulta);
	$per=mostrar_fecha($row['desde']).' al '.mostrar_fecha($row['hasta'])." (Nom:".$row['nomina'].")";
} else $per=''; 


///////////////////////////////////////////////// cuando esta recibiendo datos  ////////////////////////////////////////////////////////////////	
if ($_POST['treporte']==1) $_POST['titulo']='Anticipos de Prestaciones';
if ($_POST['treporte']==2) $_POST['titulo']='Pagos de Intereses de Prestaciones';
if ($_POST['treporte']==3) $_POST['titulo']='Reporte de Prestaciones Sociales e Intereses';
			
$fec1=crear_fecha($_POST['fec1']);
$fec2=crear_fecha($_POST['fec2']);

$consulta=mysqli_query($enlace,"select * from empresa where id='".$_SESSION['id_validar']."' ");
if (mysqli_num_rows($consulta)!=0){
		$row=mysqli_fetch_array($consulta);
		$_POST['pie']=$row['pie'];
		$_POST['encabeza']=$row['encabeza'];
		$gerencia=$row['gerencia'];
		$_POST['dgerencia']='';	
}   
if ($_SESSION['modo_validar']>0) {
		$consultag="Select * from tablas where tabla=ucase('EMPRESA') and id='".$_SESSION['id_validar']."' and codigo='".trim($rowemp['empresa'])."' order by codigo,detalle";
		$consultagg = mysqli_query($enlace,$consultag) or die ("no se pudo realizar la consulta...".$consultag.'='.mysqli_error($enlace));	
		$rowg = mysqli_fetch_array($consultagg);
		$_POST['dgerencia']=$rowg['detalle'];
} else {	
		if ($gerencia==1) {
			$consultag="Select * from tablas where tabla=ucase('GERENCIA') and id='".$_SESSION['id_validar']."' and codigo='".trim($rowemp['gerencia'])."' order by codigo,detalle";
			$consultag = mysqli_query($enlace,$consultag) or die ("no se pudo realizar la consulta...".$consultag.'='.mysqli_error($enlace));	
			$rowg = mysqli_fetch_array($consultag);
			$_POST['dgerencia']=$rowg['detalle'];
		}	
}

require('fpdf.php');
class PDF extends FPDF {
function Header()
{
			if ($_POST['dgerencia']=='') {
				$this->Image($_SESSION['logo_validar'],90,6,30,30);
				$this->SetFont('arial','',8);
				//$this->Ln(2);
				$this->Cell(0,5,$_SESSION['empresa_validar'],0,0,'L'); $this->Cell(0,5,'Fecha: '.hoy(),0,1,'R');
			} else {
				$this->Ln(5);
				$this->SetFont('arial','B',16);
				$this->Cell(0,9,$_POST['dgerencia'],0,1,'C'); 
			}	
			$this->Cell(0,5,$_POST['encabeza'],0,0,'L'); $this->Cell(0,5,'Hora: '.hora(),0,1,'R');
			$this->Ln(18);
			$this->SetFont('arial','',10);
			//$this->Cell(0,5,'Fecha: '.hoy(),0,1,'R');
			//$this->Cell(0,5,'Hora: '.hora(),0,1,'R');
			$this->SetFont('arial','B',12); 
			$this->Cell(0,5,$_POST['titulo'],0,1,'C');$this->Ln(5);
			
			$this->SetFillColor(70,77,119);
			$this->SetTextColor(255);
			$this->SetDrawColor(255,255,255);
			//$this->SetLineWidth(.3);
			$this->SetFont('','');
			$this->SetFont('arial','B',8);
			if ($_POST['treporte']!=3) {
				$header=array('#','C.I','Nombres y Apellidos','Detalle','Total Bs.');
				$w=array(10,20,60,60,40);
				for($i=0;$i<count($header);$i++)
					$this->Cell($w[$i],4,$header[$i],1,0,'C',1);
			} else {
				$header=array('#','Cedula','Apellidos y Nombres','Dias Abonados','Prestaciones','Intereses','Disponible');
				$w=array(10,20,90,35,35,35,35);
				for($i=0;$i<count($header);$i++)
					$this->Cell($w[$i],4,$header[$i],1,0,'C',1);
			}	
			$this->Ln();
			$this->SetFillColor(224,235,255);
			$this->SetTextColor(0);
			$this->SetFont('');
	}
function Footer()
{
		$this->SetY(-20);
		$this->Cell(0,0,'',1,1,'C');
		$this->SetFont('Times','I',8);
		$this->ln(2);
		$this->Cell(0,0,$_POST['pie'],0,1,'C');
		$this->Cell(0,10,'Usuario: '.$_POST['usuario'].' - Página '.$this->PageNo().'/{nb} - Derechos: '.$_POST['derecho'],0,0,'C');
}
}
		
//Cuerpo ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////	
if ($_POST['treporte']!=3) $pdf=new PDF($orientacion='P',$unit='mm',$format='letter');
else $pdf=new PDF($orientacion='L',$unit='mm',$format='letter');
$pdf->AddPage();
$pdf->AliasNbPages();
$pdf->SetFont('Arial','',8);
$pdf->SetFillColor(224,235,255);
$pdf->SetTextColor(0);
	
$query='';
if ($_POST['nomina']!="") $query.="and personal.nomina='".substr($_POST['nomina'],0,3)."' ";
if ($_POST['gerencia']!="") $query.="and personal.gerencia='".substr($_POST['gerencia'],0,4)."' ";
if ($_POST['division']!="") $query.="and personal.division='".substr($_POST['division'],0,4)."' ";
if ($_POST['departamento']!="") $query.="and personal.departamento='".substr($_POST['departamento'],0,4)."' ";

if ($_POST['treporte']==1) $consulta="select prestacion_adelanto.*,personal.codigo,personal.nombres,personal.apellidos from prestacion_adelanto,personal where personal.id='".$_SESSION['id_validar']."' and personal.codigo=prestacion_adelanto.cedula and prestacion_adelanto.fecha>='".$fec1."' and prestacion_adelanto.fecha<='".$fec2."' $query order by prestacion_adelanto.cedula";
if ($_POST['treporte']==2) $consulta="select prestacion_interes.*,personal.codigo,personal.nombres,personal.apellidos from prestacion_interes,personal where personal.id='".$_SESSION['id_validar']."' and personal.codigo=prestacion_interes.cedula and prestacion_interes.fecha>='".$fec1."' and prestacion_interes.fecha<='".$fec2."' $query order by prestacion_interes.cedula";
if ($_POST['treporte']==3) $consulta="select codigo from personal where personal.id='".$_SESSION['id_validar']."' and status<>'I' $query order by codigo ";
$consultaw=mysqli_query($enlace,$consulta);	
	
$linea=0;
$color=0;
$tsalsur=0;$tot1=0;$tot2=0;
while($roww=mysqli_fetch_array($consultaw)) {
		$linea++;
		if ($_POST['treporte']!=3) {
				$tnombre=trim($roww['nombres']).' '.trim($roww['nombres1']).',  '.trim($roww['apellidos']).' '.trim($roww['apellidos1']);	
				$pdf->cell(10,5,$linea,0,0,'C',$color);
				$pdf->cell(20,5,$roww['cedula'],0,0,'C',$color);
				$pdf->cell(60,5,$tnombre,0,0,'L',$color);
				$pdf->cell(60,5,$roww['detalle'],0,0,'',$color);
				$pdf->cell(40,5,number_format($roww['monto'],2),0,1,'R',$color);
				$tot2 += $row['monto'];		
		} else {
				$cedula=$roww['codigo'];
				//================== buscar datos del personal
				$consulta="select fechai,nombres,nombres1,apellidos,apellidos1,cargo,smes, departamento from personal where codigo='".$cedula."' ";
				$resultado = mysqli_query($enlace,$consulta) or die($consulta . mysqli_error($enlace));
				$row=mysqli_fetch_array($resultado);
				$_POST['personal']=trim($row['nombres'])." ".trim($row['nombres1']).' '.trim($row['apellidos'])." ".trim($row['apellidos1']);
				
				$_POST['dgerencia']='';
				if ($_SESSION['modo_validar']>0) {
					$consultag="Select * from tablas where tabla=ucase('EMPRESA') and id='".$_SESSION['id_validar']."' and codigo='".trim($row['empresa'])."' order by codigo,detalle";
					$consultagg = mysqli_query($enlace,$consultag) or die ("no se pudo realizar la consulta...".$consultag.'='.mysqli_error($enlace));	
					$rowg = mysqli_fetch_array($consultagg);
					$_POST['dgerencia']=$rowg['detalle'];
				} 
							
				//================== buscar cargo
				$consultaf="select detalle from tablas where tabla='CARGO' and codigo='".$row['cargo']."'  and id='".$_SESSION['id_validar']."'";
				$resultadof = mysqli_query($enlace,$consultaf) or die($consultaf . mysqli_error($enlace));
				$rowf=mysqli_fetch_array($resultadof);
				$car=$rowf['detalle'];
				
				//================== buscar departamento
				$consultaf="select detalle from tablas where tabla='DEPARTAMENTO' and codigo='".$row['departamento']."'  and id='".$_SESSION['id_validar']."'";
				$resultadof = mysqli_query($enlace,$consultaf) or die($consultaf . mysqli_error($enlace));
				$rowf=mysqli_fetch_array($resultadof);
				$dep=$rowf['detalle'];
				
				//============ datos de empresa
				$consulta=mysqli_query($enlace,"select * from empresa where id='".$_SESSION['id_validar']."' ");
				$rowr=mysqli_fetch_array($consulta);
				$ince=$rowr['ince'];
				$dvac=$rowr['dvac'];
				$duti=$rowr['duti'];
				$icon=$rowr['icon'];
				$con01=$rowr['constante01'];
				$con02=$rowr['constante02'];
				$con03=$rowr['constante03'];
				$con04=$rowr['constante04'];
				
				//=========== datos de prestaciones
				$egresado=false;
				$smes = $row['smes'];
				$dias = 0;	
				$fec1 = $row['fechai'];
				if(!isset($_POST["fec3"])){
				    $fec2 =date('Y-m-d');
				}else{
				    $fec2 = date_create_from_format('dmY',$_POST["fec3"] );
                    $fec2 = date_format($fec2, 'Y-m-d');
				} 
				
				$vac = 0;
				
				$semana=0;
				if ($dias>1 && $dias<=7) $semana=1;
				if ($dias>7) $semana=2;

				if ($accion==2) {
					$fec1=$row['fechai'];	
					$fec2=date('Y-m-d');
				}
				
				$afn=substr($fec1,0,4);	
				$mfn=substr($fec1,5,2);	
				$a=substr($fec2,0,4);	
				$m=substr($fec2,5,2);	
				if ($m-$mfn<0) $meses = ($a-$afn-1)*12 + ($m-$mfn+12);
				else $meses = ($a-$afn)*12 + ($m-$mfn);

				if ($mfn>=1 && $mfn < $m) $mesutilidad = $m - $mfn;
				else $mesutilidad = $m;
				$utilidad = $duti/12*$mesutilidad*($smes/30);
				
				//============ mostrar informe
				$fec11 = substr($fec1,0,7);
				$fec22 = substr($fec2,0,7);
				$fec11x = $fec1;
	            $fec22x = $fec2;
				$inicio=0; $tri=0; $salto=0; $anosx=0; $anos=0; $entrosueldo=0; $acumulado=0; $intereses=0; $tdias=0; $prestaciones=0;
				$interesganados=0; $sueldo=0;
				$cuantosmeses=0;

				//============ datos de sueldo				
				
				$consulta=mysqli_query($enlace,"select sueldo from personal_sueldo where id='".$_SESSION['id_validar']."' and substring(fec,1,7)='".$fec11."' and codigo='".$cedula."'") or die (mysqli_error($enlace));

				$row=mysqli_fetch_array($consulta);
				if (mysqli_num_rows($consulta)!=0) $sueldo=$row['sueldo'];
				
				
				//===========Agregado para calcular el trimestre
				$fec11 = $fec1;
				$fec22 = $fec2;
				
				while ($fec11<$fec22) {

							$cuantosmeses++;
							//====================== calcular años
							$anosx++;
							if ($anosx>12) {
								$anos++;			
								$anosx=1;
							}	
							
							//====================== mover fechas
							$a=substr($fec11x,0,4);	
							$d=substr($fec11x,8,2);	
							$m=substr($fec11x,5,2)+1;	
							if ($m>12) {
								$m='01';
								$a=$a+1;
							} else $m=(strlen($m)==1?('0'.$m):$m);	
							$fec11x=$a."-".$m."-".$d;
							
							//====================== ver cual periodo es
							$a=substr($fec11,0,4);	
							$m=substr($fec11,5,2)+1;	

							
							$nuevafecha = strtotime ( '+1 month' , strtotime ( $fec11 ) ) ;
							$fec11 = date ( 'Y-m-d' , $nuevafecha );
							


							//===================== buscar dias de utilidades en historico	
							$consulta=mysqli_query($enlace,"select dvac,duti from historico_parametro where id='".$_SESSION['id_validar']."' and anio='".$a."'") or die (mysqli_error($enlace));
							if (mysqli_num_rows($consulta)!=0) {
								$row=mysqli_fetch_array($consulta);
								$dvacx=$row['dvac'];
								$dutix=$row['duti'];
							} else {
								$dvacx=$dvac;
								$dutix=$duti;
							}
							
							//====================== salto de tres en tres desde 05-2012
							if ($tri==1) {
								$salto++; $dias=0;
								if ($salto==3) {
									$salto=0;
									$dias=15;
								}	
							} else {
								if ($fec11<='2012-04-01') {
									if ($fec11=='2012-04-01') $tri=1;
									$dias=5;	
								} else {
									$tri=1;
									$salto++; $dias=0;
									if ($salto==3) {
										$salto=0;
										$dias=15;
									}	
								}
							}
							
							//====================== agregado para revalidar dias
							
							//Agregado por cambios en dia de ingreso
							$fecAux=$fec11;
							$mostrar=true; 
							if($fec11>=$fec22){
							   $fec11=$fec22;
							   if($egresado){
									 if($cuantosmeses>3){
										 $ultdias=true; 
										 if($dias==0){
											$dias=15;
										 }
									 }					
							   }else{
								  if($cuantosmeses%3!=0){
									 $dias=0;
								  }
							   }
							}
							
							if($fecAux>$fec22&&!$egresado){
								$mostrar=false;
							}
							if($egresado){
							   if($months<4){
									 if($months==$cuantosmeses){
										 $dias=5*$months;
									 }else{
										 $dias=0;
									}		     
								 $ultdias=false;					
								}
							}
						 if($mostrar){
							//====================== calcular inicio
							$inicio++;
							if ($inicio<=3 && $fec11<'2012-04-01') $dias=0;

							//============ datos de adelantos

							$consulta=mysqli_query($enlace,"select sum(monto) as total from prestacion_adelanto where id='".$_SESSION['id_validar']."' and substring(fecha,1,7)='".substr($fecAux,0,7)."' and cedula='".$cedula."'") or die (mysqli_error($enlace));
							$row=mysqli_fetch_array($consulta);
							$adelanto=$row['total'];
							

							$consulta=mysqli_query($enlace,"select sum(monto) as total from prestacion_interes where id='".$_SESSION['id_validar']."' and substring(fecha,1,7)='".substr($fecAux,0,7)."' and cedula='".$cedula."'") or die (mysqli_error($enlace));
							$row=mysqli_fetch_array($consulta);
							$adeinteres=$row['total'];

							//============ datos de sueldo
							$consulta=mysqli_query($enlace,"select sueldo from personal_sueldo where id='".$_SESSION['id_validar']."' and substring(fec,1,7)='".substr($fec11,0,7)."' and codigo='".$cedula."'") or die (mysqli_error($enlace));
							//echo "select sueldo from personal_sueldo where id='".$_SESSION['id_validar']."' and substring(fec,1,7)='".$fec11."' and codigo='".$cedula."'<br>";
							$row=mysqli_fetch_array($consulta);
							if (mysqli_num_rows($consulta)!=0) {
								
								$sueldo=$row['sueldo'];
									if ($con01!='') {
										$consultax="select monto from constante_individual where id='".$_SESSION['id_validar']."' and codigo='".$con01."' and cedula='".$cedula."' and nomina='".$tiponomina."'";
										$resultadox = mysqli_query($enlace,$consultax) or die('verificaci&oacute; del c&oacute;digo fall&oacute;: ' . mysqli_error($enlace));
										if (mysqli_num_rows($resultadox)!=0) {
											$rowx=mysqli_fetch_array($resultadox);
											if ($tipoclase==1) $sueldo=$sueldo + $rowx['monto']/7*30;
											else if ($tipoclase==2) $sueldo=$sueldo + $rowx['monto']*2;
												else $sueldo=$sueldo + $rowx['monto'];
										}	
									}	
									if ($con02!='') {
										$consultax="select monto from constante_individual where id='".$_SESSION['id_validar']."' and codigo='".$con02."' and cedula='".$cedula."' and nomina='".$tiponomina."'";
										$resultadox = mysqli_query($enlace,$consultax) or die('verificaci&oacute; del c&oacute;digo fall&oacute;: ' . mysqli_error($enlace));
										if (mysqli_num_rows($resultadox)!=0) {
											$rowx=mysqli_fetch_array($resultadox);
											if ($tipoclase==1) $sueldo=$sueldo + $rowx['monto']/7*30;
											else if ($tipoclase==2) $sueldo=$sueldo + $rowx['monto']*2;
												else $sueldo=$sueldo + $rowx['monto'];
										}	
									}	
							} else {
									//====================== buscar monto conceptos acmulado
									 //echo $con04."<br>"; 
									if ($con04!='') {
									   
										$consultax="select sum(monto) as total from historico where id='".$_SESSION['id_validar']."' and substring(desperiodo,1,7)='".substr($fec11,0,7)."' and substring(concepto,1,".strlen($con04).")='".$con04."' and cedula='".$cedula."' and nomina='".$tiponomina."'";
										$resultadox = mysqli_query($enlace,$consultax) or die('verificaci&oacute; del c&oacute;digo fall&oacute;: ' . mysqli_error($enlace));
										$rowx=mysqli_fetch_array($resultadox);
										if ($rowx['total']>0) $sueldo= ($rowx['total']<$sueldominimo ? $sueldominimo : $rowx['total']);						
										else $sueldo= $sueldominimo;												
										$consulta5=mysqli_query($enlace,"select codigo from personal_sueldo where id='".$_SESSION['id_validar']."' and substring(fec,1,7)='".substr($fec11,0,7)."' and codigo='".$cedula."'") or die (mysqli_error($enlace));
										if (mysqli_num_rows($consulta5)==0) 
											$consulta5=mysqli_query($enlace,"insert into personal_sueldo (id,fec,codigo,sueldo) values ('".$_SESSION['id_validar']."','".(substr($fec11,0,7).'-01')."','".$cedula."','".$sueldo."')") or die (mysqli_error($enlace));
									}	
							}
							$alivac= ($dvacx/12*$sueldo/30/30);
							$aliuti= ($dutix/12*$sueldo/30/30);
							$integral = ($sueldo/30) + $alivac + $aliuti;
							
							//============ datos de interes
							if ($icon!=2) {
								$consulta=mysqli_query($enlace,"select mon as total from tab_interes where substring(fec,1,7)='".substr($fec11,0,7)."'");
								$row=mysqli_fetch_array($consulta);
							}	
							if ($row['total']==0) $tcolor='red';
							else $tcolor='black';
							$interes=($row['total']==0?$interes:$row['total']);

							//============ calculo
							$acumulado += $integral*$dias - $adelanto;
							
							if ($prestaciones*$interes/100/12>0) {
								$interesganados += ($prestaciones*$interes/100/12)-$adeinteres;	
							}

							//============ dia adicional
							if ($anosx==12 && $anos>=1) {
								$diaa = $anos*2;
								$acumulado += $integral*$diaa;

						} else $diaa=0;	
						
						$acumintpag+=$adeinteres;	
						$acumanticp+=$adelanto;
						$tdias += $dias+$diaa;	
						$prestaciones += ($integral*$dias)+($integral*$diaa)-$adelanto;	
					}
				}
				//====================== mostrar resultado final 
				$color=!$color;
				$pdf->SetFont('Arial','',11);
				$pdf->cell(10,5,$linea,0,0,'',$color);
				$pdf->cell(20,5,$cedula,0,0,'',$color);
				$pdf->cell(90,5,$_POST['personal'],0,0,'',$color);
				$pdf->cell(35,5,number_format($tdias,0),0,0,'R',$color);
				$pdf->cell(35,5,number_format($acumulado,2),0,0,'R',$color);//ojo prestaciones
				$pdf->cell(35,5,number_format($interesganados,2),0,0,'R',$color);
				$pdf->cell(35,5,number_format($prestaciones+$interesganados,2),0,1,'R',$color);
				$tpre += $prestaciones;
				$tint += $interesganados;
		}	
}
if ($_POST['treporte']!=3) {
		$pdf->Cell(190,0,'',1,1,'C'); $pdf->ln(1); 
		$pdf->Cell(190,0,'',1,1,'C'); $pdf->ln(1);
		$pdf->cell(150,5,'Totales',0,0,'R');
		$pdf->cell(40,5,number_format($tot2,2),0,1,'R');	
} else {
		$pdf->Cell(260,0,'',1,1,'C'); $pdf->ln(1); 
		$pdf->Cell(260,0,'',1,1,'C'); $pdf->ln(1);
		$pdf->cell(155,5,'Totales Bs.',0,0,'R',0);
		$pdf->cell(35,5,number_format($tpre,2),0,0,'R',$color);
		$pdf->cell(35,5,number_format($tint,2),0,0,'R',$color);
		$pdf->cell(35,5,number_format($tpre+$tint,2),0,1,'R',$color);
}
$pdf->Output();
?>