<?php
require('../fpdf181/fpdf.php');

class pdf extends FPDF
{
	public function header()
	{
	// Encabezado
	}

	public function MultiCellAll($yi,$xi,$ancho,$alto,$texto,$border,$alineacion,$relleno)
	{
	// Escribir varias columnas
	//MultiCell(ancho,alto,texto,border,alineacion,relleno)
		$x1 = 0;
		$y1 = $yi;
		$i  = 0;
		$maxSize = $yi;
		foreach ($texto as $posicion=>$columna)
		{
			$this->SetXY( $x1+$xi[$i], $y1);
			$this->MultiCell($ancho[$i], $alto[$i], $columna,$border[$i],$alineacion[$i],$relleno[$i]);
			$i += 1;
			if ( $maxSize < ($this->GetY()  ) )
				$maxSize = $this->GetY() ;
		}
		return ( $maxSize - $yi );
	}

	public function footer()
	{
		// pie de pagina
	}
}

function Ymd_dmY(string $fecha, string $separador = "/"):string
{
	$ano=substr($fecha,0,4);
	$mes=substr($fecha, 5,2);
	$dia=substr($fecha, 8,2);
	$_fecha=$dia.$separador.$mes.$separador.$ano; 
	return $_fecha;
}

function formatoFecha($fecha)
{
	//$date   = date_format($fecha, 'F, jS Y');
	$date   =	date('d/ m/ Y');
	return $date;
}


function SetCurrency(float $valor, string $signo = '$'):string
{
	return $signo.number_format($valor,2,'.','');
}

// Se define el tamaño de hoja y margenes
$fpdf = new pdf('l','mm','letter',true);
$fpdf->AddPage('portrait', 'letter');
$fpdf->SetMargins(10,30,20,20);

//Titulos del encabezado
$fpdf	->SetFillColor(255,255,255);
$fpdf	->SetTextColor(0,0,0); 
$fpdf	->SetLineWidth(0.3);
$fpdf	->SetDrawColor(0,0,0);

require_once "../modelos/Empresa.php";
$empresa	          = new Empresa();
$rsptae		          =$empresa->buscarempresa();
$rege		            =$rsptae->fetch_object();

$empresa    			  =$rege->nombre;
$direccione				  =$rege->direccion;
$rif                =$rege->num_documento;

$y		=10;
$x		=10;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', 'B', 12);
$fpdf	->Cell(190, 6, utf8_decode($empresa), '0', 0, 'C', 1);
$y		=$fpdf->GetY()+7;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', 'B', 12);
$fpdf	->Cell(190, 6, utf8_decode('J-'.$rif), '0', 0, 'C', 1);
$y		=$fpdf->GetY()+8;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', 'B', 12);
$fpdf	->Cell(190, 6, utf8_decode('MOVIMIENTO DE INVENTARIO'), '0', 0, 'C', 1);

// Datos de cliente y factura
//obtenemos los datos de la cabecera de la venta actual
require_once "../modelos/Movimientoinventario.php";
$movimientoinventario	= new movimientoinventario();
$rsptav		            = $movimientoinventario->movimientocabecera($_GET["id"]);
//recorremos todos los valores que obtengamos
$regv		          =$rsptav->fetch_object();

$cliente    			=$regv->almacensalida;
$direccion				=$regv->direccionsalida;
$telefono   			="";
$rif        			=utf8_decode($rif);
$licencia_licor		="00186-21";
$licencia_licord	="00186-21";
$tdoc							="RIF";
$cliented   			=$regv->almacenentrada;
$direcciond				=$regv->direccionentrada;
$telefonod  			="";
$rifd       			=utf8_decode($rif);
$tdocd						="RIF";
$vendedor					="";
/* $conductor		=$regv->nombretransporte;
$vehiculo		=$regv->vehiculo;
$placa			=$regv->placa; 
$tasa_dollar	=$regv->tasa_dollar;*/
$cuidad     	="Caracas";
$longitud		=strlen($regv->nromovimiento);
$serie			='0000';
$prefac			= substr($serie, 1, 4-$longitud);
$nrofactura		=''.$prefac.$regv->nromovimiento;
$Fecha 			=$regv->fecha;
$Fecha			=Ymd_dmY($Fecha);
/* $totacredito    =$regv->total_credito;
$totacreditod   =$regv->total_creditod; */

if ($tdoc=="RIF"){
    $rif 	= "J-".$rif;
    $rift 	= "RIF";
}else{
    $rif 	= "CI-".$rif;
    $rift 	= "CÉDULA";
}
if ($tdocd=="RIF"){
	$rifd 	= "J-".$rifd;
	$riftd 	= "RIF";
}else{
	$rifd 	= "CI-".$rifd;
	$riftd 	= "CÉDULA";
}

//$fpdf	->Image('FacturaAlimentoDaniel1.jpg' , 17 ,8, 180 , 210,'JPG', '');
//Titulos del encabezado
$fpdf	->SetFillColor(255,255,255);
$fpdf	->SetTextColor(0,0,0); 
$fpdf	->SetLineWidth(0.3);
$fpdf	->SetDrawColor(0,0,0);

/* $fpdf	->SetFillColor(0,0,0);
$fpdf	->SetTextColor(255,255,255); */

$y		=40;
$x1		=112.7;

$fpdf	->SetXY($x1,$y);
$fpdf	->SetFont('Arial', '', 11);
$fpdf	->Cell(27, 6, utf8_decode('NÚMERO: '), '0', 0, 'L', 1);
$fpdf	->MultiCell(28, 6, $nrofactura, '0', 'L', 1);
$y		=$fpdf->GetY()+1;
$fpdf	->SetXY($x1,$y);
$fpdf	->SetFont('Arial', '', 11);
$fpdf	->Cell(27, 6, 'FECHA:', '0', 0, 'L', 1);
$fpdf	->MultiCell(28, 6, $Fecha, '0', 'L', 1);
$y		=$fpdf->GetY()+4;


$yl		=$y;
$x		=21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', 'B', 10);
$fpdf	->Cell(27, 6, 'ALMACEN DE SALIDA', '0', 0, 'L', 1);
$fpdf	->SetXY($x1,$y);
$fpdf	->SetFont('Arial', 'B', 10);
$fpdf	->Cell(27, 6, 'ALMACEN DE ENTRADA', '0', 0, 'L', 1);
$yf		=$fpdf->GetY();

//cuadrado del encabezado
$y		=$fpdf->GetY()+6;
$fpdf	->Rect(20,$y-6,92.5,5);
$fpdf	->Rect(112.5,$y-6,84,5);
$yd1	=$y;
//Encabezado datos del cliente
$x		=21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, 'NOMBRE', '0', 0, 'L', 1);
$x		=42;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(70, 4, utf8_decode($cliente), '0', 'L', 1);
$y		=$fpdf->GetY()+1;
$x		=21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode('DIRECCIÓN'), '0', 0, 'L', 1);
$x		=42;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(70, 4, utf8_decode($direccion), '0', 'L', 1);
$y		=$fpdf->GetY()+1;
$x		=21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode($riftd), '0', 0, 'L', 1);
$x		=42;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(70, 6, utf8_decode($rif), '0', 'L', 1);
/* $y		=$fpdf->GetY()+1;
$x		=21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode('TELÉFONO'), '0', 0, 'L', 1);
$x		=42;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(70, 6, utf8_decode($telefono), '0', 'L', 1); */
$yd     = $fpdf->GetY();
$y		=$yd1;
$x		=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode('NOMBRE'), '0', 0, 'L', 1);
$x		=$x1+21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(62, 4, utf8_decode($cliented), '0', 'L', 1);
$y		=$fpdf->GetY()+1;
$x		=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode('DIRECCIÓN'), '0', 0, 'L', 1);
$x		=$x1+21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(62, 4, utf8_decode($direcciond), '0', 'L', 1);
$y		=$fpdf->GetY()+1;
$x		=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode($riftd), '0', 0, 'L', 1);
$x		=$x1+21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(62, 6, utf8_decode($rifd), '0', 'L', 1);
/* $y		=$fpdf->GetY()+1;
$x		=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 8);
$fpdf	->Cell(20, 6, utf8_decode('TELÉFONO'), '0', 0, 'L', 1);
$x		=$x1+21;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 7);
$fpdf	->MultiCell(62, 6, utf8_decode($telefonod), '0', 'L', 1); */

$yi     = $fpdf->GetY();


if ($yi>$yd){
    $yd=$yi;
}
//Cuadrado del encabezado del cliente
//$fpdf	->Rect(20,$y-6,92.5,5);
//$fpdf	->Rect(112.5,$y-6,84,5);
$fpdf	->Rect(20,$yf,92.5,($yd-$yf)+1);
$fpdf	->Rect(112.5,$yf,84,($yd-$yf)+1);


 /* $fpdf	->SetFillColor(0,0,0);
$fpdf	->SetTextColor(255,255,255); */    

// Encabezdo del detalle
//Fijamos el eje de y en 70
$y		=70+22;

$yf     =$y;
$x		=20.5;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', 'B', 8);
$fpdf	->Cell(55, 6, utf8_decode('CANTIDAD'), '0', 0, 'C', 1);
$fpdf	->SetXY($x+55,$y);
$fpdf	->Cell(117, 6, utf8_decode('DESCRIPCIÓN'), '0', 0, 'C', 1);
/* $fpdf	->SetXY($x+97,$y);
$fpdf	->Cell(35, 6, utf8_decode('MONTO BS'), '0', 0, 'C', 1);
$fpdf	->SetXY($x+133,$y);
$fpdf	->Cell(42, 6, utf8_decode('MONTO $'), '0', 0, 'C', 1); */
$y		=$fpdf->GetY();

//Cuadro del encabezado
$fpdf	->Rect(20,$yf,56,($y-$yf)+5);
$fpdf	->Rect(20+56,$yf,120,($y-$yf)+5);
/* $fpdf	->Rect(20+97,$yf,36,($y-$yf)+5);
$fpdf	->Rect(20+133,$yf,43.5,($y-$yf)+5); */

//Cuadro del detalle
$yd1     =5;
$alto    =100;
$fpdf	->Rect(20,$yf+$yd1,56,$alto);
$fpdf	->Rect(20+56,$yf+$yd1,120,$alto);
/* $fpdf	->Rect(20+97,$yf+$yd1,36,$alto);
$fpdf	->Rect(20+133,$yf+$yd1,43.5,$alto); */


// Detalle de la factura
//Buscamos los detalles de la factura

$rsptad=$movimientoinventario->movimientodetalles($_GET["id"]);

// 
//articulo, codigo, cajas, unidades, precio_venta, descuento, subtotal, idcategoriadeunidades, 
//nombre, idunidademedidad, nombre, unidadesxcajas
$fpdf	->SetY($y+6);
$fpdf	->SetFont('Arial', '', 7);
/* $fpdf	->SetFillColor(255,255,255);
$fpdf	->SetLineWidth(0.5);
$fpdf	->SetDrawColor(90,90,90);
$fpdf	->SetTextColor(0,0,0); */

$totalmovimiento = 0;
$y			=$fpdf->GetY();
$x		    =20.5;
while($regd=$rsptad->fetch_object()){
	
	$fpdf	->SetXY($x,$y);
  $fpdf	->SetFont('Arial', 'B', 8);
  $fpdf	->Cell(55, 6, number_format($regd->cantidad, 0, ',', '.'), '0', 0, 'C', 1);
  $fpdf	->SetXY($x+56,$y);
  $fpdf	->MultiCell(117, 6, utf8_decode($regd->nombre), '0', 'L', 1);
 	$y		=$fpdf->GetY()+5;
  $totalmovimiento = $totalmovimiento + $regd->cantidad*1;
   

}


//Sub-total, impuesto y total ****************
//Sub-total
//$fpdf	->SetFillColor(0,0,0);
//$fpdf	->SetTextColor(255,255,255);


$x1			=82;
$y1			=100;
$xd     =72;
$fpdf		->SetFont('Arial', '', 9);
$y			=$y1+$alto;
$x			=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->Cell(70, 6, 'Total Unidades', '', 0, 'R', 1);
$fpdf	->SetXY($x+$xd,$y);
$fpdf	->Cell(42, 6, number_format($totalmovimiento, 0, ',', '.'), '', 0, 'R', 1); 




/* //iva
$y		=$fpdf->GetY()+7;
$fpdf	->SetXY($x,$y);
$fpdf	->Cell(70, 6, 'IVA 16% Sobre: '.number_format($totalG, 2, ',', '.'), '', 0, 'R', 1);
$fpdf	->SetXY($x+$xd,$y);
$fpdf	->Cell(42, 6, number_format($iva, 2, ',', '.'), '', 0, 'R', 1); */
//Exento

//Cuadros
$y		=$y1+$alto-1;
$x		=$x1;
$fpdf	->Rect($x,$y,71,6.5);
$fpdf	->Rect($x+71,$y,43.5,6.5);
/*$y		=$y+6.5;
$fpdf	->Rect($x,$y,71,6.5);
$fpdf	->Rect($x+71,$y,43.5,6.5);
$y		=$y+6.5;
$fpdf	->Rect($x,$y,71,6.5);
$fpdf	->Rect($x+71,$y,43.5,6.5); */


//Rectangulo
/* $fpdf	->Rect(20,$y1-1,59.5,16);
$fpdf	->Rect(20,$y1+15,59.5,5);   */




$y		=$fpdf->GetY()+30;
$x		=$x1;
$fpdf	->Rect(60,$y,100,0);
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 9);
$y		=$y+10;
$fpdf	->Cell(50, 6, utf8_decode('Firma y Sello'), '0', 0, 'C', 1);
$y		=$fpdf->GetY()+5;
$x		=$x1;
$fpdf	->SetXY($x,$y);
$fpdf	->SetFont('Arial', '', 9);
$fpdf	->Cell(50, 6, utf8_decode($rif), '0', 0, 'C', 1); /* */




$fpdf->OutPut('Movimientodeinventario'.$nrofactura,'I');