<?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/calculadora.php');


$pedirUbicacion=$_SESSION['seleccionUbicacionEntrada'];

//15-11-2023
//borramos la carga seleccionada en el filtro, por si no aplicara (solo en recepcion compras, no en recepcion mercancia)
//más abajo cuando se llama a entrada-mercancia-gs1-proceso.php es cuando -condicionado a parametros- se envía o no para que se grabe
unset($_SESSION['entrada']['cargaSeleccionada']);

//Para el script entrada-mercancia-gs1-proceso.php que está condicionado y es mixto para ambos procesos
$_SESSION['entradaEsRecepcionCompra']=true;
$_SESSION['entradaEsDevolucion']=false;


$pedirUbicacion=$_SESSION['seleccionUbicacionEntrada'];

//23-08-2023 mostrar carga y filtros
$mostrarCargaCamion=($_SESSION['parametrosSGA']['ControlCamionesRecepcion']=='S' || $_SESSION['parametrosSGA']['ControlCamionesRecepcion']=='P');

//26-03-2025
$asociacionEANaProductos=($_SESSION['parametrosSGA']['AsociacionEANaProductos']=='S');

//http://192.168.69.1/sga-proxium/recepcion-compra.php?proveedorCodigo=1&proveedorNombre=PROVEEDOR+1&fechaRecepcion=23/03/2023&numAlbaran=123456&fechaAlbaran=23/03/2023

if($_GET['proveedorCodigo']) $_SESSION['recepcionCompra']['proveedorCodigo']=$_GET['proveedorCodigo'];
if($_GET['fechaRecepcion']) $_SESSION['recepcionCompra']['fechaRecepcion']=$_GET['fechaRecepcion'];
if($_GET['numAlbaran']) $_SESSION['recepcionCompra']['numAlbaran']=$_GET['numAlbaran'];
if($_GET['fechaAlbaran']) $_SESSION['recepcionCompra']['fechaAlbaran']=$_GET['fechaAlbaran'];


//REINICIO DATOS DE PANTALLA INTERIOR 
unset( $_SESSION['producto'] );
unset( $_SESSION['lecturasGS1'] );
unset( $_SESSION['lecturasTemporalesGS1'] );
unset( $_SESSION['lecturasTotales'] );

unset( $_SESSION['entradaPaletActual'] );
unset( $_SESSION['entradaPaletActualTipo'] );
unset( $_SESSION['entradaPaletActualEsChep'] );
unset( $_SESSION['entradaPaletActualUbicacion'] );

unset( $_SESSION['entradaUbicacionActual'] );

unset( $_SESSION['ubicacionPaletEntradaAutomatizar'] );

//echo '<p>Datos:</p>';
//print_r($_SESSION['recepcionCompra']);

//echo '<p>confirmarCierreRecepcion: '.$_POST['confirmarCierreRecepcion'].'</p>';


//Creamos un indice para que, al menos, durante la session actual el usuario pueda tener varios crossdockings en proceso informados y no los pierda entrando y saliendo
$indiceCrossdocking=$_SESSION['recepcionCompra']['proveedorCodigo'].'@'.$_SESSION['recepcionCompra']['numAlbaran'];


$continuar=true;

//Crossdocking
$crossdocking_agrupado='';
$crossdocking_agrupado_concepto='';
$crossdocking_agrupado_actualizarCantidades='';
$crossdocking_agrupado_bultos='';
			
if( isset($_POST['crossdocking_agrupado_pedidoVenta']) ) {

	$crossdocking_agrupado_pedidoVenta=$_POST['crossdocking_agrupado_pedidoVenta'];
	$crossdocking_agrupado_actualizarCantidades=$_POST['crossdocking_agrupado_actualizarCantidades'];
	$crossdocking_agrupado=$_POST['crossdocking_agrupado'];

	if( $crossdocking_agrupado=='S' ) {

		$crossdocking_agrupado_concepto=$_POST['crossdocking_agrupado_concepto'];
		$crossdocking_agrupado_bultos=$_POST['crossdocking_agrupado_bultos'];
		$crossdocking_agrupado_ubicacion=$_POST['crossdocking_agrupado_ubicacion'];
		
	}

}

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

	$peticion ='WSRecepcionComprasTablet#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#RECEPCIONCOMPLETACROSSDOCKING#'.$_SESSION['almacen'].';'.$_SESSION['recepcionCompra']['proveedorCodigo'].';'.$_SESSION['recepcionCompra']['numAlbaran'];
	
	$peticion.=';'.$crossdocking_agrupado;
	$peticion.=';'.$crossdocking_agrupado_concepto;
	$peticion.=';'.$crossdocking_agrupado_actualizarCantidades;
	$peticion.=';'.$crossdocking_agrupado_bultos;
	$peticion.=';'.$crossdocking_agrupado_pedidoVenta;
	$peticion.=';'.$crossdocking_agrupado_ubicacion;
	
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);

	if($_GET['traza']=='si') {
		echo '<p>'.$peticion.'</p>';
		print_r($resultado);
	}
	
	if($resultado[0]['Error']) {
	
		$valores=explode('#',$resultado[0]['Error']);
		
		if($valores[0]=='1') {
			?>
			<script>
				alert('ERROR: <?php echo convierteSaltosBr($valores[1]); ?>',null,'error');
			</script>
			<?php
		}
		
	}

}
else if( $_POST['confirmarCierreRecepcion']=='1' ) {

	//print_r($_POST);
	//echo '<hr>';

	



	//Llama al mismo WS con el proceso “CIERRERECEPCION”
	//Solo lleva 3 parámetros: Almacén;Proveedor;NumAlbaranProveedor
	
	$numAlbaranCoincidente=$_POST['confirmarCierreRecepcionAlbaranCoincidente'];

	$peticion='WSRecepcionComprasTablet#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#CIERRERECEPCION#'.$_SESSION['almacen'].';'.$_SESSION['recepcionCompra']['proveedorCodigo'].';'.$_SESSION['recepcionCompra']['numAlbaran'].';'.$numAlbaranCoincidente;
	
	//22-11-2023 control de carga obligartorio, el campo del post solo se carga si, despues, se cumplen las condiciones $controlCargaObligatorio
	if($_POST['controlCargaNumCarga']) $peticion.=';'.$_POST['controlCargaNumCarga'];
	else $peticion.=';';
	
	//07-08-2025 Crossdocking
	if($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']) {
		$peticion.=';'.$crossdocking_agrupado;
		$peticion.=';'.$crossdocking_agrupado_concepto;
		$peticion.=';'.$crossdocking_agrupado_actualizarCantidades;
		$peticion.=';'.$crossdocking_agrupado_bultos;
	}
	else {
		$peticion.=';;;;';
	}
	
	
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	
	if($_GET['traza']=='si') {
		echo '<p>'.$peticion.'</p>';
		print_r($resultado);
	}
	
	
	if($resultado[0]['Error']) {
	
		$valores=explode('#',$resultado[0]['Error']);
		
		if($valores[0]=='1') {
			?>
			<script>
				alert('ERROR: <?php echo convierteSaltosBr($valores[1]); ?>',null,'error');
			</script>
			<?php
		}
		else { 
		
			$continuar=false;
			
			$mensajeMostrar=convierteSaltosBr($valores[1]);
			
			$imprimirCrossDocking=($crossdocking_agrupado=='S' && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']);
			
			if($imprimirCrossDocking) {
			
				$mensajeMostrar.='<br><br>¿Deseas imprimir ahora las etiquetas de los palets?';
				
				?>
				<script>
					confirm('<?php echo $mensajeMostrar; ?>','pregunta')
					.done(function(){
					
						$('#popupCargando').show();
						window.location="<?php echo $rutaHtml; ?>/etiquetas-crear.php?procedencia=ETIQUETACROSSDOCKING";
						
					})
					.fail(function(){
						
						$('#popupCargando').show();
						window.location='recepciones-compras.php';
						
					});
				</script>
				<?php
			
			}
			else {
				
				?>
				<script>
					alert('<?php echo $mensajeMostrar; ?>',null,'ok')
					.done(function(){
					
						$('#popupCargando').show();
						window.location='recepciones-compras.php';
						
					});
				</script>
				<?php
				
			}
			
		}
		
	}
	else {
	
		//10-02-2024 BAYPORT TAREA INTERNA 64116
		
		$cadenaResultado=$resultado[0]['MensajeRespuesta'];
		
		$cadenaResultado.='<br><br><strong>REPOSICIÓN DE PRODUCTOS</strong><br><br>';
		$cadenaResultado.='<table class="tablaFormateada" style="font-size:0.8em">';
		$cadenaResultado.='<tr><th>Producto</th><th>Descripción</th><th>Ctdad. entrada</th><th>Stock máximo</th></tr>';
		foreach($resultado as $item) {
			$cadenaResultado.='<tr><td>'.$item['Producto'].'</td><td>'.$item['Descripcion'].'</td><td>'.$item['Cantidadentrada'].'</td><td>'.$item['StockmaximoEASY'].'</td></tr>';
		}
		$cadenaResultado.='</table>';
		
		//echo '<p>cadenaResultado:</p>';
		//echo $cadenaResultado;
		
		
		// 09-04-2024 TICKET 25066007
		// Se sustituye el resultado final del alert, por un div específico con scroll, montado de la misma forma, ya que el listado de productos devueltos puede ser muy largo y el alert es fijo sin scroll
		?>
        
        <div id="popupReposicion" class="popup"></div>
		<div id="popupReposicionContenido" class="popupContenidoScroll" style="font-size:1.4em">
        <img src="<?php echo DIR_IMAGENES; ?>/iconos/ok.png" width="60" height="60" style="margin-bottom:10px"><br>
        <?php echo convierteSaltosBr($cadenaResultado); ?>
        <br />
        <input id="alertOkReposicion" type="button" value="Cerrar" class="boton"/>
        <p>
        </div>
        
        <script>
			/*
			alert('<?php echo convierteSaltosBr($cadenaResultado); ?>',null,'ok')
			.done(function(){
				$('#popupCargando').show();
				window.location='recepciones-compras.php';
			});
			*/
			$(document).ready(function() {
				$('#alertOkReposicion').on('click',function(){
					$('#popupCargando').show();
					window.location='recepciones-compras.php';
				});
			});
		</script>
		<?php
		
	}

}

if($continuar) {

	//Recargamos los datos, como no hay filtros, recorreremos de nuevo el listado para sacarlos, por si se hubieran actualizado y hubiera más albaranes que han comenzado despues
	$peticion='WSRecepcionComprasTablet#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#PENDIENTEPROVEEDOR#'.$_SESSION['almacen'];
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	//echo '<p>'.$peticion.'</p>';
	
	if( !$resultado[0]['Error'] && count($resultado[0])>0 ) {
	
		foreach($resultado as $proveedor) {
		
			if($proveedor['ProveedorCodigo']==$_SESSION['recepcionCompra']['proveedorCodigo']) {
			
			

				
				//if( $_SESSION['parametrosSGA']['Recepcionconcrossdocking']=='S' && $proveedor['Recepcionencrossdocking']!='' && $proveedor['Recepcionencrossdocking']!='N' ) $recepcionConCrossdocking=$proveedor['Recepcionencrossdocking'];
				if( $_SESSION['parametrosSGA']['Recepcionconcrossdocking']=='S' ) {
					if(!$proveedor['Recepcionencrossdocking']) $proveedor['Recepcionencrossdocking']='N';
					$recepcionConCrossdocking=$proveedor['Recepcionencrossdocking'];
				}
				else $recepcionConCrossdocking='';
				
				

				
				
				if($_GET['traza']=='si') {
					print_r($proveedor);
					echo '<p>Codigo proveedor: '.$_SESSION['recepcionCompra']['proveedorCodigo'].'</p>';
					echo '<p>ControlFechaRecepcion: '.$_SESSION['parametrosSGA']['ControlFechaRecepcion'].'</p>';
					echo '<p>recepcionConCrossdocking: '.$recepcionConCrossdocking.'</p>';
					echo '<hr>';
				}
			
		
				$_SESSION['recepcionCompra']['proveedorNombre']=$proveedor['ProveedorNombre'];
				
				$albaranes=arreglaArrayPXMobileProxiumResult($proveedor['RecepcionesEnCurso']);
				
				//15-11-2023 Control de cargas obligatorio. TICKET 23055065 Elite Bags
				$controlCargaProveedor=($proveedor['ProveedorControlCarga']=='S');
				
				foreach($albaranes as $item) {
				
					if($item['AlbaranProveedor']==$_SESSION['recepcionCompra']['numAlbaran']) $albaran=$item;
				
				}
				
				//Precargamos datos del crossdocking si los hubiera
				if($recepcionConCrossdocking) {
				
					//echo '<p>Precargamos datos del crossdocking si los hubiera.</p>';
					//print_r($proveedor);
					//echo '<p>'.$proveedor['Conceptoagrupadorcrossdocking'].'</p>';;
					//print_r($albaran);
					
					if(!isset($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta'])) {
						$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']=$albaran['PedidoVenta'];
						$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']=$albaran['Recepcionencrossdocking'];
						$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades']=$albaran['ActualizarCantidades'];
						$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_bultos']=$albaran['Bultos'];
					}
					else {
						if(!$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']) {
							$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']='N';
							$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades']='N';
							$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_bultos']='';
						}
					}
					
					//print_r($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]);
					
				}
				
				break;
				
			}
			
		}
		
		//15-11-2023 Control de cargas obligatorio. TICKET 23055065 Elite Bags
		foreach($_SESSION['almacenes'] as $almacen) if($almacen['Codigo']==$_SESSION['almacen']) $controlCargaAlmacen=($almacen['ControlCargas']=='S');
		
		$controlCargaObligatorio=($controlCargaAlmacen && $controlCargaProveedor);
		
		if($_GET['traza']=='si') {
			echo '<p>Almacén control carga: '.$controlCargaAlmacen.'</p>';
			echo '<p>Proveedor control carga: '.$controlCargaProveedor.'</p>';
			echo '<p>Obligatoriedad control carga: '.$controlCargaObligatorio.'</p>';
		}
		
		
		
	
		?>
		
		<div id="popupModoLecturaEntrada" class="popup" style="display:none;">
			<div class="popupContenido" id="popupModoLecturaEntradaContenido">
			  <h2 style="margin:50px 0 30px 0">Selecciona el modo de selección de artículos:</h2>
			  <input type="hidden" name="gestionaIninicio" id="gestionaInicio" value="" />
			  <table style="margin:0 auto;font-size:1.5em">
					<tr><td align="left"><label><input id="modoLecturaP" name="modoLectura" type="radio" value="L" class="checkGrande" <?php if($_SESSION['modoslecturaRecepcionCompra'][ $_SESSION['recepcionCompra']['numAlbaran'] ]=='L') { ?>checked<?php } ?>/> <span style="vertical-align:20%">A partir del listado</span></label></td><td><img src="<?php echo DIR_IMAGENES; ?>/entrada-modo-L.png" class="entradaModoIconoSelector" /></td></tr>
					<tr><td align="left"><label><input id="modoLecturaC" name="modoLectura" type="radio" value="C" class="checkGrande" <?php if($_SESSION['modoslecturaRecepcionCompra'][ $_SESSION['recepcionCompra']['numAlbaran'] ]=='C') { ?>checked<?php } ?>/> <span style="vertical-align:20%">A partir lecturas de códigos de barras</span></label></td><td><img src="<?php echo DIR_IMAGENES; ?>/entrada-modo-C.png" class="entradaModoIconoSelector" /></td></tr>
					 <tr><td align="left"><label><input id="modoLecturaM" name="modoLectura" type="radio" value="M" class="checkGrande" <?php if($_SESSION['modoslecturaRecepcionCompra'][ $_SESSION['recepcionCompra']['numAlbaran'] ]=='M') { ?>checked<?php } ?>/> <span style="vertical-align:20%">Selección mixta</span></label></td><td><img src="<?php echo DIR_IMAGENES; ?>/entrada-modo-M.png" class="entradaModoIconoSelector" /></td>
					 </tr>
			  </table>
			  <p><input type="button" name="botonModoLecturaAceptar" id="botonModoLecturaAceptar" value="ACEPTAR" class="boton"/></p>
			  <p><input type="button" name="botonModoLecturaCancelar" id="botonModoLecturaCancelar" value="Cancelar" class="boton reducido"/></p>
			</div>
		</div>
		
		<div class="estilosOP"  style="padding-bottom:60px">
        
        
        
        <form id="formularioCierre" name="formularioCierre" method="post" action="">
        
        
        <div id="popupNumerosSerie" class="popup" style="display:none"></div>
		<div id="popupNumerosSerieContenido" class="popupContenidoScroll" style="display:none"></div>
		
		<h2>Recepción de compra</h2>
        
        <?php if( isset($modoLecturaRecepcionCompraPorDefecto) && $modoLecturaRecepcionCompraPorDefecto!='L' ) $ocultarSelectorLinea=true; else $ocultarSelectorLinea=false; ?>

		<input type="hidden" name="modoLectura" id="modoLectura" value="<?php if($modoLecturaRecepcionCompraPorDefecto) echo $modoLecturaRecepcionCompraPorDefecto; else echo $_SESSION['modoslecturaRecepcionCompra'][ $_SESSION['recepcionCompra']['numAlbaran'] ]; ?>" />
		
		<table class="tablaFormateada anchoMaximo desplazamientoSuperior">
			<tr>
				<th>Proveedor</th>
				<th>Fecha Recepción</th>
				<th>Albarán</th>
				<th>Fecha Albarán</th>
				<th>Productos</th>
				<th>Cantidad</th>
				<th>Palets</th>
			</tr>
			<tr>
				<td><?php echo $_SESSION['recepcionCompra']['proveedorNombre']; ?></td>
				<td><?php echo $_SESSION['recepcionCompra']['fechaRecepcion']; ?></td>
				<td><?php echo $_SESSION['recepcionCompra']['numAlbaran']; ?></td>
				<td><?php echo $_SESSION['recepcionCompra']['fechaAlbaran']; ?></td>
				<td><?php echo formateaNumeroDecimal($albaran['CantidadProductos'],true); ?></td>
				<td><?php echo formateaNumeroDecimal($albaran['Cantidad'],true); ?></td>
				<td><?php echo formateaNumeroDecimal($albaran['CantidadPalets'],true); ?></td>
			</tr>
		</table>
        
        
		
  		<?php 
		
		//CARGAMOS EL LISTADO DE PRODUCTOS
	
		//WSRecepcionComprasTablet#Empresa#Usuario#Proceso#Almacén;CodProveedor;FechaRecepcion;NumAlbaranProveedor;FechaAlbaran
		//WSRecepcionComprasTablet#PXPR#PRU#PRODUCTOSPROVEEDOR#1;1;20230322;123456;20230322
		
		$peticion='WSRecepcionComprasTablet#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#PRODUCTOSPROVEEDOR#';
		$peticion.=$_SESSION['almacen'];
		$peticion.=';'.$_SESSION['recepcionCompra']['proveedorCodigo'];
		$peticion.=';'.fechaParaProxium(fechaMysql($_SESSION['recepcionCompra']['fechaRecepcion']));
		$peticion.=';'.$_SESSION['recepcionCompra']['numAlbaran'];
		$peticion.=';'.fechaParaProxium(fechaMysql($_SESSION['recepcionCompra']['fechaAlbaran']));
		
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
		
		//echo "<p>".$peticion."</p>";
		
		if($_GET['traza']=='si') {
			echo "<p>".$peticion."</p>";
			print_r($resultado);
		}
		
	
		if($resultado[0]['Error']) {
			$valores=explode('#',$resultado[0]['Error']);
			?><p class="error">ERROR: <?php echo $valores[1]; ?></p><?php
		}
		else {
		
		
			
		
			
			
			$_SESSION['productos']=arreglaArrayPXMobileProxiumResult($resultado[0]['ProductosPendientes']);
			
			$hayPuntosControl=false;
			
			foreach($_SESSION['productos'] as $producto) {
				if($producto['PuntosDeControl']) $hayPuntosControl=true;
			}
			
			$_SESSION['productosLeidos']=arreglaArrayPXMobileProxiumResult($resultado[0]['ProductosLeidos']);
			$_SESSION['palets']=arreglaArrayPXMobileProxiumResult($resultado[0]['DetallePalets']);
			
			$_SESSION['paletsConProductos']=array();
			foreach($_SESSION['productosLeidos'] as $producto) {
				$_SESSION['paletsConProductos'][]=$producto['CodigoPalet'];
			}
			
			
			
			///// CREACION DE LOS ARRAYs PARA FILTROS
			
			$comboPedidos=array();
			$comboProductos=array();
			$comboCodigoProducto=array();
			$comboCargasCamion=array();
			$comboFechaEntrega=array();
			$comboPedidosVenta=array();
		
			foreach($_SESSION['productos'] as $item) {
			
				if(!in_array($item['Pedido'],$comboPedidos) && $item['Pedido']!='') $comboPedidos[]=$item['Pedido'];
				if(!in_array($item['Codigo'],$comboCodigoProducto) && $item['Codigo']!='') $comboCodigoProducto[]=$item['Codigo'];
				if(!in_array($item['Descripcion'],$comboProductos) && $item['Descripcion']!='') $comboProductos[]=$item['Descripcion'];
				if(!in_array($item['FechaEntrega'],$comboFechaEntrega) && $item['FechaEntrega']!='') $comboFechaEntrega[]=$item['FechaEntrega'];
				if(!in_array($item['PedidoVenta'],$comboPedidosVenta) && $item['PedidoVenta']!='') $comboPedidosVenta[]=$item['PedidoVenta'];
				
				
				$cargasCamion=explode('¬',$item['CargaCamion']);
				$cargasCamionDescripcion=explode('¬',$item['CargaCamionDescripcion']);
				foreach($cargasCamion as $clave=>$valor) {
					if( !array_key_exists($valor,$comboCargasCamion) && $valor!='' ) $comboCargasCamion[$valor]=$cargasCamionDescripcion[$clave];
				}

			}
			
			foreach($_SESSION['productosLeidos'] as $item) {
			
				
			
				if(!in_array($item['Pedido'],$comboPedidos) && $item['Pedido']!='') $comboPedidos[]=$item['Pedido'];
				if(!in_array($item['Codigo'],$comboCodigoProducto) && $item['Codigo']!='') $comboCodigoProducto[]=$item['Codigo'];
				if(!in_array($item['Descripcion'],$comboProductos) && $item['Descripcion']!='') $comboProductos[]=$item['Descripcion'];
				if(!in_array($item['FechaEntrega'],$comboFechaEntrega) && $item['FechaEntrega']!='') $comboFechaEntrega[]=$item['FechaEntrega'];
				
				
				$cargasCamion=explode('¬',$item['CargaCamion']);
				$cargasCamionDescripcion=explode('¬',$item['CargaCamionDescripcion']);
				foreach($cargasCamion as $clave=>$valor) {
					if( !array_key_exists($valor,$comboCargasCamion) && $valor!='' ) $comboCargasCamion[$valor]=$cargasCamionDescripcion[$clave];
				}
				
			}
			
			asort($comboPedidos);
			asort($comboProductos);
			asort($comboCodigoProducto);
			asort($comboCargasCamion);
			asort($comboFechaEntrega);
			
			//// Fin creación arrays para filtros
			

			
			if(count($_SESSION['productos'])>0) {
			
			
			
			
			?>
            
            
            
            <?php if($recepcionConCrossdocking) { ?>
        
				<?php //echo '<p>recepcionConCrossdocking: '.$recepcionConCrossdocking.'</p>'; ?>
            
                <?php
                
                
                //echo '<p>Indices crossdocking:</p>';
                //print_r($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]);
                
                $hayPedidoVenta=($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']!='');
                $hayCrossdockingAgrupado=(
                    ( !$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && ($recepcionConCrossdocking=='S' || $recepcionConCrossdocking=='NORM') )
                    ||
                    ( $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']=='S' )
                );
                
                //echo '<p>hayPedidoVenta: '.$hayPedidoVenta.'</p>';
                //echo '<p>hayCrossdockingAgrupado: '.$hayCrossdockingAgrupado.'</p>';
                
                //print_r($proveedor);
                
                //Esto lo definimos al principio porque, si no, si no se marca después no queda guardado y al cambiar de pantalla no existe el dato
                if($hayCrossdockingAgrupado && !isset($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'])) {
                    $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']='S';
                }
                if($hayCrossdockingAgrupado &&!isset($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_concepto'])) {
                    $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_concepto']=$proveedor['Conceptoagrupadorcrossdocking'];
                }
                
                
                
                //echo '<p>indiceCrossdocking: '.$indiceCrossdocking.'</p>';
                //print_r($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]);
                //echo '<hr>';
                
                //echo '<p>crossdocking_agrupado_actualizarCantidades: '.$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades'].'</p>';
                
                ?>
                
                <table class="tablaFormateada" style="margin-top:40px">
                    <tr>
                        <th colspan="2">Recepción para pedido de venta</th>
                  </tr>
                    <tr class="filaPedidoVenta <?php if(!$hayPedidoVenta) { ?>ultimaFila<?php } ?>">
                      <td align="left">Pedido de venta:</td>
                      <td align="left">
                      <!--<input type="text" name="crossdocking_agrupado_pedidoVenta" id="crossdocking_agrupado_pedidoVenta" class="campo campoTexto crossdockingActualizarDato" value="<?php if($hayPedidoVenta) echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']; ?>" style="text-align:left" />-->
    
                        <select name="crossdocking_agrupado_pedidoVenta" id="crossdocking_agrupado_pedidoVenta" class="campo crossdockingActualizarDato" >
                            <option value="">---</option>
                            <?php foreach($comboPedidosVenta as $item) { ?>
                            <option value="<?php echo $item; ?>" <?php if($hayPedidoVenta && $_SESSION['filtrosRecepcionCompra']['filtroPedidoVenta']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
                            <?php } ?>
                        </select>
                        
                      </td>
                    </tr>
                    
                    <tr class="filaActualizarCantidades" <?php if(!$hayPedidoVenta) { ?>style="display:none"<?php } ?>>
                        <td align="left">Actualizar cantidades:</td>
                        <td align="left">
                        <label><input type="radio" class="checkGrande crossdockingActualizarDato" style="vertical-align:sub" name="crossdocking_agrupado_actualizarCantidades" id="crossdocking_agrupado_actualizarCantidades_S" value="S" <?php if( !$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades'] || ( $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades'] && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades']=='S' ) ) { ?>checked<?php } ?>/> Sí</label> 
                        <label><input type="radio" class="checkGrande crossdockingActualizarDato" style="vertical-align:sub"  name="crossdocking_agrupado_actualizarCantidades" id="crossdocking_agrupado_actualizarCantidades_N" value="N" <?php if( $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades'] && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades']=='N' ) { ?>checked<?php } ?>/> No</label>                    </td>
                    </tr>
                    
                    <tr class="filaCrossDockingAgrupado" <?php if(!$hayPedidoVenta || $recepcionConCrossdocking=='N') { ?>style="display:none"<?php } ?>>
                        <td align="left">Recepción por cross-docking agrupado:</td>
                        <td align="left">
                        <label><input type="radio" class="checkGrande crossdockingActualizarDato" style="vertical-align:sub" name="crossdocking_agrupado" id="crossdocking_agrupado_S" value="S" <?php if( ( $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']=='S' ) || ( !$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && ($recepcionConCrossdocking=='S' || $recepcionConCrossdocking=='NORM') ) ) { ?>checked<?php } ?>/> Sí</label> 
                        
                        <?php if( $recepcionConCrossdocking && $recepcionConCrossdocking!='S' ) { ?>
                        <label><input type="radio" class="checkGrande crossdockingActualizarDato" style="vertical-align:sub"  name="crossdocking_agrupado" id="crossdocking_agrupado_N" value="N" <?php if( ( $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado']=='N' ) || ( !$_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado'] && $recepcionConCrossdocking=='EVE' ) ) { ?>checked<?php } ?>/> No</label>
                        <?php } ?>
                        
                        </td>
                    </tr>
                    
                    <tr class="filaCrossdockingDatos" <?php if(!$hayPedidoVenta || !$hayCrossdockingAgrupado) { ?>style="display:none"<?php } ?>>
                        <td align="left">Concepto de recepción agrupada:</td>
                        <td align="left"><input type="text" name="crossdocking_agrupado_concepto" id="crossdocking_agrupado_concepto" class="campo campoTexto crossdockingActualizarDato" value="<?php if($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_concepto']) echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_concepto']; else echo $proveedor['Conceptoagrupadorcrossdocking']; ?>" style="text-align:left"></td>
                    </tr>
                    
                    <tr class="filaCrossdockingDatos" <?php if(!$hayPedidoVenta || !$hayCrossdockingAgrupado) { ?>style="display:none"<?php } ?>>
                        <td align="left">Bultos:</td>
                        <td align="left"><input type="text" name="crossdocking_agrupado_bultos" id="crossdocking_agrupado_bultos" class="campo cantidad campoCantidad crossdockingActualizarDato" style="width:100px" value="<?php echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_bultos']; ?>"></td>
                    </tr>
                    
                    <?php if($pedirUbicacion) { ?>
                    <tr class="filaCrossdockingDatos" <?php if(!$hayPedidoVenta || !$hayCrossdockingAgrupado) { ?>style="display:none"<?php } ?>>
                        <td align="left">Ubicación:</td>
                        <td align="left"><input type="text" name="crossdocking_agrupado_ubicacion" id="crossdocking_agrupado_ubicacion" class="campo campoTexto crossdockingActualizarDato" value="<?php if($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_ubicacion']) echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_ubicacion']; ?>" style="text-align:left"></td>
                    </tr>
                    <?php } ?>
                    
                    <tr class="filaCrossdockingDatos" <?php if(!$hayPedidoVenta || !$hayCrossdockingAgrupado) { ?>style="display:none"<?php } ?>>
                      <td colspan="2" align="center"><input type="button" name="crossdocking_agrupado_botonLeerCompleto" id="crossdocking_agrupado_botonLeerCompleto" value="Leer pedido completo" class="boton reducido"/> <input type="hidden" name="confirmacionLeerCrosdockingCompleto" id="confirmacionLeerCrosdockingCompleto" /></td>
                    </tr>
                    
                </table>
                
                
              <script>
             
                
                $(document).ready(function(){
                
                    
                
                    <?php if( $hayPedidoVenta ) { ?>
                    
                        $('.filaPedidoVenta').removeClass('ultimaFila');
                        $('.filaPedidoVenta').children('td').removeClass('ultimaFila');
                    
                        $('.filaActualizarCantidades').show();
                    
                         <?php if( $recepcionConCrossdocking!='N' ) { ?>
                    
                            <?php if( $hayCrossdockingAgrupado ) { ?>
                        
                                $('.filaCrossdockingAgrupado').show();
                                
                                $('.filaCrossdockingDatos').show();
    
                            <?php } else {?>
                            
                                $('.filaCrossDockingAgrupado').addClass('ultimaFila');
                                $('.filaCrossDockingAgrupado').children('td').addClass('ultimaFila');
                            
                            <?php } ?>
                            
                        <?php } else { ?>
                        
                            $('.filaActualizarCantidades').addClass('ultimaFila');
                            $('.filaActualizarCantidades').children('td').addClass('ultimaFila');
                        
                        <?php } ?>
                    
                    <?php } else { ?>
                    
                        $('.filaPedidoVenta').addClass('ultimaFila');
                        $('.filaPedidoVenta').children('td').addClass('ultimaFila');
                    
                    <?php } ?>
                    
                    
                    $('#crossdocking_agrupado_botonLeerCompleto').on('click',function(){
                    
                        confirm('Vas a proceder a marcar automáticamente como leidas<br>todas las lineas de este pedido de venta.','advertencia')
                        .done(function(){
                            $('#popupCargando').show();
                            $('#confirmacionLeerCrosdockingCompleto').val(1);
                            $('#formularioCierre').submit();
                        });
                    
                        /*
                        let proveedor='<?php echo $_SESSION['recepcionCompra']['proveedorCodigo']; ?>';
                        let albaran='<?php echo $_SESSION['recepcionCompra']['numAlbaran']; ?>';
                        
                        let RecepcionCrossDockingAgrupado=$('input:radio[name=crossdocking_agrupado]:checked').val()
                        let Concepto=$('#crossdocking_agrupado_concepto').val();
                        let ActualizarCantidades=$('input:radio[name=crossdocking_agrupado_actualizarCantidades]:checked').val()
                        let Bultos=$('#crossdocking_agrupado_bultos').val();
                        let PedidoVenta=$('#crossdocking_agrupado_pedidoVenta').val();
                        
                        $.post( '<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-crossdocking-marcar-completo.php' , { 'proveedor' : proveedor , 'albaran' : albaran , 'RecepcionCrossDockingAgrupado' : RecepcionCrossDockingAgrupado , 'Concepto' : Concepto , 'ActualizarCantidades' : ActualizarCantidades , 'Bultos' : Bultos , 'PedidoVenta' : PedidoVenta })
                        .done(function(){
                        
                        });
                        */
                    
                    });
                    
                    
                    $('#crossdocking_agrupado_pedidoVenta').on('change',function(){
                    
                        let pedidoVenta=$(this).val();
                        
                        console.log('-------------------------------');
                        console.log('pedidoVenta CAMBIADO: '+pedidoVenta);
    
                    
                        if(pedidoVenta) {
                        
                            console.log('hay pedido venta');
                        
                            if( pedidosVenta.includes(pedidoVenta) ) {
                            
                                console.log('esta incluido en el listado');
                            
                                bloqueaComboFiltroPedidoVenta( $(this).val() );
                                aplicarFiltro();
                                
                                $('.filaPedidoVenta ').removeClass('ultimaFila');
                                $('.filaPedidoVenta ').children('td').removeClass('ultimaFila');
                                
                                $('.filaActualizarCantidades').show();
                                
                                console.log('recepcionConCrossdocking: <?php echo $recepcionConCrossdocking; ?>');
                                                            
                                <?php if( $recepcionConCrossdocking!='N' ) { ?>
                                
                                    console.log('mostramos la fila de elegir crossdocking agrupado');
                            
                                    $('.filaCrossDockingAgrupado').show();
    
                                    <?php if($hayCrossdockingAgrupado) { ?>
                                    
                                        $('.filaCrossdockingDatos').show();
                                        
                                        $('.filaCrossdockingAgrupado').removeClass('ultimaFila');
                                        $('.filaCrossdockingAgrupado').children('td').removeClass('ultimaFila');
                                        
                                    <?php } else { ?>
                                    
                                        $('.filaCrossdockingAgrupado').addClass('ultimaFila');
                                        $('.filaCrossdockingAgrupado').children('td').addClass('ultimaFila');
                                        
                                    <?php } ?>
                                
                                <?php } else { ?>
                                
                                    $('.filaActualizarCantidades').addClass('ultimaFila');
                                    $('.filaActualizarCantidades').children('td').addClass('ultimaFila');
                                
                                <?php } ?>
                                
                                
                            }
                            else {
                                alert('El pedido de venta '+pedidoVenta+' no se encuentra en ninguna de las lineas<br>de productos pendientes de recepcionar de este proveedor.',null,'error')
                                .done(function(){
                                    $('#crossdocking_agrupado_pedidoVenta').val('');
                                    $('#crossdocking_agrupado_pedidoVenta').trigger('change');
                                    $('#crossdocking_agrupado_pedidoVenta').focus();
                                });
                            }
                            
                        }
                        else {
                        
                            bloqueaComboFiltroPedidoVenta( $(this).val() );
                            aplicarFiltro();
                        
                            $('.filaActualizarCantidades').hide();
                            $('.filaCrossDockingAgrupado').hide();
                            $('.filaCrossdockingDatos').hide();
                            
                            $('.filaPedidoVenta').addClass('ultimaFila');
                            $('.filaPedidoVenta').children('td').addClass('ultimaFila');
                        }
                    
                    });
                
                    $('input[name="crossdocking_agrupado"]').click(function(){
                        
                        if($(this).val()=='S') {
                            $('.filaCrossdockingDatos').show();
                            $('.filaCrossDockingAgrupado').removeClass('ultimaFila');
                            $('.filaCrossDockingAgrupado').children('td').removeClass('ultimaFila');
                        }
                        else {
                            $('.filaCrossdockingDatos').hide();
                            $('.filaCrossDockingAgrupado').addClass('ultimaFila');
                            $('.filaCrossDockingAgrupado').children('td').addClass('ultimaFila');
                        }
                        
                    });
                
                    $('.campo.crossdockingActualizarDato').on('change',function(e){
                    
                        e.preventDefault();
                    
                        let campo=$(this).attr('id');
                        let valor=$(this).val();
                        
                        //console.log('campo cambiado');
                        //console.log('campo: '+campo+' / valor: '+valor);
                        
                        $.post( '<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-crossdocking-actualizar-datos.php' , { 'indice' : '<?php echo $indiceCrossdocking; ?>' , 'campo' : campo , 'valor' : valor , 'session_id' : '<?php echo session_id(); ?>' });
                    
                    });
                    
                    $('.checkGrande.crossdockingActualizarDato').on('click',function(){
                    
                        console.log('se cambia check');
                    
                        let campo=$(this).attr('name');
                        let valor=$(this).val();
                        
                        //console.log('campo: '+campo);
                        //console.log('valor: '+valor);
                        
                        $.post( '<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-crossdocking-actualizar-datos.php' , { 'indice' : '<?php echo $indiceCrossdocking; ?>' , 'campo' : campo , 'valor' : valor , 'session_id' : '<?php echo session_id(); ?>' });
                    
                    });
                
                
                    $('.campoTexto').on('click',function(){
                    
                        let id=$(this).attr('id');
                        let campo=$('#'+id);
                        
                        if( !campo.hasClass('deshabilitado') ) {
                        
                            $('#teclado').show();
                            $('#valor').val( campo.val() );
                            $('#valorOculto').val( campo.val() );
                            $('#enter').attr('campoValor',id);
                            $('#enter').attr('forzarEnter','si');
                            
                        }
                    
                    });
                
                    $('.campoCantidad').on('click',function(){
                    
                        let id=$(this).attr('id');
                        let campo=$('#'+id);
                        
                        if( !campo.hasClass('deshabilitado') ) {
                    
                            $('#calculadora').show();
                            $('#valorCalculadora').val( campo.val() );
                            $('#enterCalculadora').attr('campoValor',id);
                            $('#enterCalculadora').attr('forzarEnter','si');
                            
                        }
                    
                    });
                
                });
                
                </script>
            
            <?php } // Fin crossdocking ?>
            
            
            
			<h3>Productos que pueden recepcionarse de este Albarán:</h3>  
			
			<table class="tablaFormateada anchoMaximo">
			
				<tr>
                	<?php if($_SESSION['parametrosSGA']['ControlPesajeRecepcion']=='S') { ?>
                    <th></th>
                    <?php } ?>
                
                	<?php if(!$ocultarSelectorLinea) { ?>
					<th>Iniciar</th>
                    <?php } ?>
                    
                    <?php if($mostrarCargaCamion) { ?>
                    <th>Carga</th>
                    <?php } ?>
                    
					<th>Pedido</th>
					<th>Linea</th>
					<th>Código</th>
					<th>Descripción</th>
                    
                    <?php if($mostrarFechaEntregaRecepcionCompra) { ?>
                    <th>Fecha entrega</th>
                    <?php } ?>
                    
					<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
						<?php if($comportamiento['Activo']=='S') { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
					<?php } ?>
					
					<th>Pendiente recibir</th>
					<th>En recepción</th>
					<th>Nuevo pendiente</th>
					
					<th>Formato</th>
                    
                    <?php if($recepcionConCrossdocking) { ?>
                    <th>Pedido venta</th>
                    <?php } ?>
					
          			<?php if($hayPuntosControl) { ?>
					<th></th>
					<?php } ?>
                    
                    <?php if($asociacionEANaProductos) { ?>
                    <th colspan="2">Códigos EAN</th>
                    <?php } ?>
					
				</tr>
		
				<?php
				
				$lineasCantidadExcedida=array();
				
				foreach($_SESSION['productos'] as $producto) {
				
					$cadenaNumerosSerie='';
					$numerosSerie=arreglaArrayPXMobileProxiumResult($producto['NumerosSerie']);
					foreach($numerosSerie as $numero) {
						if(!empty($cadenaNumerosSerie)) $cadenaNumerosSerie.=';';
						$cadenaNumerosSerie.=$numero['NumeroSerie'].','.$numero['Leido'].','.$numero['Ubicacion'];
					}
					
					//echo '<p>ocultarSelectorLinea: '.$ocultarSelectorLinea.'</p>';
					?>
					
					<tr class="lineaOrden" codigoProducto="<?php echo $producto['Codigo']; ?>" producto="<?php echo $producto['Descripcion']; ?>" pedido="<?php echo $producto['Pedido']; ?>" cargaCamion="<?php echo $producto['CargaCamion']; ?>" fechaEntrega="<?php echo $producto['FechaEntrega']; ?>" pedidoVenta="<?php echo $producto['PedidoVenta']; ?>">
                    
						<?php if(!$ocultarSelectorLinea || $_SESSION['parametrosSGA']['ControlPesajeRecepcion']=='S') { ?>
						<td>
                        	<?php if($_SESSION['parametrosSGA']['ControlPesajeRecepcion'] && $producto['ControlPesaje']=='S') { ?>
                            	<img src="<?php echo DIR_IMAGENES; ?>/peso.png" style="width:30px"/>
                            <?php } else if(!$ocultarSelectorLinea) { ?>
								<input name="iniciar<?php echo $producto['Pedido']; ?>-<?php echo $producto['PedidoLinea']; ?>" type="checkbox" class="checkGrande selectorInicio" id="iniciar<?php echo $producto['Pedido']; ?>-<?php echo $producto['PedidoLinea']; ?>" codigo="<?php echo $producto['Codigo']; ?>" pedido="<?php echo $producto['Pedido']; ?>" pedidoLinea="<?php echo $producto['PedidoLinea']; ?>"/>
                            <?php } ?>
						</td>
                        <?php } ?>
                        
                        <?php if($mostrarCargaCamion) { ?>
                        <td align="center">
						<?php
						//echo $producto['CargaCamion'];
						$cargas=explode('¬',$producto['CargaCamion']);
						foreach($cargas as $carga) echo $carga.'<br>';
						?>
						</td>
                        <?php } ?>
						
						<td align="center"><?php echo $producto['Pedido']; ?></td>
						<td align="center"><?php echo $producto['PedidoLinea']; ?></td>
					
						<td><?php echo $producto['Codigo']; ?></td>
						<td align="left"><?php echo $producto['Descripcion']; ?></td>
                        
                        <?php if($mostrarFechaEntregaRecepcionCompra) { ?>
                        <td align="left"><?php echo $producto['FechaEntrega']; ?></td>
                        <?php } ?>
						
						<?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
							<?php if($comportamiento['Activo']=='S') { ?>
								<td>
									<?php
										if($comportamiento['Codigo']=='NS' && $producto['NumerosSerie']) {
											?><img class="verNumerosSerie clicable" src="<?php echo DIR_IMAGENES; ?>/barcode-buscar.png" style="width:60px" numeros="<?php echo $cadenaNumerosSerie; ?>"/><?php
										}
										else if($comportamiento['NombreSQL']=='Regimen') echo $producto['Regimen'];
										else echo formateaTipo($producto[$comportamiento['NombreSQL']],$comportamiento['Tipo']);
									?>
								</td> 
							<?php } ?>
						<?php } ?>
						
						<td align="right"><?php echo formateaNumeroDecimal($producto['Cantidad'],true); ?></td>
						<td align="right"><?php echo formateaNumeroDecimal($producto['CantidadEnRecepcion'],true); ?></td>
						<td align="right"><?php echo formateaNumeroDecimal($producto['CantidadNuevoPendiente'],true,0,true); ?></td>
                        
                        <?php if($producto['CantidadNuevoPendiente']<0) $lineasCantidadExcedida[]=$producto['Pedido'].'-'.$producto['PedidoLinea']; ?>
						
					    <td align="center"><?php echo $producto['Formato']; ?></td>
                        
                        <?php if($recepcionConCrossdocking) { ?>
                        <td align="center"><?php echo $producto['PedidoVenta']; ?></th>
                        <?php } ?>
						
						<?php if($hayPuntosControl) { ?>
					    <td><?php if($producto['PuntosDeControl']) { ?><img src="<?php echo DIR_IMAGENES; ?>/control.png" style="width:50px" /><?php } ?></td>
						<?php } ?>
                        
                        <?php if($asociacionEANaProductos) { ?>
                        <td>
							<?php
                            if($producto['EAN']) {
								$listaEans=explode(';',$producto['EAN']);
								foreach($listaEans as $item) {
									if($item!='') echo $item.'<br>';
								}
							}
							?>
                        </td>
                        <td><img src="<?php echo DIR_IMAGENES; ?>/entrada-modo-C.png" style="width:70px" class="botonInformarEAN clicable <?php if(!$producto['EAN']) { ?>parpadea<?php } ?>" producto="<?php echo $producto['Codigo']; ?>"/>
                            <!--<input type="button" value="Informar" class="boton reducido botonInformarEAN" producto="<?php echo $producto['Codigo']; ?>"/>-->
                        </td>
                        <?php } ?>
						
					</tr>
					
				<?php }  //Fin foreach productos ?>
			
			</table>
			
			<?php } //Fin si hay productos en el listado principal ?>
			
			
			
			
			<?php if(count($_SESSION['productosLeidos'])>0) { ?>
            
            	<?php
				
				//25-02-2025 GUARDAMOS LOS NS QUE SE VAN LEYENDO EN EL PROCESO ACTUAL
				$_SESSION['productosLeidos_NumerosSerie']=array();
				foreach($_SESSION['productosLeidos'] as $item) {
					$_SESSION['productosLeidos_NumerosSerie'][]=$item['NumeroSerie'];
				}
				
				?>
            
				<?php $totalCantidad=0; ?>
                <?php $totalCajas=0; ?>
               
                <h3>Productos leídos de este Albarán:</h3>  
                
                <table class="tablaFormateada anchoMaximo">
                
                    <tr>
                        <th>Pedido</th>
                        <?php if($mostrarCargaCamion) { ?>
                        <th>Carga</th>
                        <?php } ?>
                        <th>Linea</th>
                        <th>Código</th>
                        <th>Descripción</th>
                        <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                            <?php if($comportamiento['Activo']=='S') { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
                        <?php } ?>
                        
                        <th>Cantidad</th>
                        <th>Formato</th>
                        
                        <?php if($_SESSION['verEnCajas']) { ?>
                        <th>Cajas</th>
                        <?php } ?>
                        
                        <th>Palet</th>
                        
                        <?php if($pedirUbicacion) { ?>
                        <th>Ubicación</th>
                        <?php } ?>
                        
                        <?php if($recepcionConCrossdocking) { ?>
                        <th>Pedido venta</th>
                        <?php } ?>
                        
                    </tr>
            
                    <?php
					
					//Estos controles los ponemos para que, si ya hay productos leidos, bloquee ciertos datos de la cabecera del crossdocking que ya no se pueden cambiar
					$recepcionConCrossdocking_pedidoVentaLeido=false;
					$recepcionConCrossdocking_productosSinPalet=false;

					
					foreach($_SESSION['productosLeidos'] as $producto) {
					

						if ($producto['PedidoVenta']!='') $recepcionConCrossdocking_pedidoVentaLeido=true;
						if ($producto['CodigoPalet']=='-' || !$producto['CodigoPalet']) $recepcionConCrossdocking_productosSinPalet=true;
                    
                        //print_r($producto);
                        //echo '<hr>';
                        
                        //20-10-2023 detecto tras problema Altimex TICKET 23054641 que no se gestionan bien los NS no llegan agrupados
                        //04-03-2026 FTP. descomento porque LSB ha corregido el listado para agrupar por palet
                        $cadenaNumerosSerie='';
                        $numerosSerie=arreglaArrayPXMobileProxiumResult($producto['NumerosSerie']);
                        foreach($numerosSerie as $numero) {
                            if(!empty($cadenaNumerosSerie)) $cadenaNumerosSerie.=';';
                            $cadenaNumerosSerie.=$numero['NumeroSerie'].','.$numero['Leido'].','.$numero['Ubicacion'];
                        }
                        
                        
                        $totalCantidad+=(float)$producto['Leido'];
                        $leidoCajas=0;
                        if((int)$producto['EmbalajePrimarioCaja']>1) $leidoCajas=(float)$producto['Leido']/$producto['EmbalajePrimarioCaja'];
                        $totalCajas+=$leidoCajas;
                        
                        $claseError='';
                        if(in_array($producto['Pedido'].'-'.$producto['PedidoLinea'],$lineasCantidadExcedida)) $claseError="rojo";
						
                        
                        ?>
                        
                        <tr class="lineaOrden noEsUltimaFila <?php echo $claseError; ?>" codigoProducto="<?php echo $producto['Codigo']; ?>" producto="<?php echo $producto['Descripcion']; ?>" pedido="<?php echo $producto['Pedido']; ?>"  cargaCamion="<?php echo $producto['CargaCamion']; ?>" fechaEntrega="<?php echo $producto['FechaEntrega']; ?>" pedidoVenta="<?php echo $producto['PedidoVenta']; ?>">
                        
                            <td align="center"><?php echo $producto['Pedido']; ?></td>
                            
                            <?php if($mostrarCargaCamion) { ?>
                            <td align="center">
                            <?php
                            //echo $producto['CargaCamion'];
                            $cargas=explode('¬',$producto['CargaCamion']);
                            foreach($cargas as $carga) echo $carga.'<br>';
                            ?>
                            </td>
                            <?php } ?>
                            
                            <td align="center"><?php echo $producto['PedidoLinea']; ?></td>
                        
                            <td><?php echo $producto['Codigo']; ?></td>
                            <td align="left"><?php echo $producto['Descripcion']; ?></td>
                            
                            <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                            
                                <?php if($comportamiento['Activo']=='S') { ?>
                                    <td>
                                        <?php
                                            //20-10-2023 detecto tras problema Altimex TICKET 23054641 que no se gestionan bien los NS no llegan agrupados
                                            //04-03-2026 FTP. descomento porque LSB ha corregido el listado para agrupar por palet
                                            if($comportamiento['NombreSQL']=='Regimen') echo $producto['Regimen'];
                                            else if($comportamiento['NombreSQL']=='NumSerie') {
												if($cadenaNumerosSerie) {
												?><img class="verNumerosSerie clicable" src="<?php echo DIR_IMAGENES; ?>/barcode-buscar.png" style="width:60px" numeros="<?php echo $cadenaNumerosSerie; ?>"/><?php
												}
												else $producto['NumeroSerie'];
											}
                                            else echo formateaTipo($producto[$comportamiento['NombreSQL']],$comportamiento['Tipo']);
                                        ?>
                                    </td> 
                                <?php } ?>
                            <?php } ?>
                            
                            <td align="right"><?php echo formateaNumeroDecimal($producto['Leido'],true); ?></td>
                            <td align="center"><?php echo $producto['Formato']; ?></td>
                            
                            <?php if($_SESSION['verEnCajas']) { ?>
                            <td align="right"><?php echo formateaNumeroDecimal($leidoCajas,true); ?></td>
                            <?php } ?>
                            
                            <td align="center"><?php echo $producto['CodigoPalet']; ?></td>
                            
							<?php if($pedirUbicacion) { ?>
                            <td align="center"><?php echo $producto['Ubicacion']; ?></td>
                            <?php } ?>
                            
                            <?php if($recepcionConCrossdocking) { ?>
                            <td align="center"><?php echo $producto['PedidoVenta']; ?></td>
                            <?php } ?>
        
                    </tr>
                        
                <?php }  //Fin foreach productos ?>
                
                <?php //LOS SUMATORIOS LOS PONEMOS SOLO CUANDO HAY VISIBILIDAD DE CAJAS. Pedido por Altimex TICKET 23051748 ?>
                <?php if($_SESSION['verEnCajas']) { ?>
                
                    <?php $spanColumnas=4; ?>
                    <?php if($mostrarCargaCamion) $spanColumnas++; ?>
                    <?php foreach($_SESSION['comportamientos'] as $comportamiento) if($comportamiento['Activo']=='S') $spanColumnas++; ?>
                    
                    <?php $spanColumnasPosterior=1; ?>
                    <?php if($pedirUbicacion) $spanColumnasPosterior++; ?>
                    <?php if($recepcionConCrossdocking) $spanColumnasPosterior++; ?>
                    
                    <tr>
                        <td colspan="<?php echo $spanColumnas; ?>" align="right">Totales:</td>
                        <td align="right"><?php echo formateaNumeroDecimal($totalCantidad,true); ?></td>
                        <td></td>
                        <?php if($_SESSION['verEnCajas']) { ?>
                        <td align="right"><?php echo formateaNumeroDecimal($totalCajas,true); ?></td>
                        <?php } ?>
                        <td colspan="<?php echo $spanColumnasPosterior; ?>"></td>
                    </tr>
                    
                <?php } ?>

                </table>
                
                
                <?php if($recepcionConCrossdocking) { ?>
                
                <script>
				
				$(document).ready(function(){
				
					<?php if($recepcionConCrossdocking_pedidoVentaLeido) { ?>
					
					//$('#crossdocking_agrupado_pedidoVenta').addClass('deshabilitado'); //ATENCION, un combo deshabilitado no envía dato, hay que deshabilitar las opciones de abajo, para que no deje elegir otra si se quiere bloquear
					//$('#crossdocking_agrupado_pedidoVenta').prop('readonly',true);
					$('#crossdocking_agrupado_pedidoVenta option').prop('disabled',true);
					$('#crossdocking_agrupado_pedidoVenta option[value="<?php echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']; ?>"]').prop('disabled',false);
					$('#crossdocking_agrupado_pedidoVenta option[value="<?php echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']; ?>"]').prop('selected',true);
					$('#crossdocking_agrupado_pedidoVenta').trigger('change');
					
						<?php if($recepcionConCrossdocking_productosSinPalet) { ?>
						$('#crossdocking_agrupado_N').parent().hide();
						<?php } else { ?>
						$('#crossdocking_agrupado_S').parent().hide();
						<?php } ?>
						
						<?php if($_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_actualizarCantidades']=='N') { ?>
						$('#crossdocking_agrupado_actualizarCantidades_S').parent().hide();
						<?php } else { ?>
						$('#crossdocking_agrupado_actualizarCantidades_N').parent().hide();
						<?php } ?>
						
					
					<?php } ?>
					
					
					
				});
				
				</script>
                
                <?php } ?>
                
                
                <p><input type="button" name="botonDesleer" id="botonDesleer" value="Liberar lecturas" class="mostrarCargando boton"  style="font-size:0.9em" /></p>
                
                
                
                <div id="popupCierreAlbaranesCoincidentes" class="popup" style="display:none;">
                    <div class="popupContenido" id="popupCierreAlbaranesCoincidentesContenido">
                    </div>
                </div>
            
                <p><input type="button" id="botonCerrarRecepcion" name="botonCerrarRecepcion" value="Cerrar Recepción" class="boton"/></p>
                
                <input type="hidden" id="confirmarCierreRecepcionAlbaranCoincidente" name="confirmarCierreRecepcionAlbaranCoincidente" value="" />
                <input type="hidden" id="confirmarCierreRecepcion" name="confirmarCierreRecepcion" value="" />
            
            
                <?php if($controlCargaObligatorio) { ?>
                <input type="hidden" id="controlCargaNumCarga" name="controlCargaNumCarga" value="" />
                <?php } ?>
                
                
			
			<?php } //Fin si hay productos en el listado leidos ?>
            
            
            
            </form> <!-- form principal de cerrar recepcion, que ahora está subido hasta arriba del título, porque podría necesitar capturar campos del form de crossdocking -->
            
            
            
			
			<script>
			
			let pedidosVenta=new Array; //Esto se utiliza antes, en el bloque de crossdocking, pero se define aqui abajo porque el PHP todavía no había cargado el listado de productos para obtener los pedidos
			<?php foreach($comboPedidosVenta as $item) { ?>
			pedidosVenta.push('<?php echo $item; ?>');
			<?php } ?>
			
			function gestionaInicio(){
			
				if(false) {
				}
				<?php if($controlCargaObligatorio) { ?>
				else if( $('#filtroCargaCamion').val()=='') {
					alert('Para continuar, es obligatorio que filtres para informar la Carga',null,'advertencia');
				}
				<?php } ?>
				else {
			
					$('#popupCargando').show();
					
					var parametros='';
					var modoLectura=$('#modoLectura').val();
					
					//Primero miramos si hay check de inicio
					$('.selectorInicio').each( function(){
						if( $(this).is(":checked") ) parametros='pedido='+$(this).attr('pedido')+'&pedidoLinea='+$(this).attr('pedidoLinea')+'&codigo='+$(this).attr('codigo');
					});
					
					if( modoLectura=='L' && parametros=='') {
						
						$('#popupModoLecturaEntrada').hide();
						$('#popupCargando').hide();
						alert('El modo de selección de artículos actual es por selección directa.<br><br>Selecciona un ítem del listado para proceder.',null,'advertencia');
					
					}
					else {
							
						window.location='<?php echo $rutaHtml; ?>/entrada-mercancia-gs1-proceso.php?procedencia=compra&'+parametros<?php if($controlCargaObligatorio) { ?>+'&cargaSeleccionada='+$('#filtroCargaCamion').val()<?php } ?>;
							
					}
				
				}
				
			}
			
			function confirmarCierre() {
			
				$('#popupCargando').show();
				$('#confirmarCierreRecepcion').val(1);
				$('#formularioCierre').submit();
			
			}
			
			$(document).ready(function() {
			
			
				$('.botonInformarEAN').on('click',function(e){
				
					var producto=$(this).attr('producto');
					
					$('#popupCargando').show();
						
					window.location='info-producto-S.php?procedencia=informarEan&subProcedencia=recepcionCompra&producto='+producto;
				
				});
			
			
				$('#botonDesleer').on("click",function(e){
					window.location='<?php echo $rutaHtml; ?>/recepcion-compra-desleer.php';
				});
			
				$('#botonCerrarRecepcion').on('click',function(){
				
					//console.log('botonCerrarRecepcion');

					<?php if($recepcionConCrossdocking) { ?>
					let crossdocking=( $('#crossdocking_agrupado_pedidoVenta').val() && $('input:radio[name=crossdocking_agrupado]:checked').val()=='S' );
					console.log('crossdocking: '+crossdocking);
					<?php } ?>
					

				
					if(false) {
					}
					<?php if($controlCargaObligatorio) { ?>
					else if( !$('#filtroCargaCamion').val() ) {
						alert('Para continuar, es obligatorio que filtres para informar la Carga',null,'advertencia');
					}
					<?php } ?>
					<?php if($recepcionConCrossdocking) { ?>
					else if( crossdocking && !$('#crossdocking_agrupado_concepto').val() ) {
						alert('Es obligatorio informar el concepto de recepción por cross-docking agrupado.',null,'error');
					}
					else if( crossdocking && !$('input:radio[name=crossdocking_agrupado_actualizarCantidades]:checked').val() ) {
						alert('Es obligatorio indicar si se actualizan o no las cantidades por cross-docking.',null,'error');
					}
					else if( crossdocking && !$('#crossdocking_agrupado_bultos').val() ) {
						alert('Es obligatorio informar el número de bultos de la recepción por cross-docking.',null,'error');
					}
					<?php } ?>
					else {
						confirm('Se va a proceder al cierre de la Recepción de Compra.<br><br>¿Deseas continuar?','informacion')
						.done(function(){
							
							$('#popupCargando').show();
							
							// ALBARANES COINCIDENTES
							
							$.post( "<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-cierre-albaranes-coincidentes.php" )
							.done(function(data) {
							
								if( data=='Sin coincidencias' ) {
									confirmarCierre();
								}
								else {
									$('#popupCierreAlbaranesCoincidentesContenido').html( data );
									$('#popupCierreAlbaranesCoincidentes').show();
									$('#popupCargando').hide();
								}
							
							});
							
						});
					}
					

					
				});
			
				////////// MODOS DE LECTURA
		
				$('#botonModoLecturaAceptar').on('click',function(e){
					
					var modoSeleccionado=$('input:radio[name=modoLectura]:checked').val();
					
					if ( modoSeleccionado ) {
						$.post( "<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-selectorModoLectura-grabar.php" , { 'modoSeleccionado' : modoSeleccionado } )
						.done(function(data) {
						
							$('#modoLectura').val( modoSeleccionado );
							
							if( $('#gestionaInicio').val()==1 && modoSeleccionado!='M' ) {
								gestionaInicio();
							}
							else {
								$('#popupModoLecturaEntrada').hide();
							}
							
						});
					}
					else alert('Por favor, especifica el modo de selección para esta Entrada.',null,'error');
				});
				
				$('#botonModoLecturaCancelar').on('click',function(e){
					$('#popupModoLecturaEntrada').hide();
				});
				
				$('#botonModoLectura').on('click',function(e){
					$('#popupModoLecturaEntrada').show();
				});
				
				////////// FIN modos de lectura
				
				
				
				$('#botonLectura').on("click",function(e){
		
					var modoLectura=$('#modoLectura').val();
					
					//20-06-2022 tarea 45839
					//Comprobar si no hay modo lectura y hay check, poner el modo L por defecto
					if( !modoLectura) {
						var hayCheck=false;
						$('.selectorInicio').each( function(){
							if( $(this).is(":checked") ) hayCheck=true;
						});
						if(hayCheck) {
							modoLectura='L';
							$('#modoLectura').val(modoLectura);
							
							$.post( "<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-selectorModoLectura-grabar.php" , { 'modoSeleccionado' : modoLectura } );
						}
					}
					
					if( !modoLectura ) {
					
						$('#popupCargando').hide();
						$('#popupModoLecturaEntrada').show();
						$('#gestionaInicio').val(1)
							
					}
					else gestionaInicio();
		
					});
					
					$('.selectorInicio').on("click",function(){
						if( $('#modoLectura').val()=='C' ) {
							alert('El modo de selección actual es por código de barras,<br>no se permite la selección directa.',null,'error');
							$(this).prop('checked',false); 
						}
						else {
						
							var pedido=$(this).attr('pedido');
							var pedidoLinea=$(this).attr('pedidoLinea');
							var valorActual=$('#iniciar'+pedido+'-'+pedidoLinea).prop('checked');
							$('.selectorInicio').prop('checked',false);
							$('#iniciar'+pedido+'-'+pedidoLinea).prop('checked',valorActual);
						
						}
					});
					
					$('.lineaEntrada').on('click',function(){
						var lineaentrada=$(this).attr('lineaentrada');
						var valorActual=$('#iniciar'+lineaentrada).prop('checked');
						$('.selectorInicio').prop('checked',false);
						$('#iniciar'+lineaentrada).prop('checked',valorActual);
						
					});
			
			});
			
			</script>
			
			
			<?php //////// FILTROS ?>
			
			<div class="barraFiltro">
			
				<table cellpadding="5" style="margin:0 auto">
					<tr>
						<td>
						Pedido:<br />
						<select name="filtroPedido" id="filtroPedido" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboPedidos as $item) { ?>
							<option value="<?php echo $item; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroPedido']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
							<?php } ?>
						</select>
						</td>
                        
                        <?php if($mostrarCargaCamion) { ?>
                        <td>
						Carga:<br />
						<select name="filtroCargaCamion" id="filtroCargaCamion" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboCargasCamion as $clave=>$valor) { ?>
							<option value="<?php echo $clave; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroCargaCamion']==$clave) { ?>selected<?php } ?>><?php echo $valor; ?></option>
							<?php } ?>
						</select>
						</td>
                        <?php } else { ?>
                        <input type="hidden" name="filtroCargaCamion" id="filtroCargaCamion" value=""/>
                        <?php } ?>
                        
                        <td>
						Código:<br />
						<select name="filtroCodigoProducto" id="filtroCodigoProducto" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboCodigoProducto as $item) { ?>
							<option value="<?php echo $item; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroCodigoProducto']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
							<?php } ?>
						</select>
						</td>
						<td>
						Producto:<br />
						<select name="filtroProducto" id="filtroProducto" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboProductos as $item) { ?>
							<option value="<?php echo $item; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroProducto']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
							<?php } ?>
						</select>
						</td>
                        
                        <?php if($mostrarFechaEntregaRecepcionCompra) { ?>
                        <td>
						Fecha entrega:<br />
						<select name="filtroFechaEntrega" id="filtroFechaEntrega" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboFechaEntrega as $item) { ?>
							<option value="<?php echo $item; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroFechaEntrega']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
							<?php } ?>
						</select>
						</td>
                        <?php } else { ?>
                        <input type="hidden" name="filtroFechaEntrega" id="filtroFechaEntrega" value=""/>
                        <?php } ?>
                        
                        <?php if($recepcionConCrossdocking) { ?>
                        <td>
						Pedido venta:<br />
						<select name="filtroPedidoVenta" id="filtroPedidoVenta" class="campo selectorFiltro" style="width:200px">
							<option value="">---</option>
							<?php foreach($comboPedidosVenta as $item) { ?>
							<option value="<?php echo $item; ?>" <?php if($_SESSION['filtrosRecepcionCompra']['filtroPedidoVenta']==$item) { ?>selected<?php } ?>><?php echo $item; ?></option>
							<?php } ?>
						</select>
						</td>
                        <?php } else { ?>
                        <input type="hidden" name="filtroPedidoVenta" id="filtroPedidoVenta" value=""/>
                        <?php } ?>
                        
						<td>
						<img id="filtroApagado" src="<?php echo DIR_IMAGENES; ?>/botones/filter-off.png" alt="Filtro" style="width:60px;height:60px;"/>
						<img id="aplicarFiltro" src="<?php echo DIR_IMAGENES; ?>/botones/filter.png" alt="Filtro" style="display:none;width:60px;height:60px;cursor:pointer;"/>
						<img id="quitarFiltro" src="<?php echo DIR_IMAGENES; ?>/botones/filter-remove.png" alt="Filtro" style="display:none;width:60px;height:60px;cursor:pointer"/>
						</td>
					</tr>
				</table>
				
			</div>
			
			<script>
			
				function actualizaFiltrosVariablesSesion() {
			
					$.post( '<?php echo $rutaHtml; ?>/contenidos/recepcion-compra-filtros.php?<?php foreach(unserialize(FILTROS_RECEPCION_COMPRA) as $filtro) { echo $filtro."='+$('#".$filtro."').val()+'&"; } ?>' );
							
				}
			
				function repintarTabla() {
			
					$(".lineaOrden").children('td').css('background-color','#ffffff');
					$(".lineaOrden").children('td').css('border-bottom','');
					$(".lineaOrden").children('td').css('border-radius','');
					$(".lineaOrden").children('td').css('-mozborder-radius','');
					$(".lineaOrden").children('td').css('-webkit-border-radius','');
				
					var par=true;
					$(".lineaOrden").each(function(){
						if( $(this).is(":visible") ) {
							if(par) $(this).children('td').css('background-color','#ffffff');
							else $(this).children('td').css('background-color','#eeeeee');
							par = !par;
							if( ! $(this).hasClass('noEsUltimaFila')) ultimaFila=$(this);
						}
					});
					
					ultimaFila.children('td').css('border-bottom','1px solid #999999');
					ultimaFila.children('td:first').css('border-radius','0 0 0 15px');
					ultimaFila.children('td:first').css('-mozborder-radius','0 0 0 15px');
					ultimaFila.children('td:first').css('-webkit-border-radius','0 0 0 15px');
					ultimaFila.children('td:last').css('border-radius','0 0 15px 0');
					ultimaFila.children('td:last').css('-mozborder-radius','0 0 15px 0');
					ultimaFila.children('td:last').css('-webkit-border-radius','0 0 15px 0');
				
				}
				
				function aplicarFiltro(id) {
				
					if( $('#filtroPedido').val()=='' && $('#filtroCodigoProducto').val()=='' && $('#filtroProducto').val()=='' && $('#filtroCargaCamion').val()=='' && $('#filtroFechaEntrega').val()=='' && $('#filtroPedidoVenta').val()=='' ) {
						$('#filtroApagado').show();
						$('#quitarFiltro').hide();
						$('#aplicarFiltro').hide();
					}
					else  {
						$('#filtroApagado').hide();
						$('#quitarFiltro').show();
						$('#aplicarFiltro').hide();
					}
					
					
					
					$('.lineaOrden').each(function() {
					
						var coincidenciaPedido=false;
						var coincidenciaProducto=false;
						var coincidenciaCodigoProducto=false;
						var coincidenciaCargaCamion=false;
						var coincidenciaFechaEntrega=false;
						var coincidenciaPedidoVenta=false;
					
						if( $('#filtroPedido').val()!='' && $(this).attr('pedido')==$('#filtroPedido').val() ) coincidenciaPedido=true;
						else if( $('#filtroPedido').val()=='' ) coincidenciaPedido=true;
						
						if( $('#filtroProducto').val()!='' && $(this).attr('producto')==$('#filtroProducto').val() ) coincidenciaProducto=true;
						else if( $('#filtroProducto').val()=='' ) coincidenciaProducto=true;
						
						if( $('#filtroCodigoProducto').val()!='' && $(this).attr('codigoProducto')==$('#filtroCodigoProducto').val() ) coincidenciaCodigoProducto=true;
						else if( $('#filtroCodigoProducto').val()=='' ) coincidenciaCodigoProducto=true;
						
						if( $('#filtroCargaCamion').val()!='' && $(this).attr('cargaCamion').includes($('#filtroCargaCamion').val()) ) coincidenciaCargaCamion=true;
						else if( $('#filtroCargaCamion').val()=='' ) coincidenciaCargaCamion=true;
						
						if( $('#filtroFechaEntrega').val()!='' && $(this).attr('fechaEntrega').includes($('#filtroFechaEntrega').val()) ) coincidenciaFechaEntrega=true;
						else if( $('#filtroFechaEntrega').val()=='' ) coincidenciaFechaEntrega=true;
						
						if( $('#filtroPedidoVenta').val()!='' && $(this).attr('pedidoVenta')==$('#filtroPedidoVenta').val() ) coincidenciaPedidoVenta=true;
						else if( $('#filtroPedidoVenta').val()=='' ) coincidenciaPedidoVenta=true;
					
						if( coincidenciaPedido && coincidenciaProducto && coincidenciaCodigoProducto && coincidenciaCargaCamion && coincidenciaFechaEntrega && coincidenciaPedidoVenta ) $(this).show();
						else $(this).hide();
					});
					
			
					//Revertimos el check actual si viniera de la linea acutomatico porque confunde al filtrar
					if(id) {
						if( $('#'+id).is(":checked") ) $('#'+id).prop("checked",false);
						else $('#'+id).prop("checked",true);
					}
			
					repintarTabla();
					
					actualizaFiltrosVariablesSesion();
				
				}
			
				$(document).ready(function() {
					
					$('.selectorFiltro').on("change",function() {
						aplicarFiltro();
					});
					
					$('#quitarFiltro').on("click",function() {
				
						$('#filtroPedido option:selected').removeProp('selected');
						$('#filtroPedido option[value=""]').prop('selected',true);
						
						$('#filtroProducto option:selected').removeProp('selected');
						$('#filtroProducto option[value=""]').prop('selected',true);
						
						$('#filtroCodigoProducto option:selected').removeProp('selected');
						$('#filtroCodigoProducto option[value=""]').prop('selected',true);
						
						$('#filtroCargaCamion option:selected').removeProp('selected');
						$('#filtroCargaCamion option[value=""]').prop('selected',true);
						
						$('#filtroFechaEntrega option:selected').removeProp('selected');
						$('#filtroFechaEntrega option[value=""]').prop('selected',true);
						
						if( !$('#crossdocking_agrupado_pedidoVenta').val() ) {
						
							$('#filtroPedidoVenta option:selected').removeProp('selected');
							$('#filtroPedidoVenta option[value=""]').prop('selected',true);
						
						}
						
						if( !$('#crossdocking_agrupado_pedidoVenta').val() ) {
						
							$('#filtroApagado').show();
							$('#quitarFiltro').hide();
							$('#aplicarFiltro').hide();
							
							$(".lineaOrden").show();
							
						}
						else {
						
							aplicarFiltro();
						
						}
			
						
						
						repintarTabla();
						
						actualizaFiltrosVariablesSesion();
						
					});
					
					$('.verNumerosSerie').on('click',function(){
						$.post('<?php echo $rutaHtml; ?>/contenidos/orden-preparacion-numeros-serie.php' , { 'numeros' : $(this).attr('numeros') , 'ocultarPreparado' : 'si' })
						.done(function(data) {
							$('#popupNumerosSerieContenido').html(data);
							$('#popupNumerosSerie').show();
							$('#popupNumerosSerieContenido').show();
							
							var posicion=$(document).scrollTop();
							$('#popupNumerosSerieContenido').offset({ top: posicion+20 });
						});
					});
					
					<?php if($controlCargaObligatorio) { ?>
					$('#controlCargaNumCarga').val( $('#filtroCargaCamion').val() );
					<?php } ?>
					
				});
				
				function bloqueaComboFiltroPedidoVenta(pedido='') {
				
					let contenido='';
					
					if(pedido) {
						contenido='<option value="'+pedido+'" selected>'+pedido+'</option>';
						$('#filtroPedidoVenta').addClass('deshabilitado');
					}
					else {
						contenido='<option value="">---</option>';
						<?php foreach($comboPedidosVenta as $item) { ?>
						contenido+='<option value="<?php echo $item; ?>"><?php echo $item; ?></option>';
						<?php } ?>
						$('#filtroPedidoVenta').removeClass('deshabilitado');
					}
					
					$('#filtroPedidoVenta').html(contenido);
					
				}
				
				if( $('#crossdocking_agrupado_pedidoVenta').val() ) {
					bloqueaComboFiltroPedidoVenta('<?php echo $_SESSION['recepcionCompraCrossdocking'][$indiceCrossdocking]['crossdocking_agrupado_pedidoVenta']; ?>');
				}
				
				aplicarFiltro();
			
			</script>
			
		
		<?php } ?>
		
		</div> <!-- classe estilosOP -->
	
	<?php
	} //Fin no hay error en listado proveedores con compras pendientes
	else {
		?><p>No hay ninguna recepción de compra pendiente.</p><?php
	}

} //Fin if continuar

if(isset($modoLecturaRecepcionCompraMostrarMenu)) $mostrarModoLectura=$modoLecturaRecepcionCompraMostrarMenu; else $mostrarModoLectura=true;
$noMostrarInfo=true;
include($rutaPhp.$rutaHtml.'/maqueta/menu-recepcion-compra.php');

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