<?php
session_start();
include('config.php');
include($rutaPhp.$rutaHtml.'/maqueta/includes.php');

include($rutaPhp.$rutaHtml.'/acceso/control.php');
include($rutaPhp.$rutaHtml.'/maqueta/arriba.php');

include($rutaPhp.$rutaHtml.'/librerias/teclado.php');
include($rutaPhp.$rutaHtml.'/librerias/teclado-multilinea.php');
include($rutaPhp.$rutaHtml.'/librerias/calculadora.php');

//7-4-2021 añadimos observaciones al cierre (facturacion)
$observacionesFacturacion=( $_SESSION['parametrosSGA']['ObservacionesFacturacion']=='S' );

?>
<script>

$(document).ready(function() {

	$.datepicker.regional['es'] = {
		closeText: 'Cerrar',
		prevText: '<Ant',
		nextText: 'Sig>',
		currentText: 'Hoy',
		monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
		monthNamesShort: ['Ene','Feb','Mar','Abr', 'May','Jun','Jul','Ago','Sep', 'Oct','Nov','Dic'],
		dayNames: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],
		dayNamesShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sáb'],
		dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
		weekHeader: 'Sm',
		dateFormat: 'dd/mm/yy',
		firstDay: 1,
		isRTL: false,
		showMonthAfterYear: false,
		yearSuffix: ''
	}
	$.datepicker.setDefaults($.datepicker.regional['es']);
	$("#fechaCierre").datepicker({ firstDay:1,dateFormat:'dd/mm/yy' }).val();

});

</script>

<h2>Entrada de Mercancía Nº <?php echo $_SESSION['entrada']['NumEntrada']; ?></h2>

<table class="tablaFormateada anchoMaximo desplazamientoSuperior">
<tr>
	<?php if(count($_SESSION['empresas'])>1) { ?><th>Empresa</th><?php } ?>
    <th>Fecha</th>
	<th>Régimen</th>
	<th>Cliente</th>
	<th>Tipo Entrada</th>
	<th>Tipo Documento</th>
	<th>Expedidor</th>
</tr>
<tr>
	<?php if(count($_SESSION['empresas'])>1) { ?><td><?php echo $_SESSION['entrada']['Empresa']; ?></td><?php } ?>
    <td><?php echo fechaNacional($_SESSION['entrada']['FechaEntrada']); ?></td>
    <td><?php echo $_SESSION['entrada']['Regimen']; ?></td>
    <td><?php echo $_SESSION['entrada']['ClientePropietario']; ?></td>
	<td><?php echo $_SESSION['entrada']['TipoEntrada']; ?></td>
	<td><?php echo $_SESSION['entrada']['TipoDocumento']; ?></td>
	<td><?php echo $_SESSION['entrada']['Expedidor']; ?></td>
  </tr>
</table>


<form id="formulario" name="formulario" method="post" action="">

<?php



if($_POST['confirmarEntrada']=='1') {

	$cadenaDescargas='';
	
	foreach($_POST as $campo=>$valor) {
			
		if(substr($campo,0,8)=='descarga' && substr($campo,8,strlen($campo))!='Auto' ) {
			if($cadenaDescargas!='') $cadenaDescargas.=",";
			$cadenaDescargas.=substr($campo,8,strlen($campo))."-".$_POST['cantidad-descarga'.$valor];
		}
	}
		
	$cadenaServicios='';
	
	foreach($_POST as $campo=>$valor) {
			
		if(substr($campo,0,8)=='servicio' && substr($campo,8,strlen($campo))!='Auto' ) {
			if($cadenaServicios!='') $cadenaServicios.=",";
			$cadenaServicios.=substr($campo,8,strlen($campo))."-".$_POST['cantidad-servicio'.$valor];
		}
	}
	
	if($_GET['traza']=='si') echo '<p>Traza 1</p>';
	
	$fechaCierre=fechaParaProxium(fechaMysql($_POST['fechaCierre']));
	
	if($_GET['traza']=='si') echo '<p>Traza 2</p>';
	
	$peticion='SGAEntradasMercancia#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#CONFIRMARENTRADA#'.$_SESSION['almacen'].';'.$_SESSION['entrada']['Empresa'].';'.$_SESSION['entrada']['NumEntrada'].';'.$cadenaDescargas.';'.$cadenaServicios.';'.$fechaCierre.';'.arreglaSaltos($_POST['observacionesFacturacion']);
	
	if($_GET['traza']=='si') echo '<p>Traza 3</p>';
	
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	if($_GET['traza']=='si') {
		echo "<p>".$peticion."</p>";
		print_r($resultado);
	}
	
	$valores=explode('#',$resultado[0]['Error']);
	if($valores[0]=='0') {
	
		?>
		<script>
			alert('Confirmación de lecturas realizada correctamente.',null,'ok').done(function(){
				$('#popupCargando').show();
				window.location="entradas-mercancia-gs1.php";
			});
        </script>
        <?php

	}
	else echo '<p class="error">ERROR: '.$valores[1].'</p>';
	

}

//print_r($_SESSION['entrada']['FacturacionDescargas']);

$descargas=arreglaArrayPXMobileProxiumResult($_SESSION['entrada']['FacturacionDescargas']);
$servicios=arreglaArrayPXMobileProxiumResult($_SESSION['entrada']['FacturacionServicios']);

if($_GET['traza']=='si') {
	echo '<p>Descargas:</p>';
	print_r($descargas);
	echo '<p>Servicios:</p>';
	print_r($servicios);
}

if(count($descargas)>0) {
?>
	<p>Descargas:</p>
    
    <table class="tablaFormateada">
                <tr>
                	<th></th>
                    <th>Nombre</th>
                    <th>Cantidad</th>
                    <th>Un. Medida</th>
                </tr>
				<?php foreach($descargas as $descarga) { ?>
                
                <?php //print_r($descarga); ?>
                
                <?php if($descarga['Auto']=='S') { ?>
                
                	<tr>
                    	<td><input tipo="descarga" type="checkbox" name="descargaAuto" id="descargaAuto" class="checkGrande" checked onclick="alert('Esta descarga es automática y no puede desmarcarse.');return false"/></td>
                    	<td align="left"><?php echo $descarga['Nombre']; ?></td>
                        <td><input id="cantidad-descargaAuto" name="cantidad-descargaAuto" type="text" value="<?php echo $descarga['Cantidad']; ?>" class="campo" style="width:70px" disabled/></td>
                        <td align="left"><?php echo $descarga['UnidadMedida']; ?></td>
                    </tr>
                
                <?php } else { ?>
                
                	<tr>
                    	<td><input tipo="descarga" codigo="<?php echo $descarga['Codigo']; ?>" type="checkbox" name="descarga<?php echo $descarga['Codigo']; ?>" id="descarga<?php echo $descarga['Codigo']; ?>" value="<?php echo $descarga['Codigo']; ?>" class="selectorDescarga checkGrande selectorUnico" <?php if($_POST['descarga'.$descarga['Codigo']]) echo "checked"; else if($descarga['Marcado']=='S') echo "checked"; ?> /></td>
                    	<td align="left"><?php echo $descarga['Nombre']; ?></td>
                        <td><input id="cantidad-descarga<?php echo $descarga['Codigo']; ?>" name="cantidad-descarga<?php echo $descarga['Codigo']; ?>" type="text" value="<?php if($_POST['cantidad-descarga'.$descarga['Codigo']]) echo $_POST['cantidad-descarga'.$descarga['Codigo']]; else echo $descarga['Cantidad']; ?>" class="campo cantidad campoCierre" style="width:70px" /></td>
                        <td align="left"><?php echo $descarga['UnidadMedida']; ?></td>
                    </tr>
                    
				<?php } ?>
                
                <?php } ?>
	</table>
<?php
}

if(count($servicios)>0) {
	?>
    <p>Servicios:</p></style>
    
    <table class="tablaFormateada">
    	<tr>
        	<th></th>
            <th>Nombre</th>
            <th>Cantidad</th>
            <th>Un. Medida</th>
		</tr>
		<?php foreach($servicios as $servicio) { ?>
        
        	<?php if($servicio['Auto']=='S') { ?>
            
            <tr>
                <td><input tipo="servicio" type="checkbox" name="servicioAuto" id="servicioAuto" class="checkGrande" checked onclick="alert('Este servicio es automático y no puede desmarcarse.');return false"/></td>
               <td align="left"><?php echo $servicio['Nombre']; ?></td>
                <td><input id="cantidad-servicioAuto" name="cantidad-servicioAuto" type="text" value="<?php echo $servicio['Cantidad']; ?>" tipo="servicio" class="campo" style="width:70px" disabled/></td>
                <td align="left"><?php echo $servicio['UnidadMedida']; ?></td>
        	</tr>
            
            <?php } else { ?>
        
			<tr>
                <td><input tipo="servicio" codigo="<?php echo $servicio['Codigo']; ?>" type="checkbox" name="servicio<?php echo $servicio['Codigo']; ?>" id="servicio<?php echo $servicio['Codigo']; ?>" value="<?php echo $servicio['Codigo']; ?>" class="selectorServicio checkGrande selectorUnico" <?php if($_POST['servicio'.$servicio['Codigo']]) echo "checked"; else if($servicio['Marcado']=='S') echo "checked"; ?> /></td>
               <td align="left"><?php echo $servicio['Nombre']; ?></td>
                <td><input codigo="<?php echo $servicio['Codigo']; ?>" id="cantidad-servicio<?php echo $servicio['Codigo']; ?>" name="cantidad-servicio<?php echo $servicio['Codigo']; ?>" type="text" value="<?php if($_POST['cantidad-servicio'.$servicio['Codigo']]) echo $_POST['cantidad-servicio'.$servicio['Codigo']]; else echo $servicio['Cantidad']; ?>" tipo="servicio" class="campo cantidad campoCierre" style="width:70px"/></td>
                <td align="left"><?php echo $servicio['UnidadMedida']; ?></td>
        	</tr>
        
        	<?php } ?>
		
		<?php } ?>
        
	</table>
	<?php
}
?>

<div id="bloqueContenedor" style="width:350px;margin:20px auto">
	<p class="sinMargen">Fecha de Entrada:</p>
    <div class="campoOrdenPreparacionBloque">
        <!--<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoFechaCierre" />--><input name="fechaCierre" type="text" class="campo campoOrdenPreparacion" id="fechaCierre" maxlength="14" style="margin-left:-35px;" value="<?php if($_POST['fechaCierre']) echo $_POST['fechaCierre']; else echo date('d/m/Y'); ?>"/>
        <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarFechaCierre" style="position:absolute;right:25px;cursor:pointer;"/>
    </div>
</div>

<?php if($observacionesFacturacion) { ?> 
<p>Observaciones  facturación:<br />
<textarea name="observacionesFacturacion" id="observacionesFacturacion" rows="3" class="campo" style="width:935px;text-align:left"></textarea>
</p>
<?php } ?>

<input type="hidden" name="confirmarEntrada" id="confirmarEntrada" value="" />

<p><input type="button" name="botonCierre" id="botonCierre" value="Cerrar y Confirmar lectura" class="boton"/></p>

</form>

<script>



$(document).ready(function() {
	
	$(document).on('click','#observacionesFacturacion',function(){
		
		var idCampo=$(this).attr('id');
		
		$('#tecladoMultilinea').show();
		$('#valorTecladoMultilinea').val( $(this).val() );
		$('#enterTecladoMultilinea').attr('campoValor', idCampo );
		$('#enterTecladoMultilinea').attr('forzarEnter','no');
		
	});
	
	$('.selectorDescarga').on('click',function(e) {
		var actual=$(this);
		var valor=actual.is(':checked');
		$('.selectorDescarga').each(function(){
			$(this).prop("checked", false);
		});
		if(valor) actual.prop("checked", true);
	});
	
	$('.cantidad').on("click",function(e) {
		e.preventDefault();
		$('#calculadora').show();
		$('#valorCalculadora').val( $(this).val() );
		$('#enterCalculadora').attr('campoValor',$(this).attr('id'));
		$('#enterCalculadora').attr('forzarEnter','si');
	});
	
	
	$('.cantidad').on("change",function(e) {
	
		e.preventDefault();
		
		var tipo=$(this).attr('tipo');
		var codigo=$(this).attr('codigo');
		var chekeado=$('#'+tipo+codigo).is(':checked');
		//alert('#'+tipo+codigo+' checkeado: '+chekeado);
		if( $(this).val()=='0' || $(this).val()=='' ) $('#'+tipo+codigo).prop('checked',false);
		else $('#'+tipo+codigo).prop('checked',true);
		
	});
	
	$(document).on('click','#tecladoFechaCierre',function(){
		$('#teclado').show();
		$('#valor').val( $('#fechaCierre').val() );
		$('#valorOculto').val( $('#fechaCierre').val() );
		$('#enter').attr('campoValor','fechaCierre');
		$('#enter').attr('forzarEnter','no');
	});
			
	$(document).on('click','#borrarFechaCierre',function(){
		$("#fechaCierre").val('');
		$("#fechaCierre").focus();		
	});
	
	
	
	$('#botonCierre').on('click',function(e){

		e.preventDefault();

		var error=false;
	
		$('.selectorUnico').each(function(){
		
			var tipo=$(this).attr('tipo');
			var codigo=$(this).attr('codigo');
		
			console.log('#cantidad-'+tipo+codigo);
		
			if( $(this).is(':checked') ) {
				if( $('#cantidad-'+tipo+codigo).val()=='' || $('#cantidad-'+tipo+codigo).val()=='0' ) error=true;
			}
		});
		
		/*
		var q = new Date();
		var mes = q.getMonth()+1;
		var dia = q.getDay();
		var anyo = q.getFullYear();
		var fechaActual = new Date(anyo+'-'+mes+'-'+dia);
		console.log('actual: '+anyo+'-'+mes+'-'+dia);
		*/
		
		var fechaActual = new Date();
		var valoresInformados=$('#fechaCierre').val().split('/');
		var fechaInformada=new Date(valoresInformados[2]+'-'+valoresInformados[1]+'-'+valoresInformados[0]);
		fechaActual.setHours(0,0,0,0);
		fechaInformada.setHours(0,0,0,0);
		
		console.log('valoresInformados: '+valoresInformados);
		console.log('fechaActual: '+fechaActual);
		console.log('fechaInformada: '+fechaInformada);
		
		var anyoActual = fechaActual.getFullYear();
		var anyoInformado = fechaInformada.getFullYear();
		
		if(error) {
			alert('Error: Hay ítems marcados sin cantidad.',null,'error');
		}
		else if( $('#fechaCierre').val()=='' ) {
			alert('Error: Se debe indicar la fecha de confirmación.',null,'error')
			.done(function(){
				$('#fechaCierre').focus();
			});
		}
		else if( fechaInformada<fechaActual ) {
		
			var mensaje='Atención: Has informado una fecha anterior a hoy.';
			
			if( anyoInformado<anyoActual ) mensaje+='<br><br>Además, el ejercicio informado es anterior al actual.';
			
			mensaje+='<br><br>¿Es correcto y quieres continuar?';
			
			confirm(mensaje,'advertencia')
			.done(function(){
				enviaFormulario();
			})
			.fail(function(){
				$('#confirmarEntrada').val('');
				$('#fechaCierre').val('');
				$('#fechaCierre').focus();
			});
		} else {
			enviaFormulario();
		}
	
	});
	
});

function enviaFormulario(){

	$('#confirmarEntrada').val(1);
	$('#popupCargando').show();
	$('#formulario').submit();
	
}

</script>

<?php

$mostrarInfo=true;
$producto['Error']=true; //para que no muestre Play

include($rutaPhp.$rutaHtml.'/maqueta/menu-entrada-mercancia-GS1.php');

include($rutaPhp.$rutaHtml.'/maqueta/abajo.php');
?>
