<?php
session_start();
//RESTRICCIÓN DE ACCESO A TRABAJADOR (ACCESO INDIVIDUAL) 
if (isset($_SESSION['tipousuario']))
		{if ($_SESSION['tipousuario']=='1')
		header ('location:menu_personal.php');
		}
if  (trim($_SESSION['nombre_validar'])=='') header ('location:index.php');
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=''; 
///////////////////////////////////////////////// inicio del programa ////////////////////////////////////////////////////////////////
if (!$_POST) {
?>
<html>
	<head>
	<meta http-equiv="content-type" content="text/html; charset=utf-8">
	<script language='javascript' src='fscript.js'></script>
	<link rel='stylesheet' type='text/css' href='styles.css' />
	<script>
function obligatorio() {
    if(document.entrada.fecha.value.length<4){
	     alert("Debe Ingresar Año");
		 document.entrada.fecha.focus();
		 return false;
	}else{
	     return true;
	}
}	
</script>	
	</head>
	<body>	
		<?
		menu();
		?>
		<br><table border=0 cellpadding=0 cellspacing=0 width='100%'>
			<tr>
				<td  width='100%' align='left'><font size=2 color='black' face='verdana'>Empresa: <b><?echo $_SESSION['empresa_validar'];?></b>  - Per&iacute;odo: <b><font color=red><?echo $per;?></font></b>  -  Usuario: <b><?echo $_SESSION['nombre_validar'];?></b></font></td> 
			</tr>
		</table><hr>	
        <?
        $entra=0;
        echo "<h2>Reporte de ARC</h2>";

		$a=date ("Y");$m=date ("n");$d=date ("j");
		echo "
		<form id='entrada' name='entrada' action='".$_SERVER['PHP_SELF']."' target='_blank' method='POST' onsubmit='return obligatorio()'>
		<input type='hidden' name='usuario' value = '".$_SESSION['nombre_validar']."'>
		<input type='hidden' name='reporte' value = '1'>
		<table cellpadding=2 cellspacing=0 align='center'>
		<tr>
			<td align='right'>Trabajador:</td>
			<!--<td align='left'><input name='cedula' size = '20' maxlength = '8' ></td>-->
			<td align='left'><select   style='width:300px; border-radius:8px; padding:4px;' name = 'cedula'><option value='0'>TODOS</option>";
		$consulta="Select codigo,nombres,apellidos,nombres1,apellidos1 from personal where id='".$_SESSION['id_validar']."' order by apellidos,nombres";
		$consulta = mysqli_query($enlace,$consulta) or die ("no se pudo realizar la consulta...".$consulta.'='.mysqli_error($enlace));	
		$resultado = mysqli_num_rows($consulta);
		if ($resultado != 0) {
				for ($i=0;$i<$resultado;$i++) {
					$row1 = mysqli_fetch_array($consulta);
					echo "<option value='".$row1['codigo']."'>".utf8_encode(trim($row1['apellidos']).", ".$row1['nombres'])."</option>";
				}
		}	
		echo "</select></td></tr>";
		
		//estatus
		echo"<tr><td align='right'>Status:</td>
		         <td align='left'><select   style='width:300px; border-radius:8px; padding:4px;' name = 'status'>
				 <option value='0'>TODOS</option>
				 <option value='A'>ACTIVO</option>
				 <option value='I'>INACTIVO</option>
			</select></td></tr>";

		echo "<tr>";
		echo "<td align='right'>A&ntilde;o (AAAA):</td>";
		echo "<td align='left'><input name='fecha' size = '10' maxlength = '4'></td></tr>";		
		
		echo "<tr><td colspan='2' align='center'>";
		echo "&nbsp;<p><input name='ver' type='submit' class='boton' value='Visualizar Reporte para Imprimir/Guardar'>";
		echo "</td></tr>";
		echo "</table></form></font>";
        ?>
</body>	
</html>
<? 
 }
///////////////////////////////////////////////// cuando esta recibiendo datos  ////////////////////////////////////////////////////////////////	
if ($_POST['reporte']==1) {
		$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'];
			$_POST['empresa']=substr($_POST['nomina'],6,100);
		}   
		$_POST['usuario']=$_SESSION['nombre_validar'];
		$f; $l; if(headers_sent($f,$l)) { echo $f,'<br/>',$l,'<br/>'; die('now detect line'); }
		ob_start();
		require('fpdf.php');
		class PDF extends FPDF {
			function Header()
			{
				//$this->Image($_SESSION['logo_validar'],10,10,30,30);
			    $this->SetFont('arial','',12);
				$this->Ln(2);
				$this->SetFont('arial','B',10);
				//$this->Cell(0,0,$_POST['empresa'],0,1,'R'); $this->Ln(4);
				$this->SetFont('arial','',8); 
				//$this->Cell(0,0,$_POST['encabeza'],0,1,'R');$this->Ln(1);
				//$this->Cell(210);$this->Cell(0,5,'Fecha: '.hoy(),0,1,'R'); $this->Ln(1);
				//$this->Cell(210);$this->Cell(0,5,'Usuario: '.$_POST['usuario'],0,1,'R'); $this->Ln(5);
				$this->SetFont('arial','B',12);  
				$this->Cell(0,0,'COMPROBANTE DE PAGO Y RETENCIONES DE IMPUESTO SOBRE LA RENTA',0,1,'C');$this->Ln(5);
				$this->SetFont('arial','',12);
				$this->Cell(0,0,'(Sobre Sueldos y Salarios y Demas Remuneraciones Similares)',0,1,'C');$this->Ln(5);
				$this->SetFont('arial','B',12);
				$this->Cell(0,0,utf8_decode('(AÃ±o '.$_POST["fecha"].')'),0,1,'C');$this->Ln(12);
				$this->Rect(10, 5, 195, 25, 'D');
				$this->Cell(0,0,'DATOS DEL AGENTE DE RETENCION',0,1,'C');$this->Ln(5);
				$this->SetFont('arial','B',11);
				$this->Cell(50,8,'RAZON SOCIAL',1,0,'L');
				$this->SetFont('arial','',12);
				$this->Cell(145,8,$_SESSION['empresa_validar'],1,1,'L');
				
				$this->SetFont('arial','B',11);
				$this->Cell(50,8,'RIF. NUMERO',1,0,'L');
				$this->SetFont('arial','',12);
				$this->Cell(145,8,$_POST['encabeza'],1,1,'L');
				
				$this->SetFont('arial','B',11);
				$this->Cell(50,8,'DIRECCION',1,0,'L');
				$this->SetFont('arial','',7);
				$this->Cell(145,8,$_POST['pie'],1,1,'L');
				$this->Ln(5);
				$this->SetFont('arial','B',12);
				$this->Cell(0,0,'DATOS DEL TRABAJADOR',0,1,'C');$this->Ln(5);
				/*$consulta=mysqli_query($enlace,"select * from personal where id='".$_SESSION['id_validar']."' and codigo='".$_POST["cedula"]."'");
				if (mysqli_num_rows($consulta)!=0){
					$row=mysqli_fetch_array($consulta);
					$this->SetFont('arial','B',11);
					$this->Cell(50,8,'APELLIDOS Y NOMBRES',1,0,'L');
					$this->SetFont('arial','',12);
					$this->Cell(145,8,implode(' ',array($row['nombres'],$row['nombres1'],$row['apellidos'],$row['apellidos1'])),1,1,'L');
					$this->SetFont('arial','B',11);
					$this->Cell(50,8,'DIRECCION',1,0,'L');
					$this->SetFont('arial','',9);
					$this->Cell(145,8,$row['dir'],1,1,'L');
					$this->SetFont('arial','B',11);
					$this->Cell(50,8,'C. I. o RIF. NUMERO',1,0,'L');
					$this->SetFont('arial','',12);
					$this->Cell(145,8,$row['sso'],1,1,'L');
					$this->Ln(5);
				}*/
				
			/*if ($_POST['gerencia']!="") {
				$this->Cell(0,0,'Gerencia: '.$_POST['gerencia'],0,1,'L');$this->Ln(5);
			}
			if ($_POST['division']!="") {
				$this->Cell(0,0,'Division: '.$_POST['division'],0,1,'L');$this->Ln(5);
			}
			if ($_POST['departamento']!="") {
				$this->Cell(0,0,'Departamento: '.$_POST['departamento'],0,1,'L');$this->Ln(5);
			}
			if ($_POST['unidad']!="") {
				$this->Cell(0,0,'Unidad: '.$_POST['unidad'],0,1,'L');$this->Ln(5);
			}
			if ($_POST['turno']!="") {
				$this->Cell(0,0,'Turno: '.$_POST['turno'],0,1,'L');$this->Ln(5);
			}
			if ($_POST['tipo']=="R") {
				$header=array('#','Fic.','Cedula','Nombres y Apellidos','Detalle','Saldo Anterior','Cuota','Saldo Final');
				$w=array(10,30,20,60,55,30,30,30);
			} 
			if ($_POST['tipo']=="O") {
				$header=array('#','Cedula','Nombres y Apellidos','Detalle','Total','Cuota','Saldo');
				$w=array(5,18,60,100,24,24,24);
			}
			else {	
				$header=array('Cod.','Cedula','Nombres y Apellidos','Detalle','Total','Pago','#','Cuota','Saldo','#');
				$w=array(10,15,50,90,20,20,5,20,20,5);
			}	
				$this->SetFillColor(70,77,119);
				$this->SetTextColor(255);
				$this->SetDrawColor(255,255,255);
				$this->SetLineWidth(.5);
				$this->SetFont('','');
				//Cabecera
				$this->SetFont('arial','B',8);
				for($i=0;$i<count($header);$i++)
					$this->Cell($w[$i],4,$header[$i],1,0,'C',1);
				$this->Ln();
				//Restauracion de colores y fuentes
				$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,'Pagina '.$this->PageNo().'/{nb}',0,0,'C');*/
			}
        }
		$pdf=new PDF($orientacion='P',$unit='mm',$format='letter');
		$sql="select codigo from personal where id='".$_SESSION['id_validar']."' ";
		if(isset($_POST["cedula"])&&$_POST["cedula"]<>'0'){
		      $sql.=" and codigo='".$_POST["cedula"]."'";
		}
		if(isset($_POST["status"])&&$_POST["status"]<>'0'){
		      $sql.=" and status='".$_POST["status"]."'";
		}

		$resultado=mysqli_query($enlace,$sql) or die ($sql);
		while($rowe=mysqli_fetch_array($resultado)) { 
			$pdf->AddPage();
			$pdf->AliasNbPages();
			$cedula=$rowe["codigo"];
			$consulta=mysqli_query($enlace,"select * from personal where id='".$_SESSION['id_validar']."' and codigo='".$cedula."'");
			if (mysqli_num_rows($consulta)!=0){
				$row=mysqli_fetch_array($consulta);
				$pdf->SetFont('arial','B',11);
				$pdf->Cell(50,8,'APELLIDOS Y NOMBRES',1,0,'L');
				$pdf->SetFont('arial','',12);
				$pdf->Cell(145,8,implode(' ',array($row['nombres'],$row['nombres1'],$row['apellidos'],$row['apellidos1'])),1,1,'L');
				
				$pdf->SetFont('arial','B',11);
				$pdf->Cell(50,8,'C. I. o RIF. NUMERO',1,0,'L');
				$pdf->SetFont('arial','',12);
				$pdf->Cell(145,8,$row['sso'],1,1,'L');
				$pdf->SetFont('arial','B',11);
				$pdf->Cell(50,8,'DIRECCION',1,0,'L');
				$pdf->SetFont('arial','',7);
				$pdf->Cell(145,8,$row['dir'],1,1,'L');
				$pdf->Ln(5);
			}		
			$pdf->SetFont('arial','B',12);
			$pdf->Cell(0,0,'INFORMACION DE LOS PAGOS EFECTUADOS E IMPUESTO RETENIDO',0,1,'C');$pdf->Ln(5);
			$pdf->SetFont('arial','B',8);
			$pdf->Cell(50,8,'MES DE PAGO',1,0,'C');
			$pdf->Cell(50,8,'REMUNERACIONES PAGADAS',1,0,'C');
			$pdf->Cell(45,8,'% DE RETENCION',1,0,'C');
			$pdf->Cell(50,8,'IMPUESTO RETENIDO',1,1,'C');
			$consulta="SELECT sum(monto) as monto,GROUP_CONCAT(cantidad) as cantidad,SUBSTRING(desperiodo,1,7) as mes FROM `historico` WHERE  id=".$_SESSION['id_validar']." and concepto IN ('2300','2301') 
			and cedula='".$cedula."' and SUBSTRING(desperiodo,1,4)='".$_POST["fecha"]."' GROUP BY mes ORDER BY `historico`.`xxx` ASC";
			$resultadox=mysqli_query($enlace,$consulta) or die ($consulta);
			$pdf->SetFont('Arial','',9);
			$mes=1;
			$total1=0;
			$total2=0;

			while($row=mysqli_fetch_array($resultadox)) {
			    $mesaux=explode("-",$row['mes']);
				$mesaux=intval($mesaux[1]);
				if($mesaux!=$mes){
				   	while($mes<$mesaux){
				     $consulta="SELECT sum(monto) as monto,GROUP_CONCAT(cantidad) as cantidad,SUBSTRING(desperiodo,1,7) as mes FROM `historico` WHERE  id=".$_SESSION['id_validar']." and tipo='A' 
					 and cedula='".$cedula."' and SUBSTRING(desperiodo,1,4)='".$_POST["fecha"]."' and SUBSTRING(desperiodo,6,2)='".str_pad($mes,2,"0",STR_PAD_LEFT)."' GROUP BY mes ORDER BY `historico`.`xxx` ASC";
			          $result=mysqli_query($enlace,$consulta) or die ($consulta);		
					  $row2=mysqli_fetch_array($result);
					  $pdf->Cell(50,8,mes_largo($mes),1,0,'L');
					  $pdf->Cell(50,8,number_format ($row2['monto'],2,',','.'),1,0,'C');
					  $pdf->Cell(45,8,'0',1,0,'C');
					  $pdf->Cell(50,8,'0',1,1,'C');
					  $mes++;
					  $total1+=$row2['monto'];
					 }
				}
				$cantidad=explode(",",$row['cantidad']);
				$cantidad=$cantidad[count($cantidad)-1];
				$pdf->Cell(50,8,mes_largo($mes),1,0,'L');
				$pdf->Cell(50,8,number_format (($row['monto']*100)/$cantidad,2,',','.'),1,0,'C');
				$pdf->Cell(45,8,$cantidad,1,0,'C');
				$pdf->Cell(50,8,$row['monto'],1,1,'C');
				$total1+=(($row['monto']*100)/$cantidad);
				$total2+=$row['monto'];

				$mes++;
			}
			mysqli_free_result($resultadox);
			if($mes!=13){
				 $consultasueldo="select sum(ps.sueldo) as sueldo,MONTH(fec) as mes, total_pago_vaca as vacaciones 
				 from personal_sueldo as ps 
				 LEFT JOIN vacacion ON ps.codigo = vacacion.cedula AND YEAR(ps.fec)=YEAR(vacacion.fdesde) AND MONTH(ps.fec) = MONTH(vacacion.fdesde)
				 where ps.id='".$_SESSION['id_validar']."' and ps.codigo='".$cedula."' and YEAR(ps.fec)='".$_POST["fecha"]."' group by MONTH(ps.fec) order by ps.fec";
				 $resultadosueldo=mysqli_query($enlace,$consultasueldo) or die ($consultasueldo);
				 $sueldosant=array();
				 while($rowsueldo=mysqli_fetch_array($resultadosueldo)){
					 $sueldosant[$rowsueldo['mes']]=$rowsueldo['sueldo']+$rowsueldo['vacaciones'];
					 }					 
				mysqli_free_result($resultadosueldo);
		

				for($i=$mes;$i<13;$i++){	
					 

                     $total1+=!isset($sueldosant[$i])?0:$sueldosant[$i];
					 $total1+=$renglon;
					 $pdf->Cell(50,8,mes_largo($i),1,0,'L');
					 $pdf->Cell(50,8,number_format (!isset($sueldosant[$i])?0:$sueldosant[$i],2,',','.'),1,0,'C');
					 //$pdf->Cell(50,8,number_format ($renglon,2,',','.'),1,0,'C');
					 $pdf->Cell(45,8,'',1,0,'C');
					 $pdf->Cell(50,8,'',1,1,'C');
				
				 }
			}
			$pdf->SetFont('arial','B',8);
			$pdf->Cell(50,8,'TOTALES',1,0,'C');
			$pdf->Cell(50,8,number_format($total1,2,',','.'),1,0,'C');
			$pdf->Cell(45,8,'',1,0,'C');
			$pdf->Cell(50,8,$total2,1,1,'C');
			$pdf->Ln(5);
			$pdf->SetFont('arial','B',10);
			$pdf->Cell(97,8,'LUGAR Y FECHA',0,0,'C');
			$pdf->Cell(97,8,'FIRMA Y SELLO DEL AGENTE DE RETENCION',0,1,'C');
			$pdf->Ln(1);
			/*$pdf->Cell(97,8,' _____________________ ',0,0,'C');*/
			$pdf->SetFont('arial','',5);
			$pdf->Cell(97,2,$_POST['pie'],0,0,'C');
			$pdf->Cell(97,2,'  ',0,1,'C');
			$pdf->Cell(97,2,hoy(),0,0,'C');
			$pdf->Cell(97,2,' _____________________ ',0,1,'C');
			$pdf->Ln(10);
			$pdf->Cell(0,0,'ARC-V',0,1,'C');
		
		}
		if(isset($_POST["cedula"])&&strlen(trim($_POST["cedula"]))>0){
		     $pdf->Output('ARC'.$_POST["cedula"].'-'.$_POST["fecha"].'.pdf','D');
		}
		else{
		     $pdf->Output('ARC'.$_SESSION['id_validar'].'-'.$_POST["fecha"].'.pdf','D');
			 }
		ob_end_flush();	 
}  // fin de reporte
?>

	<style>
	.boton {
		border-radius: 8px;      /* Bordes redondeados */
		padding: 8px 16px;       /* Más espacio interno */
		border: none;            /* Quita el borde feo por defecto */
		cursor: pointer;         /* Mano al pasar */
		transition: 0.2s ease;   /* Animación suave */
		}

		.boton:hover {
		transform: scale(1.03);  /* Efecto sutil al pasar el mouse */
		}

	</style>