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

//08-02-2021 la construcción unserialize(OPERACIONES)[$_SESSION['accion']] da error 500 en Carreras
$arrayOperaciones=unserialize(OPERACIONES);

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

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

include($rutaPhp.$rutaHtml.'/librerias/funciones-gs1.php');



if($_GET['traza']=='si') {
	echo '<p>pickingpacking: '.$_SESSION['parametrosSGA']['PickingPacking'].'</p>';
	echo '<p>gestionPaletizado: '.$_SESSION['gestionPaletizado'].'</p>';
}

////////////////////////////////
//// para pruebas manuales /////
////////////////////////////////
//$desactivaScannerBluetooth=false;
////////////////////////////////


//SGAOperacionesLog#PXPU#PMO#LISTADOOPERACIONES#1;PXPU;PREC;TL200173 

$peticion='SGAOperacionesLog#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#LISTADOOPERACIONES#'.$_SESSION['almacen'].';'.$_SESSION['operacion']['Empresa'].';'.$_SESSION['accion'].';'.$_SESSION['operacion']['NumOperacion'];
$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);

if($_GET['traza']=='si') {
	echo '<p>Recarga de datos operacion:</p>';
	echo "<p>".$peticion."</p>";
	print_r($resultado);
}
	
if(!$resultado[0]['BloqueoProxium']) {
		
	
	$_SESSION['operacion']=$resultado[0];
	
	$requierePaletizar=( $_SESSION['operacion']['ProcedenciaPicking']=='S' );
	
	$productos=arreglaArrayPXMobileProxiumResult($_SESSION['operacion']['ProductosPrecintables']);
	$paletsPicking=arreglaArrayPXMobileProxiumResult($_SESSION['operacion']['PaletsPicking']);
	
	
	
	
	if($_POST['enviarFormulario']=='1') {
	
		//SGAOperacionesLog#PXPU#PMO#INICIOOPERACION#1;PXPU;TL200173;Regimen;
		//Articulo;Idioma;Precinta;Lote;FechaCaducidad;NumSerie;
		//PaletOrigen;PaletDestino;TipoPrecinta;PrecintaInicial,Observaciones
		
		$peticion='SGAOperacionesLog#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#INICIOOPERACION#'.$_SESSION['almacen'].';'.$_SESSION['operacion']['Empresa'].';'.$_SESSION['operacion']['NumOperacion'];
		$peticion.=';'.$_GET['Regimen'].';'.$_GET['Producto'].';'.$_GET['Idioma'].';'.$_GET['Precinta'].';'.$_GET['Lote'].';'.$_GET['FechaCaducidad'].';'.$_GET['NumSerie'];
		$peticion.=';'.$_POST['paletPicking'].';'.$_POST['paletExpedicion'].';'.$_POST['tipoPrecinta'].';'.$_POST['precintaInicial'].';'.$_POST['identificador'].';'.$_POST['lote'];
		
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
		
		if($_GET['traza']=='si') {
			echo '<p>Llamada inicio:</p>';
			echo "<p>".$peticion."</p>";
			print_r($resultado);
		}
		
		$valores=explode('#',$resultado[0]['Error']);
		
		if($valores[0]=='1') {
			?>
			<script>
				alert('Error: <?php echo $valores[1]; ?>',null,'error');
			</script>
			<?php
		}
		else {
		
			if( $_POST['cajas']==1 && $_POST['EmbalajePrimarioCaja'] ) {
				$valorCantidad = (float)$_POST['cantidadPrecintada'] * (float)$_POST['EmbalajePrimarioCaja'];
				$valorCantidadAnulada = (float)$_POST['cantidadAnulada'] * (float)$_POST['EmbalajePrimarioCaja'];
			}
			else {
				$valorCantidad = $_POST['cantidadPrecintada'];
				$valorCantidadAnulada = $_POST['cantidadAnulada'];
			}
		
			$peticion='SGAOperacionesLog#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#FINOPERACION#'.$_SESSION['almacen'].';'.$_SESSION['operacion']['Empresa'].';'.$_SESSION['operacion']['NumOperacion'];
			$peticion.=';'.$_GET['Producto'].';'.$_GET['Idioma'];
			$peticion.=';'.$_GET['PrecintaInicial'].';'.$_POST['precintaFinal'].';'.$valorCantidad.';'.$valorCantidadAnulada;
			
			$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
			if($_GET['traza']=='si') {
				echo '<p>Llamada fin:</p>';
				echo "<p>".$peticion."</p>";
				print_r($resultado);
			}
			
			$valores=explode('#',$resultado[0]['Error']);
	
			if($valores[0]=='1') {
				?>
				<script>
					alert('Error: <?php echo $valores[1]; ?>',null,'error');
				</script>
				<?php
			}
			else {
			
				//Volvemos a recargar los datos para comprobar si quedan productos
				$peticion='SGAOperacionesLog#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#LISTADOOPERACIONES#'.$_SESSION['almacen'].';'.$_SESSION['operacion']['Empresa'].';'.$_SESSION['accion'].';'.$_SESSION['operacion']['NumOperacion'];
				$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
				
				if($_GET['traza']=='si') {
					echo '<p>Recarga de datos operacion:</p>';
					echo "<p>".$peticion."</p>";
					print_r($resultado);
				}
				
				$_SESSION['operacion']=$resultado[0];
				
				$productos=arreglaArrayPXMobileProxiumResult($_SESSION['operacion']['ProductosPrecintables']);
			
				if(is_array($productos) && count($productos)==0) {
					?>
					 <script>
						alert('La Operación ha sido completada y no quedan productos.',null,'ok')
						.done(function(){
							$('#popupCargando').show();
							window.location='operaciones-logisticas.php';
						});
					</script>
					<?php
				}
				else {
					?>
					 <script>
						$('#popupCargando').show();
						window.location='operacion-logistica.php';
					</script>
					<?php
				}
			
			}
			
		}
	
	}
	
	?>
	
	<h2>Orden de <?php echo $arrayOperaciones[$_SESSION['accion']]; ?> Nº <?php echo $_SESSION['operacion']['NumOperacion']; ?></h2>
	<table class="tablaFormateada" style="margin:0 auto">
	  <tr>
		<?php if(count($_SESSION['empresas'])>1) { ?><th>Emp.</th><?php } ?>
		<th>Nº Orden</th>
			<th>Fecha</th>
			<th>Cliente</th>
			<th>Estado</th>
		</tr>
		<tr>
			<?php if(count($_SESSION['empresas'])>1) { ?><td valign="top"><?php echo $_SESSION['operacion']['Empresa']; ?></td><?php } ?>
			<td valign="middle"><?php echo $_SESSION['operacion']['NumOperacion']; ?></td>
			<td valign="middle"><?php echo fechaNacional($_SESSION['operacion']['Fecha']); ?></td>
			<td valign="middle"><?php echo $_SESSION['operacion']['ClienteNombre']; ?></td>
			<td valign="middle"><?php echo $_SESSION['operacion']['Estado']; ?></td>
		</tr>
	</table>
	<br />
	<table class="tablaFormateada">
	  <tr>
	    <th>Código</th>
				<th>Descripción</th>
				<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
				<?php if($comportamiento['Activo']=='S' && $comportamiento['NombreSQL']!='NumSerie') { ?><th><?php echo $comportamiento['Nombre']; ?></th>
				<?php } ?>
				<?php } ?>
				<?php if($requierePaletizar) { ?><th>Palet Picking</th><?php } ?>
                <th>Cant.</th>
				<?php if($_SESSION['verEnCajas']=='S') { ?><th>Cajas</th><?php } ?>
                <?php if($_SESSION['accion']=='ETIQUETADOMUL') { ?><th>Idioma final</th><?php } ?>
				<th><?php echo $arrayOperaciones[$_SESSION['accion']]; ?></th>
				<th>Anulado</th>
				<th>Pendiente</th>
                <?php if($_SESSION['verEnCajas']=='S') { ?><th>Cajas</th><?php } ?>
			</tr>
			 <?php
			 foreach($productos as $producto) {
				 
				 $coincidencia=true;
				 
				 if($producto['Producto']!=$_GET['Producto']) $coincidencia=false;
				 foreach($_SESSION['comportamientos'] as $comportamiento) if($producto[$comportamiento['NombreSQL']]!=$_GET[$comportamiento['NombreSQL']]) $coincidencia=false;
				 
				 if($coincidencia) {
				 
				 	$verCajas=($_SESSION['verEnCajas']=='S' && $producto['ProductoEmbalajePrimarioCaja']);
					
					if($verCajas) {
						$formatoCaja=true;
						$formatoUnidades=false;
					}
					else {
						$formatoCaja=false;
						$formatoUnidades=true;
					}
					
					if( !$formatoUnidades && $verCajas ) {
						$etiqueta="Cajas";
						$etiquetaInversa="Unidades";
						$cajas=true;
					}
					else {
						$etiqueta="Unidades";
						$etiquetaInversa="Cajas";
						$cajas=false;
					}
					
					//15-02-2022 Control decimales
					if($producto['MaximoDecimalesPermitidos']=='') {
						$decimalesPermitir=true;
					}
					else if($producto['MaximoDecimalesPermitidos']=='0') {
						$decimalesPermitir=false;
					}
					else {
						$decimalesPermitir=true;
						$decimalesPermitirMaximo=$producto['MaximoDecimalesPermitidos'];
					}
					
					
					 ?>
	  <tr Producto="<?php echo $producto['Producto']; ?>" <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?><?php echo $comportamiento['NombreSQL']; ?>="<?php echo $producto[$comportamiento['NombreSQL']]; ?>" <?php } ?> Palets="<?php echo $producto['Contenedor']; ?>">
					   <td valign="top"><?php echo $producto['Producto']; ?></td>
						<td valign="top"><?php echo $producto['ProductoDescripcion']; ?></td>
						<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
							<?php if($comportamiento['Activo']=='S' && $comportamiento['NombreSQL']!='NumSerie') { ?>
								<td valign="top">
								<?php echo $producto[$comportamiento['NombreSQL']]; ?>
								</td>
							<?php } ?>
						<?php } ?>
						<?php if($requierePaletizar) { ?>
						<td align="center" valign="top">
						<?php
						$contenedores=explode(',',$producto['Contenedor']);
						$cantidadesContenedores=explode(',',$producto['ContenedorCant']);
						$cajasContenedores=explode(',',$producto['ContenedorCajas']);
						
						foreach($contenedores as $clave=>$contenedor) {
							$cadena='<br><span style="font-size:0.75em">(';
							$cadena.=$cantidadesContenedores[$clave].' uns';
							if($_SESSION['verEnCajas']=='S') $cadena.=' / '.formateaNumeroDecimal($cajasContenedores[$clave]).' cajas';
							$cadena.=')';
							echo $contenedor.$cadena.'</span><br>';
						}
						?>						</td>
<?php } ?>
						<td align="right" valign="top"><?php echo $producto['Cantidad']; ?></td>
						<?php if($_SESSION['verEnCajas']=='S') { ?><td align="right" valign="top"><?php echo formateaNumeroDecimal($producto['CantidadCajas']); ?></td><?php } ?>
                        <?php if($_SESSION['accion']=='ETIQUETADOMUL') { ?><td valign="top"><?php echo $producto['IdiomaObtener']; ?></td><?php } ?>
						<td align="right" valign="top"><?php echo $producto['CantidadPreparada']; ?></td>
						<td align="right" valign="top"><?php echo $producto['CantidadAnulada']; ?></td>
						<td align="right" valign="top"><?php echo $producto['CantidadPendiente']; ?></td>
                        <?php if($_SESSION['verEnCajas']=='S') { ?><td align="right" valign="top"><?php echo formateaNumeroDecimal($producto['CantidadPendienteCajas']); ?></td><?php } ?>
					</tr>
					<?php
					
					break;
				}
			}
			?>
	</table>
	
	
	<form id="formulario" name="formulario" method="post" action=""  style="margin-top:40px">
		
		<?php if($requierePaletizar) { ?>
		
		<p class="sinMargen">Palet origen:
		<div class="campoOrdenPreparacionBloque" style="margin:0 auto">
			<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoPaletPicking" /><input id="paletPicking" name="paletPicking" type="text" class="campo campoOrdenPreparacion" style="left:5px;" value="<?php echo $_POST['paletPicking']; ?>" autocomplete="off"/>
			<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarPaletPicking" class="iconoBorrar" style="position:absolute;right:5px;cursor:pointer;"/>
		</div>
		</p>
		
		<p class="sinMargen">Palet destino:
		<div class="campoOrdenPreparacionBloque" style="margin:0 auto">
			<img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoPaletExpedicion" /><input id="paletExpedicion" name="paletExpedicion" type="text" class="campo campoOrdenPreparacion" style="left:5px;" value="<?php echo $_POST['paletExpedicion']; ?>" autocomplete="off"/>
			<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarPaletExpedicion" class="iconoBorrar" style="position:absolute;right:5px;cursor:pointer;"/>
		</div>
		</p>
		
		<?php } ?>

		<?php
		if($verCajas && $_POST['cajas']=='0') {
			$cantidadMostrar=$_POST['cantidadPrecintada']/$producto['ProductoEmbalajePrimarioCaja'];
			$cantidadAnuladaMostrar=$_POST['cantidadAnulada']/$producto['ProductoEmbalajePrimarioCaja'];
		}
		else {
			$cantidadMostrar=$_POST['cantidadPrecintada'];
			$cantidadAnuladaMostrar=$_POST['cantidadAnulada'];
		}
		?>

		<p class="sinMargen">Cantidad: <?php if($verCajas) { ?>(<span class="etiqueta"><?php echo $etiqueta; ?></span>)<?php } ?>
		<div class="campoOrdenPreparacionBloque" style="margin:0 auto">
			<?php if($verCajas) { ?><img src="<?php echo DIR_IMAGENES; ?>/<?php echo $etiquetaInversa; ?>.png" alt="Informar en <?php echo $etiqueta; ?>" class="iconoCajasUnidades" id="iconoUnidades" /><?php } ?><input id="cantidadPrecintada" name="cantidadPrecintada" type="text" class="campo cantidad campoOrdenPreparacion calculadoraAutomatica" style="left:5px;" value="<?php echo $cantidadMostrar; ?>" autocomplete="off"/>
			<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarCantidadPrecintada" class="iconoBorrar" style="position:absolute;right:5px;cursor:pointer;"/>
		</div>
		</p>
		
        <input type="hidden" name="cajas" id="cajas" value="<?php if($cajas) { ?>1<?php } else { ?>0<?php } ?>"/>
        <input type="hidden" name="EmbalajePrimarioCaja" id="EmbalajePrimarioCaja" value="<?php echo $producto['ProductoEmbalajePrimarioCaja']; ?>" />
        
        <p class="sinMargen">Cantidad anulada: <?php if($verCajas) { ?>(<span class="etiqueta"><?php echo $etiqueta; ?></span>)<?php } ?>
		<div class="campoOrdenPreparacionBloque" style="margin:0 auto">
			<?php if($verCajas) { ?><img src="<?php echo DIR_IMAGENES; ?>/<?php echo $etiquetaInversa; ?>.png" alt="Informar en <?php echo $etiqueta; ?>" class="iconoCajasUnidades" id="iconoUnidades" /><?php } ?><input id="cantidadAnulada" name="cantidadAnulada" type="text" class="campo cantidad campoOrdenPreparacion calculadoraAutomatica" style="left:5px;" value="<?php echo $cantidadAnuladaMostrar; ?>" autocomplete="off"/>
			<img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarCantidadPrecintada" class="iconoBorrar" style="position:absolute;right:5px;cursor:pointer;"/>
		</div>
		</p>
		
        <input type="hidden" name="enviarFormulario" id="enviarFormulario" value="0"/>
		
	  <p><input type="button" name="botonAceptar" id="botonAceptar" value="Confirmar <?php echo $arrayOperaciones[$_SESSION['accion']]; ?>" class="boton"/></p>
		<p><input type="button" name="botonCancelar" id="botonCancelar" value="Cancelar" class="boton reducido"/></p>
	
	</form>
	
	
	
	<script>
	
	<?php if($requierePaletizar) { ?>
	
	var paletsPicking=new Array();
	<?php foreach( $paletsPicking as $palet ) { ?>
	paletsPicking.push('<?php echo $palet['Palet']; ?>');
	<?php } ?>
	
	<?php } ?>
	
	var secuenciaCamposInicio=new Array();
	<?php if($requierePaletizar) { ?>
	secuenciaCamposInicio.push('paletPicking');
	secuenciaCamposInicio.push('paletExpedicion');
	<?php } ?>
	<?php if($pedirLote) { ?>
	secuenciaCamposInicio.push('lote');
	<?php } ?>
	
	function reiniciaCamposInicio() {
	
		for (i=0;i<secuenciaCamposInicio.length;i++) {
			$('#'+secuenciaCamposInicio[i]).val('');
		}
	
	}
	
	function focoSiguienteInicio(campoActual) {
		
		var foco;
		var encontradoActual=false;
			
		if( campoActual=='' && $('#'+secuenciaCamposInicio[0]).val()=='' ) foco=secuenciaCamposInicio[0];
		else {
			for (i=0;i<secuenciaCamposInicio.length;i++) {
				if(secuenciaCamposInicio[i]==campoActual || campoActual=='') encontradoActual=true;
				if( encontradoActual && !$('#'+secuenciaCamposInicio[i+1]).prop('readonly') && $('#'+secuenciaCamposInicio[i+1]).val()=='' ) {
					foco=secuenciaCamposInicio[i+1];
					break;
				}
			}
		}
				
		if(foco) {
			
			$('#'+foco).focus();
				
			return foco;
		}
	
	}
	
	function validacion() {
	
		var resultado=true;
		
		$('#cantidadPrecintada').removeClass('error');
		$('#cantidadAnulada').removeClass('error');
		
		var controlDecimalesCantidadPrecintada = controlDecimales( $('#cantidadPrecintada') , <?php if($decimalesPermitir) { ?>true<?php } else { ?>false<?php } ?> , <?php if($decimalesPermitirMaximo>0) echo $decimalesPermitirMaximo; else { ?>null<?php } ?> );
		var controlDecimalesCantidadAnulada = controlDecimales( $('#cantidadAnulada') , <?php if($decimalesPermitir) { ?>true<?php } else { ?>false<?php } ?> , <?php if($decimalesPermitirMaximo>0) echo $decimalesPermitirMaximo; else { ?>null<?php } ?> );
		
		if( !$('#cantidadPrecintada').val() ) {
			alert('Para la validación, debes indicar el número de unidades de producto.',$('#cantidadPrecintada'),'error');
			resultado=false;
		}
		else if( !controlDecimalesCantidadPrecintada ) {
			$('#cantidadPrecintada').addClass('error');
			alert('Error en el número de decimales indicados en la cantidad precintada de este producto.',$('#cantidadPrecintada'),'error');
			resultado=false;
		}
		else if( !controlDecimalesCantidadAnulada ) {
			$('#cantidadAnulada').addClass('error');
			alert('Error en el número de decimales indicados en la cantidad anulada de este producto.',$('#cantidadAnulada'),'error');
			resultado=false;
		}
		<?php if($requierePaletizar) { ?>
		else if( !$('#paletPicking').val() ) {
			alert('Debes indicar el palet de Picking origen.',$('#paletPicking'),'error');
			resultado=false;
		}
		else if( $('#paletPicking').val() && !paletsPicking.includes( $('#paletPicking').val() ) ) {
			alert('El palet indicado no corresponde al Picking hecho para este artículo.',$('#paletPicking'),'error');
			resultado=false;
		}
		else if( !$('#paletExpedicion').val() ) {
			alert('Debes indicar el palet de expedición destino.',$('#paletExpedicion'),'error');
			resultado=false;
		}
		<?php } ?>
		
		return resultado;
	
	}
	
	<?php if(!$desactivaScannerBluetooth) { ?>
	
	var lecturaScanner=new Array();
	var cadenaLectura='';
	var esLecturaGS1Correcta=false;
	
	function reiniciaScanner() {
		lecturaScanner=new Array();
		cadenaLectura='';
		esLecturaGS1Correcta=false;
	}
	
	<?php } ?>
	
	function cambiaUnidades() {
	
		if( $('#cajas').val()==1 ) {
			$('.iconoCajasUnidades').attr('src','<?php echo DIR_IMAGENES; ?>/Cajas.png');
			$('#cajas').val(0);
			$('.etiqueta').html('Unidades');
					
			var cantidad = parseFloat( $('#cantidadPrecintada').val() ) * parseFloat( $('#EmbalajePrimarioCaja').val() );
			if(cantidad>0) $('#cantidadPrecintada').val( cantidad );
			
			var cantidadAnulada = parseFloat( $('#cantidadAnulada').val() ) * parseFloat( $('#EmbalajePrimarioCaja').val() );
			if(cantidadAnulada>0) $('#cantidadAnulada').val( cantidadAnulada );
		}
		else {
			$('.iconoCajasUnidades').attr('src','<?php echo DIR_IMAGENES; ?>/Unidades.png');
			$('#cajas').val(1);
			$('.etiqueta').html('Cajas');
					
			var flotante = parseFloat( $('#cantidadPrecintada').val() / $('#EmbalajePrimarioCaja').val() );
			var cantidad = Math.round(flotante*100)/100;
			if(cantidad>0) $('#cantidadPrecintada').val( cantidad );
			
			var flotanteAnulada = parseFloat( $('#cantidadAnulada').val() / $('#EmbalajePrimarioCaja').val() );
			var cantidadAnulada = Math.round(flotanteAnulada*100)/100;
			if(cantidadAnulada>0) $('#cantidadAnulada').val( cantidadAnulada );
		}
	
	}
	
	$(document).ready(function() {
	
		$('.iconoCajasUnidades').on("click",function(e){
			cambiaUnidades();
		});
	
		<?php if(!$desactivaScannerBluetooth) { ?>
	
		$(".campoGS1").on('keydown',function(e){
	
			e.preventDefault();
			var resultado='';
			
			if(e.which==13 || e.key=='Enter') {
				$(this).trigger('change');
			}
			else lecturaScanner.push( [ String.fromCharCode(e.which) , e.which , e.key ] );
		}); 
		
		<?php } ?>
	
		$('.campoGS1').on('change',function(){
				
			//Método que detecta que se ha hecho una nueva lectura.
			//tenemos que comprobar si procede del scanner o procede del teclado emergente
			
			var lecturaFinal='';
			var resultado='';
			
			<?php if($desactivaScannerBluetooth) { ?>
			
			//console.log('Escanner desactivado o lectura especial');
			lecturaFinal=transformaLecturaManualAlFormatoScanner( $(this).val() );
			resultado=lecturaFinal;
			
			<?php } else { ?>
			
			if(lecturaScanner.length > 0) {
			
				//console.log('Lectura detectada desde scanner.');
				
				lecturaFinal=limpiaLecturaDesdeScanner( lecturaScanner );
				resultado=pintaLecturaHumana( lecturaFinal );
				
				//console.log('lectura final: '+lecturaFinal + ' > resultado: ' + resultado);
			
				if(resultado=='error')  {
				
					//console.log('hay error GS1 en la siguiente lectura: '+lecturaScanner);
					
					var mostrarLectura=limpiaLecturaDesdeScannerNoGS1(lecturaScanner);
					$(this).val( mostrarLectura );
						
				}
				else {
				
					console.log('RESULTADO OK GS1');
				
					if( $(this).attr('id')=='lote') resultado=extraeValorIdentificador(resultado,'10');
				
					$(this).val( resultado );
	
				}
			}
			else {
				//console.log('Lectura manual desde teclado emergente detectada.');
				lecturaFinal=transformaLecturaManualAlFormatoScanner( $(this).val() );
				resultado=lecturaFinal;
			}
			
			<?php } ?>
			
			
			reiniciaScanner();
			
		});
	
		
	
		$('#botonAceptar').on("click",function(e){
		
			if( validacion() ) {
				$('#popupCargando').show();
				$('#enviarFormulario').val(1);
				$('#formulario').submit();
			}
			
		});
		
		$('#botonCancelar').on('click',function(){
		
			$('#popupCargando').show();
			window.location='operacion-logistica.php';
			
		});
		
	
		
		
		//Metodos genericos teclado y borrar campos
		
		$(document).on('click','.iconoTeclado',function(){
			
			var campo=$(this).siblings('input');
			
			$('#teclado').show();
			$('#valor').val( campo.val() );
			$('#valorOculto').val( campo.val() );
			$('#enter').attr('campoValor', campo.attr('id') );
			$('#enter').attr('forzarEnter','si');
			
		});
		
		$(document).on('click','.tecladoAutomatico',function(){
			
			$('#teclado').show();
			$('#valor').val( $(this).val() );
			$('#valorOculto').val( $(this).val() );
			$('#enter').attr('campoValor', $(this).attr('id') );
			$('#enter').attr('forzarEnter','si');
			
		});
		

		
		//Metodos genericos teclado y borrar campos
		
		$(document).on('click','.iconoTeclado',function(){
			
			var campo=$(this).siblings('input');
			
			$('#teclado').show();
			$('#valor').val( campo.val() );
			$('#valorOculto').val( campo.val() );
			$('#enter').attr('campoValor', campo.attr('id') );
			$('#enter').attr('forzarEnter','si');
			
		});
		
		$(document).on('click','.calculadoraAutomatica',function(){
			
			$('#calculadora').show();
			$('#valorCalculadora').val( $(this).val() );
			$('#enterCalculadora').attr('campoValor',$(this).attr('id'));
			$('#enterCalculadora').attr('forzarEnter','si');
			
			<?php if(!$decimalesPermitir) { ?>
			$('#botonDecimal').hide();
			<?php } ?>
			
		});
		
		$(document).on('click','.iconoBorrar',function(){
			
			var campo=$(this).siblings('input');
			campo.val('');
			campo.focus();
			
		});
		
		$('.campoOrdenPreparacion').on('change',function(){
			
			var campoActual=$(this).attr('id');
			
			console.log('change en campo: '+campoActual+' / valor: '+$(this).val());
			
			<?php if(!$desactivaScannerBluetooth) { ?>
			/*
			if ( campoActual!='precintaInicial' && campoActual!='tipoPrecinta' && lecturaScanner.length>0 ) {
			
				
				console.log('array de lectura antes change: ');
				console.log(lecturaScanner);
			
				var mostrarLectura=limpiaLecturaDesdeScannerNoPrecinta(lecturaScanner);
				$(this).val(mostrarLectura);
				reiniciaScanner();
				
				console.log('array de lectura tras change: ');
				console.log(lecturaScanner);
				console.log('cadena de lectura tras change: '+cadenaLectura);
				
				
				
			}
			*/
			<?php } ?>
			
			focoSiguienteInicio(campoActual);
			
		});
		

		
		focoSiguienteInicio('')
	
	});
	
	</script>
	<?php
	
	//echo "<p>Hay trabajadores: ".$hayTrabajadores."</p>";
	//echo "<p>Hay fichajes iniciados: ".$fichajesIniciados."</p>";
	
}
else {
	?>
    <p class="error"><img src="<?php echo DIR_IMAGENES; ?>/iconos/error.png" width="50" height="50" /><br /><?php echo $resultado[0]['BloqueoProxium']; ?></p>
    <p><input type="button" name="botonVolver" id="botonVolver" value="Volver" class="boton reducido"/></p>
    <script>
	
	$(document).ready(function() {
	
		$('#botonVolver').on('click',function(){
			
			$('#popupCargando').show();
			window.location='operacion-logistica.php';
				
		});
		
	});
	
	</script>
    <?php
}

//include($rutaPhp.$rutaHtml.'/maqueta/menu-operacion-logistica.php');

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