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

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

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


$traza=(isset($_GET['traza']) && $_GET['traza']=='si');

$gestionLineas=($_SESSION['parametrosSGA']['GestionLineasTrabajo']=='S');
$gestionTurnos=($_SESSION['parametrosSGA']['GestionTurnosTrabajo']=='S');
$FichajesActividadesVarias=($_SESSION['parametrosSGA']['FichajesActividadesVarias']=='S');
$FichajesActivodEnTransformacion=($_SESSION['parametrosSGA']['FichajesActivodEnTransformacion']=='S');



//13-11-2025 sermasa vé documentos que no corresponden con el control actual, provienen de la variable de sesión de otra pantalla.
unset($_SESSION['documentos']);




if($_GET['procedencia']) $procedencia=$_GET['procedencia'];

if($_GET['palet']) $palet=$_GET['palet'];
if($_GET['transformacion']) $transformacion=$_GET['transformacion'];

if($_GET['empresa']) $empresa=$_GET['empresa'];
if($_GET['producto']) $producto=$_GET['producto'];
if($_GET['productoNombre']) $productoNombre=$_GET['productoNombre'];
if($_GET['regimen']) $regimen=$_GET['regimen'];
if($_GET['idioma']) $idioma=$_GET['idioma'];
if($_GET['lote']) $lote=$_GET['lote'];
if($_GET['caducidad']) $caducidad=$_GET['caducidad'];
if($_GET['precinta']) $precinta=$_GET['precinta'];
if($_GET['lineaTrabajo']) $lineaTrabajo=$_GET['lineaTrabajo'];
if($_GET['lineaTrabajoNombre']) $lineaTrabajoNombre=$_GET['lineaTrabajoNombre'];
if($_GET['turnoTrabajo']) $turnoTrabajo=$_GET['turnoTrabajo'];
if($_GET['turnoTrabajoNombre']) $turnoTrabajoNombre=$_GET['turnoTrabajoNombre'];

if($_GET['cliente']) $cliente=$_GET['cliente'];

if($_GET['ordinal']) $ordinal=$_GET['ordinal'];
if($_GET['ordinalConcepto']) $ordinalConcepto=$_GET['ordinalConcepto'];

$bloquearEdicionRevision=false;

//echo '<p>procedencia: '.$procedencia.'</p>';

switch($procedencia) {

	case 'limpieza_revision' :
	
		$titulo='Control de calidad de limpieza en línea';
		$procesoObtencionDatos='INSPECCION';
		$tipoAutocontrol='L';
		$procesoCierre='CIERREAUTOCONTROLCALIDAD';
		
		$urlVolver='calidad-controles-autocontroles-linea.php';
		
		//$bloquearEdicionRevision=true; //En la revision tb se pueden editar los items
	
		break;
		
	case 'autocontrol_revision' :
	
		$titulo='Control de calidad en línea';
		$procesoObtencionDatos='INSPECCION';
		$tipoAutocontrol='S';
		$procesoCierre='CIERREAUTOCONTROLCALIDAD';
	
		$urlVolver='calidad-controles-autocontroles-linea.php';
	
		//$bloquearEdicionRevision=true; //En la revision tb se pueden editar los items
	
		break;

	case 'limpieza' :
	
		if($ordinalConcepto=='FIN') {
			$urlVolverAlEnviar='operaciones-logisticas.php';
		}
		else {
			$urlVolverAlEnviar='';
		}
	
		$titulo='Control de limpieza en línea al '.strtolower($ordinalConcepto);
		$procesoObtencionDatos='INSPECCION';
		$tipoAutocontrol='L';
		$procesoCierre='AUTOCONTROLCALIDAD';
	
		$urlVolver='operacion-logistica-transformacion.php';
		$urlVolver.='?operacion='.$transformacion;
		$urlVolver.='&empresa='.$empresa;
		$urlVolver.='&codigo='.$producto;
		$urlVolver.='&idioma='.$idioma;
		$urlVolver.='&lote='.$lote;
		$urlVolver.='&caducidad='.$caducidad;
		$urlVolver.='&precinta='.$precinta;
		$urlVolver.='&lineaTrabajo='.$lineaTrabajo;
		$urlVolver.='&lineaTrabajoNombre='.$lineaTrabajoNombre;
		$urlVolver.='&turnoTrabajo='.$turnoTrabajo;
		$urlVolver.='&turnoTrabajoNombre='.$turnoTrabajoNombre;
		
		
		
		break;
		
	case 'autocontrol' :
	
		$titulo='Autocontrol de calidad en línea';
		$procesoObtencionDatos='INSPECCION';
		$tipoAutocontrol='S';
		$procesoCierre='AUTOCONTROLCALIDAD';
	
		$urlVolver='operacion-logistica-transformacion.php';
		$urlVolver.='?operacion='.$transformacion;
		$urlVolver.='&empresa='.$empresa;
		$urlVolver.='&codigo='.$producto;
		$urlVolver.='&idioma='.$idioma;
		$urlVolver.='&lote='.$lote;
		$urlVolver.='&caducidad='.$caducidad;
		$urlVolver.='&precinta='.$precinta;
		$urlVolver.='&lineaTrabajo='.$lineaTrabajo;
		$urlVolver.='&lineaTrabajoNombre='.$lineaTrabajoNombre;
		$urlVolver.='&turnoTrabajo='.$turnoTrabajo;
		$urlVolver.='&turnoTrabajoNombre='.$turnoTrabajoNombre;
		
		$urlVolver.='&scroll=bloqueAutocontroles';
		
		break;
		
	default:
	
		if($palet) { //15-12-205 TICKET 25071729
	
			$titulo='Control de calidad';
			$procedencia='palets';
			
			$procesoObtencionDatos='INSPECCION';
			$tipoAutocontrol='';
			$procesoCierre='CIERRECALIDAD';
			
			$urlVolver='calidad-controles-pendientes.php';
			
		}
		else {
		
			$urlVolver='index.php';
		
		}
}

//echo 'urlVolver: '.$urlVolver.'</p>';

$gestionLineas=($_SESSION['parametrosSGA']['GestionLineasTrabajo']=='S');
$gestionTurnos=($_SESSION['parametrosSGA']['GestionTurnosTrabajo']=='S');



if($procedencia=='palets') {

	//Recarga de datos
	$peticion='SGAControlesCalidad#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#LISTADOPENDIENTES#'.$palet.';'.$transformacion;
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	if($traza) {
		echo '<p>'.$peticion.'</p>';
		print_r($resultado);
	}
	
	$listado=arreglaArrayPXMobileProxiumResult($resultado[0]['ControlesCalidadPendientes']);
	
	//27-12-2022 pasando como ultimo parametro el palet, ya llega filtrado y con los bloques de datos adicionales (que hemos liberado del listado)
	$lineaPalet=$listado['PXMobileProxiumResult'];
	
	//03-08-2023 TICKET 23053390
    $asociarSSCC=($_SESSION['parametrosSGA']['AsociarSSCC']=='S' && $lineaPalet['SSCCRequeridoPorCliente']=='S');

}

if( ($procedencia=='palets' && $lineaPalet) || $procedencia!='palets' ) {

	if($procedencia=='palets') {
	
		$_SESSION['ProductosUtilizados']=arreglaArrayPXMobileProxiumResult($lineaPalet['ProductosUtilizados']); //Esto para el detalle del producto
		
		//DOCUMENTOS
		if( $lineaPalet['Documentos'] ) {
			$_SESSION['documentos']=arreglaArrayPXMobileProxiumResult($lineaPalet['Documentos']);
			$mostrarMenuDocumentos=true;
		}
		else unset($_SESSION['documentos']);
		
		
	
		$lotes=array();
		foreach(arreglaArrayPXMobileProxiumResult($lineaPalet['Lotes']) as $item) $lotes[]=$item;
		$cuantosLotes=count($lotes);
	
	
		$parametros=$lineaPalet['Transformacion'].';'.$lineaPalet['Producto'].';'.$lineaPalet['Cliente'].';'.$lineaPalet['Palet'].';'.$lineaPalet['FechaHoraCierre'].';'.$lineaPalet['LineaTrabajo'].';'.$lineaPalet['Turno'];
	
	}
	//else if($procedencia=='autocontrol' || $procedencia=='autocontrol_revision') {
	else {
		
		$parametros=$transformacion.';'.$producto.';'.$cliente.';;;'.$lineaTrabajo.';'.$turnoTrabajo;
		
		//29-06-2023 para que si no es control de palets, el boton [i] que muestra los productos utilizados, no se muestre
		$ocultarBotonInfo=true;
	
	}

	
	if($_POST['enviar']==1) {
	
		//En el caso de las limpiezas, volvemos a cargar los datos, para obtener todos los items y ver si están todos marcados o no
		if($tipoAutocontrol=='L') {
		
			$peticion='SGAControlesCalidad#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$procesoObtencionDatos.'#'.$parametros.';'.$tipoAutocontrol.';'.$ordinal.';'.$ordinalConcepto;
			$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
			
			$inspeccion=$resultado[0];
			$caracteristicas=arreglaArrayPXMobileProxiumResult($inspeccion['CaracteristicasCalidad']);
			
			//27-12-2023 Esto lo comento porque no encuentro que se use ahora para nada
			//$todasLasCaracteristicasMarcadas=true;
		
		}
		
		
		// 27-12-2023 LA CADENA DE IDENTIFICADORES, PARA QUE TAMBIEN SE GRABEN EN LA REVISION 
		$cadenaIdentificadoresMandados='';
			
		foreach($_POST as $campo=>$valor) {
		
			if(substr($campo,0,6)=='opcion') {
					
				$identificador=substr($campo,6,strlen($campo));
				$cadenaIdentificadoresMandados.=$identificador.'|'.$_POST['opcion'.$identificador].'|'.$_POST['observaciones'.$identificador].'~';
					
			}
			
		}
		
		
		
		if( $procedencia=='autocontrol_revision' || $procedencia=='limpieza_revision' ) {
		
			if($_POST['resultadoInspeccion']=='Aceptado') $resultadoInspeccion='S'; else $resultadoInspeccion='N';
		
			$parametrosCierre=$transformacion.'¬'.$tipoAutocontrol.'¬'.$ordinal.'¬'.$resultadoInspeccion.'¬'.$ordinalConcepto;
			
			// 27-12-2023
			$parametrosCierre.='¬'.$cadenaIdentificadoresMandados;
			
			$peticion ='SGAControlesCalidad#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$procesoCierre.'#'.$parametrosCierre;
		
		}
		else {
		
			//echo '<p>Traza envio autocontrol limpieza</p>';
			//echo '<p>procesoCierre: '.$procesoCierre.'</p>';
			//echo '<p>Parametros: '.$parametros.'</p>';
		
			$peticion ='SGAControlesCalidad#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$procesoCierre.'#'.$parametros;
			
			$peticion.=';'.$_POST['cantidadRevisada'].';'.$_POST['resultadoInspeccion'].';'.arreglaSaltosLimpiaCaracteresProhibidos($_POST['observacionesNoConformidad']).';';
			
			// LA CADENA DE IDENTIFICADORES Y OBSERVACIONES, ANTES SOLO SE PASABA EN LOS AUTOCONTROLES, PERO NO EN LAS REVISIONES
			$peticion.=$cadenaIdentificadoresMandados;
			// 27-12-2023 AHORA LO SACO FUERA, PARA QUE TAMBIEN SE GRABEN EN LA REVISION 
			/*
			$cadenaIdentificadoresMandados=array();
			
			foreach($_POST as $campo=>$valor) {
			
				if(substr($campo,0,6)=='opcion') {
					
					$identificador=substr($campo,6,strlen($campo));
					$peticion.=$identificador.'|'.$_POST['opcion'.$identificador].'|'.$_POST['observaciones'.$identificador].'¬';
					
					$cadenaIdentificadoresMandados[]=$identificador;
					
				}
			
			}
			*/
			
			//Control para ver si todas han sido marcadas, en el caso de limpiezas, controla la redireccion
			//27-12-2023 Esto lo comento porque no encuentro que se use ahora para nada
			/*
			foreach($caracteristicas as $item) {
				if(!in_array($item['CaracteristicaCod'],$cadenaIdentificadoresMandados)) $todasLasCaracteristicasMarcadas=false;
			}
			*/
			
			$peticion.=';'.$tipoAutocontrol;
			$peticion.=';'.$ordinal;
			$peticion.=';'.$ordinalConcepto;
			
			
			
			//22-12-2025 fichajes
			if($FichajesActivodEnTransformacion) {
			
				$cadenaOperarios='';
			
				foreach($_POST as $clave=>$valor) {
					if(substr($clave,0,17)=='selectorOperario-') {
						if($valor) {
							$operario=substr($clave,17,strlen($clave));
							if($cadenaOperarios!='') $cadenaOperarios.=',';
							$cadenaOperarios.=$operario;
						}
					}
				}
				
				if($cadenaOperarios) $peticion.='#'.$cadenaOperarios;
			
			}
			
			
			
		}
		
		
		$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
		
		
		if($traza) {
			echo '<p>Procesamiento</p>';
			echo '<p>'.$peticion.'</p>';
			print_r($resultado);
		}
		
		$valores=explode('#',$resultado[0]['Error']);
		
		if($valores[0]=='0') {
		
			if($asociarSSCC && $_POST['SSCC']) {
			
				$cadenaPalet=$lineaPalet['Palet'].',,'.$_POST['SSCC'];
		
				$peticion='SGATipificarPalets#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$_SESSION['almacen'].'#'.$cadenaPalet;
				$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
				
			}
		
			?>
            <script>
				alert('<?php echo $valores[1]; ?>',null,'ok')
				.done(function(){
					<?php if($_GET['traza']!='si') { ?>
					$('#popupCargando').show();
					window.location='<?php if($urlVolverAlEnviar) echo $urlVolverAlEnviar; else echo $urlVolver; ?>';
					<?php } ?>
				});
            </script>
            <?php
		}
		else {
			?>
            <script>alert('ERROR: <?php echo $valores[1]; ?>',null,'error');</script>
            <?php
		}
	
	}
	
	
	$peticion='SGAControlesCalidad#'.$_SESSION['empresa'].'#'.$_SESSION['usuario']['Usuario'].'#'.$procesoObtencionDatos.'#'.$parametros.';'.$tipoAutocontrol.';'.$ordinal.';'.$ordinalConcepto;
	$resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
	
	if($traza) {
		echo "<p>".$peticion."</p>";
		print_r($resultado);
	}
	
	if(!$resultado[0]['Error']) {
	
		$inspeccion=$resultado[0];
	
		$caracteristicas=arreglaArrayPXMobileProxiumResult($inspeccion['CaracteristicasCalidad']);
		$paletsObtenidos=arreglaArrayPXMobileProxiumResult($inspeccion['PaletsObtenidos']);
		
		//$bloquearEdicion=( $procedencia=='autocontrol_revision' || $inspeccion['ValidacionResultado'] );
		$bloquearEdicion=( $inspeccion['ValidacionFecha'] );
		
		?>
        
        <form id="fomularioCalidad" name="fomularioCalidad" method="post" action="">
        
		<h2><?php echo $titulo; ?></h2>
        
        <div id="popupDocumentos" class="popup" style="display:none"></div>
		<div id="popupDocumentosContenido" class="popupContenidoScroll" style="display:none"></div>
        
        <div id="popupInfoProductoObtenido" class="popup" style="display:none"></div>
		<div id="popupInfoProductoObtenidoContenido" class="popupContenidoScroll" style="display:none"></div>
        
        <?php if($procedencia=='palets') { ?>
        
        	<table class="tablaFormateada2022 anchoMaximo">
            
                <tr style="white-space:nowrap">
                
                    <th>Palet</th>
                    <th>Producto</th>
                    <th>Descripción</th>
                    
                    <?php $traductorComportamientosGestion=array('REGE'=>'GestionRegimen','LT'=>'GestionLote','FCAD'=>'GestionCaducidad','IDI'=>'GestionIdioma','PRECEMP'=>'GestionPrecinta'); ?> 
                    <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                        <?php if($comportamiento['Activo']=='S' && $lineaPalet[$traductorComportamientosGestion[$comportamiento['Codigo']]]=='S') { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
                    <?php } ?>
                    
                    <th>Cantidad</th>
                    <th>Transformación</th>
                    <th>Ref. Cliente</th>
                    <th>Cierre</th>
                    <?php if($gestionLineas) { ?>
                    <th>Linea</th>
                    <?php } ?>
                    <?php if($gestionTurnos) { ?>
                    <th>Turno</th>
                    <?php } ?>
                    <th>Usuario</th>
                </tr>
            
                <tr>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['Palet']; ?></td>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['Producto']; ?></td>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['ProductoNombre']; ?></td>
                    
                    <?php
                    $traductorComportamientos=array('REGE'=>'Regimen','LT'=>'NumLote','FCAD'=>'FechaCaducidad','IDI'=>'Idioma','PRECEMP'=>'Precinta');
                    ?>
                    <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                        <?php if($comportamiento['Activo']=='S' && $lineaPalet[$traductorComportamientosGestion[$comportamiento['Codigo']]]=='S') { ?>
                        <td valign="middle">
                        <?php echo formateaTipo($lotes[0][$traductorComportamientos[$comportamiento['Codigo']]],$comportamiento['Tipo']); ?>					</td>
                        <?php } ?>
                    <?php } ?>
                    
                    <td><?php echo formateaNumeroDecimal($lotes[0]['Cantidad'],true); ?></td>
                    
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['Transformacion']; ?></td>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['RefCliente']; ?></td>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['FechaHoraCierre']; ?></td>
                    <?php if($gestionLineas) { ?>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['LineaTrabajoNombre']; ?></td>
                    <?php } ?>
                    <?php if($gestionTurnos) { ?>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['TurnoNombre']; ?></td>
                    <?php } ?>
                    <td rowspan="<?php echo $cuantosLotes; ?>"><?php echo $lineaPalet['Usuario']; ?></td>  
                    
                </tr>
                
                 <?php if($cuantosLotes>1) { ?>
                
                	<?php for($i=1;$i<$cuantosLotes;$i++) { ?>
                
                    <tr>
                    
                        <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                            <?php if($comportamiento['Activo']=='S' && $lineaPalet[$traductorComportamientosGestion[$comportamiento['Codigo']]]=='S') { ?>
                            <td valign="middle">
                            <?php echo formateaTipo($lotes[$i][$traductorComportamientos[$comportamiento['Codigo']]],$comportamiento['Tipo']); ?>						</td>
                            <?php } ?>
                        <?php } ?>
                        <!--
                        <td><?php echo $lotes[$i]['NumLote']; ?></td>
                        <td><?php echo fechaNacional(fechaDesdeProxium($lotes[$i]['FechaCaducidad'])); ?></td>
                        -->
                        
                        <td><?php echo formateaNumeroDecimal($lotes[$i]['Cantidad'],true); ?></td>
                    </tr>
                
                	<?php } ?>
                
            	<?php } ?>
            
            </table>
            
            <?php if($asociarSSCC) { ?>
            
            <table class="tablaFormateada" style="text-align:left;margin-top:20px;">
            	<tr>
                    <th align="center"><strong>SSCC</strong></th>
                </tr>
                <tr>
                   <td><div class="campoOrdenPreparacionBloque" style="width:410px;margin-left:70px;"> <img src="<?php echo DIR_IMAGENES; ?>/teclado.png" alt="Mostrar teclado" class="iconoTeclado" id="tecladoSSCC" />
                           <input name="SSCC" type="text" class="campo campoOrdenPreparacion" id="SSCC" autocomplete="off" style="width:350px;left:0" value="<?php echo $lineaPalet['SSCC']; ?>"/>
                     <img src="<?php echo DIR_IMAGENES; ?>/x.png" alt="Borrar" id="borrarSSCC" class="boton-x campoOrdenPreparacionBorrar"/> </div></td>
                 </tr>
             </table>
            
            <?php } ?>
            
        <?php } //Fin encabezado para control de palets ?>
        
        
        
        
        
        <?php if($procedencia=='autocontrol' || $procedencia=='autocontrol_revision') { ?>
        
            <table class="tablaFormateada2022 anchoMaximo">
            
                <tr style="white-space:nowrap">
                    
                    <th>Producto</th>
                    <th>Descripción</th>
                    
                    <?php $traductorComportamientosGestion=array('REGE'=>'GestionRegimen','LT'=>'GestionLote','FCAD'=>'GestionCaducidad','IDI'=>'GestionIdioma','PRECEMP'=>'GestionPrecinta'); ?> 
                    <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                        <?php if($comportamiento['Activo']=='S' && $lineaPalet[$traductorComportamientosGestion[$comportamiento['Codigo']]]=='S') { ?><th><?php echo $comportamiento['Nombre']; ?></th><?php } ?>
                    <?php } ?>
                    
                    <th>Transformación</th>
                    
                    <?php if($gestionLineas) { ?>
                    <th>Linea</th>
                    <?php } ?>
                    <?php if($gestionTurnos) { ?>
                    <th>Turno</th>
                    <?php } ?>
                    
                </tr>
            
                <tr>
                    
                    <td><?php echo $producto; ?></td>
                    <td><?php echo $productoNombre; ?></td>
                    
                    <?php
					$traductorComportamientosGestion=array('REGE'=>'GestionRegimen','LT'=>'GestionLote','FCAD'=>'GestionCaducidad','IDI'=>'GestionIdioma','PRECEMP'=>'GestionPrecinta');
                    $traductorComportamientosValores=array('REGE'=>$regimen,'LT'=>$lote,'FCAD'=>$caducidad,'IDI'=>$idioma,'PRECEMP'=>$precinta);
                    ?>
                    <?php foreach($_SESSION['comportamientos'] as $comportamiento) { ?>
                        <?php if($comportamiento['Activo']=='S' && $lineaPalet[$traductorComportamientosGestion[$comportamiento['Codigo']]]=='S') { ?>
                        <td valign="middle">
                        <?php echo formateaTipo($traductorComportamientosValores[$comportamiento['Codigo']],$comportamiento['Tipo']); ?>
                        </td>
                        <?php } ?>
                    <?php } ?>
                    
                    <td><?php echo $transformacion; ?></td>
                    
                    <?php if($gestionLineas) { ?>
                    <td><?php echo $lineaTrabajoNombre; ?></td>
                    <?php } ?>
                    <?php if($gestionTurnos) { ?>
                    <td><?php echo $turnoTrabajoNombre; ?></td>
                    <?php } ?>
                    
                </tr>
            
            </table>
            
        <?php } //Fin encabezado para autocontrol ?>
        
        
        
        
        <?php if($lineaPalet['Reprocesado']=='S') { ?>
        
        <p class="error parpadea"><img src="img_nx/iconos/advertencia.png" style="width:60px;height:60px"/><br>
        Este palet procede de un reproceso</p>
        
        <?php } ?>
        
        
        
        <?php if($procedencia=='palets') { ?>
        
            <p>Criterios de inspección:</p>
            
            <table class="tablaFormateada">
            
                <tr>
                    <th style="width:110px">Tipo Inspección</th>
                    <th style="width:110px">Cantidad estimada<br />
                    fabricación</th>
                    <th style="width:110px">Cantidad teórica<br />a inspeccionar</th>
                    <th style="width:110px">Cantidad<br />fabricada</th>
                    <th style="width:110px">Cantidad a<br />inspeccionar</th>
                    <th style="width:110px">Cantidad total<br />
                      inspeccionada</th>
                </tr>
                
                <tr>
                    <td><?php echo $inspeccion['TipoInspeccion']; ?></td>
                    <td><?php echo formateaNumeroDecimal($inspeccion['CantidadEstimadaMuestra'],true); ?></td>
                    <td><?php echo formateaNumeroDecimal($inspeccion['CantidadTeoricaInspeccionar'],true); ?></td>
                    <td><?php echo formateaNumeroDecimal($inspeccion['CantidadFabricada'],true); ?></td>
                    <td><?php echo formateaNumeroDecimal($inspeccion['CantidadInspeccionar'],true); ?></td>
                    <td><?php echo formateaNumeroDecimal($inspeccion['CantidadTotalnspeccionada'],true); ?></td>
                </tr>
                
            </table>
        
        <?php } //Fin criterios de inspeccion para palets ?>
        
        
        <p>Características <?php if($bloquearEdicion) { ?>inspeccionadas<?php } else { ?>a inspeccionar<?php } ?>:</p>
        
        <table class="tablaFormateada">
        
        	<tr>
            	<th>Característica</th>
                <th>Inspección</th>
            	<th>Observaciones</th>
            </tr>
            
            <?php foreach($caracteristicas as $caracteristica) { ?>
            
            <tr>
            	<td align="left"><?php echo $caracteristica['CaracteristicaDescripcion']; ?></td>
                <td style="width:210px">
                
                <?php if( $bloquearEdicion || $bloquearEdicionRevision ) { ?>
                
                	<?php if($caracteristica['CaracteristicaResultado']=='OK') echo 'Ok'; else if($caracteristica['CaracteristicaResultado']=='NOOK') echo 'No ok'; else if($caracteristica['CaracteristicaResultado']=='NA') echo 'No aplica'; ?>
                
                <?php } else { ?>
                
                	<input type="radio" name="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>" id="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>ok" value="OK" class="checkGrande checkPuntoControl" style="vertical-align:sub;" codigo="<?php echo $caracteristica['CaracteristicaCod']; ?>" <?php if($caracteristica['CaracteristicaResultado']=='OK') { ?>checked<?php } ?>/> Ok
                    
                    <input type="radio" name="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>" id="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>nook" value="NOOK" class="checkGrande checkPuntoControl" style="vertical-align:sub;" codigo="<?php echo $caracteristica['CaracteristicaCod']; ?>" <?php if($caracteristica['CaracteristicaResultado']=='NOOK') { ?>checked<?php } ?> /> No
                    
                    <?php if($procedencia=='limpieza' || $procedencia=='limpieza_revision' ) { ?>
                    
                    <input type="radio" name="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>" id="opcion<?php echo $caracteristica['CaracteristicaCod']; ?>na" value="NA" class="checkGrande checkPuntoControl" style="vertical-align:sub;" codigo="<?php echo $caracteristica['CaracteristicaCod']; ?>" <?php if($caracteristica['CaracteristicaResultado']=='NA') { ?>checked<?php } ?> /> N/A
                    
                    <?php } ?>

                
                <?php } ?>
                
                </td>
            	<td>
                
                <?php if( $bloquearEdicion || $bloquearEdicionRevision ) { ?>
                
                	<?php echo $caracteristica['CaracteristicaObservaciones']; ?>
                
                <?php } else { ?>
                
                	<input type="text" name="observaciones<?php echo $caracteristica['CaracteristicaCod']; ?>" id="observaciones<?php echo $caracteristica['CaracteristicaCod']; ?>" class="campo comprimido observaciones" codigo="<?php echo $caracteristica['CaracteristicaCod']; ?>" value="<?php echo $caracteristica['CaracteristicaObservaciones']; ?>" style="text-align:left;width:500px;" autocomplete="off"/>
                
                <?php } ?>
                
                </td>
            </tr>
            
            <?php } ?>
        
        </table>
        
        <?php if($procedencia=='palets') { ?>
        
        <p>Cantidad revisada:<br />
        <input type="text" name="cantidadRevisada" id="cantidadRevisada" class="campo cantidad" style="width:200px"/>
        </p>
        
        <?php } ?>
        
        <?php if($bloquearEdicion) { ?>
        
        	<?php if($procedencia!='limpieza' && $procedencia!='limpieza_revision' ) { ?>
        
            <p>Resultado <?php if($procedencia=='autocontrol' || $procedencia=='autocontrol_revision') { ?>del autocontrol en linea<?php } else { ?>de la Inspeccion<?php } ?>: <strong><?php echo $inspeccion['ResultadoInspeccion']; ?></strong></p>
            
           	<?php } ?>
            
            <?php if($procedencia=='autocontrol' || $procedencia=='limpieza' ) { ?>
            
            	<p>Resultado del control de Calidad:</p>
            
            	<table class="tablaFormateada" style="margin:0 auto">
                <tr>
                    <th>Fecha</th>
                    <th>Hora</th>
                    <th>Usuario</th>
                    <?php if($procedencia!='limpieza') { ?>
                    <th>Resultado</th>
                    <?php } ?>
                </tr>
                <tr>
                    <td><?php echo fechaNacional(fechaDesdeProxium($inspeccion['ValidacionFecha'])); ?></td>
                    <td><?php echo $inspeccion['ValidacionHora']; ?></td>
                    <td><?php echo $inspeccion['ValidacionUsuario']; ?></td>
                    <?php if($procedencia!='limpieza') { ?>
                    <td><strong><?php echo $inspeccion['ValidacionResultado']; ?></strong></td>
                    <?php } ?>
                </tr>
                </table>
            
            <?php } ?>
        
        <?php } ?>
        
        <?php if( ( !$bloquearEdicion || $procedencia=='autocontrol_revision' ) && $procedencia!='limpieza' ) { ?>
        
        <p>Resultado <?php if($procedencia=='autocontrol' || $procedencia=='autocontrol_revision') { ?>del autocontrol<?php } else { ?>de la inspeccion<?php } ?>:</p>
        
        <p>
        <strong>
        <label><input name="resultadoInspeccion" id="resultadoInspeccionAceptada" type="radio" value="Aceptado" class="checkGrande" style="vertical-align:sub;" <?php if( ($inspeccion['ResultadoInspeccion']=='Aceptado' && $procedencia!='autocontrol_revision') || $procedencia=='limpieza_revision') { ?>checked<?php } ?>/> ACEPTADA</label>
        <?php if($procedencia!='limpieza_revision') { ?>
        <label><input name="resultadoInspeccion" id="resultadoInspeccionNoConforme" type="radio" value="No conforme" class="checkGrande" style="vertical-align:sub;margin-left:20px" <?php if($inspeccion['ResultadoInspeccion']=='No conforme' && $procedencia!='autocontrol_revision') { ?>checked<?php } ?>/> NO CONFORME</label>
        <?php } ?>
        </strong>
        </p>
        
        <?php } ?>
      
        
        
        <div id="capaObservacionesNoConformidad" style="display:none">
        
        <?php if($procedencia=='palets') { ?>
        
        <p>Observaciones a la no conformidad:<br />
        <textarea name="observacionesNoConformidad" id="observacionesNoConformidad" cols="45" rows="3" class="campo" style="text-align:left"></textarea>
        </p>
        
        <?php } ?>
        
        </div>
        
        
        
        
        <?php if($FichajesActivodEnTransformacion && $procedencia=='limpieza') { //Esta procedencia "limpieza" es cuando viene de TL y es inicio o fin de proceso ?>
        
        	<?php 
			
			$peticion='ListaDeOperariosFichajes#'.$_SESSION['empresa'];
            $resultado=PedirDatos($wsUsuario,$wsClave,$wsEmpresa,$peticion);
                
            if($traza) {
                echo "<p>".$peticion."</p>";
                print_r($resultado);
            }
            
            $operarios=arreglaArrayPXMobileProxiumResult($resultado[0]['ListaOperarios']);
			
			$listaOperarios=array();
			
			foreach($operarios as $operario) {
            
                $listaFichajes=array();
                
                if(isset($operario['ListaFichajes']) && $operario['ListaFichajes'] ) $listaFichajes=arreglaArrayPXMobileProxiumResult($operario['ListaFichajes']);
                else $listaFichajesCodificada=NULL;
                
                $tieneActividadSeleccionadaEnCurso=false;
                
                foreach($listaFichajes as $fichaje) {
                 
                    if(!$tieneActividadSeleccionadaEnCurso) {
                    
                        $tieneActividadSeleccionadaEnCurso=($fichaje['TipoOperacionFichaje']=='TRAN' && $fichaje['ActividadFichaje']=='PROD' && $fichaje['numeroOperacion']==$transformacion);
                        if($gestionTurnos) $tieneActividadSeleccionadaEnCurso=($tieneActividadSeleccionadaEnCurso && $fichaje['TurnoFichaje']==$turnoTrabajo);
                        if($gestionLineas) $tieneActividadSeleccionadaEnCurso=($tieneActividadSeleccionadaEnCurso && $fichaje['LineaFichaje']==$lineaTrabajo);
                        
                    }
                    
                }
    
                if($tieneActividadSeleccionadaEnCurso) $listaOperarios[]=$operario;
				
            }
			
			//echo '<p>cuantos operarios: '.count($listaOperarios).'</p>';
			
			?>
        
        	<p>
            <?php if($ordinalConcepto=='INICIO') { ?>
            Fichajes activos:
            <?php } else if( $ordinalConcepto=='FIN' && count($listaOperarios)>0 ) { ?>
            Atención: Todos los operarios van a finalizar su fichaje automáticamente.
			<?php } ?>
            </p>
            
            <?php if (count($listaOperarios)>0) { ?>
            
				<?php if($ordinalConcepto=='FIN') { ?>
                    <p style="font-size:1em">Deja marcados aquellos operarios que deseas dejar pre-grabados para el próximo proceso de transformación sobre la orden <?php echo $transformacion; ?>
                    <?php if($gestionTurnos) { ?>Turno <?php echo $turnoTrabajo; ?><?php } ?>
                    <?php if($gestionLineas) { ?> Linea <?php echo $lineaTrabajo; ?><?php } ?>
                    </p>
                <?php } ?>
            
                <table class="tablaFormateada">
                <tr>
                    <?php if($ordinalConcepto=='FIN') { ?>
                    <th>Seleccionar</th>
                    <?php } ?>
                    <th>Nombre</th>
                    <th>Empresa</th>
                </tr>
                
                <?php
                
                
                
                foreach($listaOperarios as $operario) {
                
                    ?>
                
                    <tr class="lineaOrden clicable" codigoUsuario="<?php echo $operario['CodigoUsuario']; ?>" nombreUsuario="<?php echo $operario['NombreCompleto']; ?>" empresa="<?php echo $operario['NombreEmpresaContratante']; ?>" tipoRelacion="<?php echo $operario['TipoDeRelacion']; ?>" multifichaje="<?php echo $operario['MultiFichaje']; ?>" operarioDisponible="<?php echo $operarioDisponible; ?>" estadoActual="<?php echo $operario['EstadoActual']; ?>" style="font-size:1.2em;" >
                        <?php if($ordinalConcepto=='FIN') { ?>
                        <td><input name="selectorOperario-<?php echo $operario['CodigoUsuario']; ?>" id="selectorOperario-<?php echo $operario['CodigoUsuario']; ?>" type="checkbox" value="1" class="checkGrande selectorOperario" checked/></td>
                        <?php } ?>
                        <td style="text-align:left"><?php echo $operario['NombreCompleto']; ?></td>
                        <td><?php echo $operario['NombreEmpresaContratante']; ?></td>
                    </tr>
                    
                    <?php
    
                }
                
                ?>
                
                </table>
            
            <?php } ?>
        
        <?php } ?>
        
        
        
        <input type="hidden" id="enviar" name="enviar" value="" />
        
        <?php if(!$bloquearEdicion || $procedencia=='autocontrol_revision') { ?>
        
		<p><input type="button" name="botonEnviar" id="botonEnviar" value="ENVIAR" class="boton"/></p>
        
        <?php } ?>
        
        </form>
        
        
        
        
        <?php if($procedencia=='palets') { ?>
        
			<?php if(is_array($paletsObtenidos) && count($paletsObtenidos)>0) { ?>
            
                <p>Palets asociados a la inspección:</p>
                
                <table class="tablaFormateada">
                
                    <tr>
                        <th>Palet</th>
                        <th>Cantidad</th>
                        <th>Cierre</th>
                        <th>Usuario</th>
                    </tr>
                    
                    <?php foreach($paletsObtenidos as $palet) { ?>
                    
                    <tr>
                        <td><?php echo $palet['Palet']; ?></td>
                        <td><?php echo $palet['Cantidad']; ?></td>
                        <td><?php echo $palet['FechaHoraCierre']; ?></td>
                        <td><?php echo $palet['Usuario']; ?></td>
                    </tr>
                    
                    <?php } ?>
                
                </table>
            
            <?php } ?>
        
        <?php } ?>
		
		<script>
		
			function enviaFormulario() {
			
				<?php if($procedencia=='autocontrol_revision') { ?>
				var mensaje='Se va a proceder a enviar la conformidad del control de linea.';
				<?php } else { ?>
				var mensaje='Se va a proceder a enviar el control cumplimentado.';
				<?php } ?>
			
				confirm(mensaje+'<br>¿Deseas proceder?','advertencia')
				.done(function(){
					$('#popupCargando').show();
					$('#enviar').val(1);
					$('#fomularioCalidad').submit();
				});
				
			}
		
			function validaCampos() {
			
				var todosCheckeados=true;
				var esAceptada=$('#resultadoInspeccionAceptada').is(':checked');
				var esNoConforme=$('#resultadoInspeccionNoConforme').is(':checked');
				
				$('.checkPuntoControl').each(function(){
					var id=$(this).attr('codigo');
					if( !$('#opcion'+id+'ok').is(':checked') && !$('#opcion'+id+'nook').is(':checked') ) todosCheckeados=false;
				});
				if(false) { }
				<?php if($tipoAutocontrol!='L') { ?>
				else if( !todosCheckeados ){
					alert('ERROR: No se han revisado todos los puntos de control.',null,'error');
				}
				<?php } ?>
				<?php if($procedencia=='palets') { ?>
				else if( $('#cantidadRevisada').val()=='' ){
					alert('ERROR: No has indicado la cantidad revisada.',null,'error')
					.done(function(){
						$('#cantidadRevisada').trigger('click');
					});
				}
				<?php } ?>
				<?php if($tipoAutocontrol!='L') { ?>
				else if( !esAceptada && !esNoConforme ) {
					alert('ERROR: Debes especificar si el resultado de la inspección es satisfactoria o no conforme.',null,'error');
				}
				<?php } ?>
				<?php if($procedencia=='palets') { ?>
				else if( esNoConforme && $('#observacionesNoConformidad').val()=='' ) {
					alert('ERROR: Si el control de calidad es No Conforme,<br>debes especificar algo en el campo Observaciones.',null,'error');
				}
				<?php } ?>
				<?php if($procedencia=='palets' && $asociarSSCC) { ?>
				else if( $('#SSCC').val()=='' ){
					alert('ERROR: No has indicado el SSCC del palet.',null,'error')
					.done(function(){
						$('#SSCC').focus();
					});
				}
				<?php } ?>
				else {
					enviaFormulario();
				}

			
			}
			
			$(document).ready(function() {
			
				$('#resultadoInspeccionAceptada').on('click',function(){
					$('#observacionesNoConformidad').val('');
					$('#capaObservacionesNoConformidad').hide();
				});
			
				$('#resultadoInspeccionNoConforme').on('click',function(){
					$('#capaObservacionesNoConformidad').show();
				});
			
				$('#observacionesNoConformidad').on('click',function(){
		
					var idCampo=$(this).attr('id');
					
					$('#tecladoMultilinea').show();
					$('#valorTecladoMultilinea').val( $(this).val() );
					$('#enterTecladoMultilinea').attr('campoValor', idCampo );
					$('#enterTecladoMultilinea').attr('forzarEnter','no');
					
				});
			
				$('#botonEnviar').on('click',function(){
					
					validaCampos();
				
				});
				
				$('.cantidad').on('click',function(){
			
					$('#calculadora').show();
					$('#valorCalculadora').val( $(this).val() );
					$('#enterCalculadora').attr('campoValor',$(this).attr('id'));
				
				});
				
				$('.observaciones').on('click',function(){
			
					var codigo=$(this).attr('codigo');
				
					$('#teclado').show();
					$('#valor').val( $('#observaciones'+codigo).val() );
					$('#valorOculto').val( $('#observaciones'+codigo).val() );
					$('#enter').attr('campoValor','observaciones'+codigo);
					$('#enter').attr('forzarEnter','no');
				
				});
				
			});
			
		</script>
		
		<?php
	}
	else $error=$resultado[0]['Error'];
	
}
else if($urlVolver=='index.php') {
	$error='1#Error desconocido.';
}
else {
	$error='1#Palet no encontrado en el listado de Controles de Calidad pendientes.';
}

//echo 'error: '.$error.'</p>';
//echo 'urlVolver: '.$urlVolver.'</p>';

if($error) {
	$valores=explode('#',$error);
	//15-12-2025 TICKET 25071729
	if($valores[1]) $errorMostrar=$valores[1];
	else $errorMostrar=$valores[0];
	?>
    <script>
		alert('<?php echo $errorMostrar; ?>',null,'error')
		.done(function(){
			$('#popupCargando').show();
            window.location='<?php echo $urlVolver; ?>';
		});
	</script>
    <?php
}
?>

<script>
        
	$(document).ready(function() {
        
		$('#botonVolver').on("click",function(e){
        	e.preventDefault();
            $('#popupCargando').show();
            window.location='<?php echo $urlVolver; ?>';
		});
		
		<?php if($asociarSSCC) { ?>
		
		$('#tecladoSSCC').on('click',function(){
			
			$('#teclado').show();
			$('#valor').val( $('#SSCC').val() );
			$('#valorOculto').val( $('#SSCC').val() );
			$('#enter').attr('campoValor','SSCC');
			$('#enter').attr('forzarEnter','no');
				
		});
		
		$('#borrarSSCC').on('click',function(){
			
			$('#SSCC').val('');
			$('#SSCC').focus();
				
		});
		
		if($('#SSCC').val()=='') $('#SSCC').focus();
		
		<?php } ?>
    
	});
        
</script>

<?php

if($_SESSION['documentos']) $mostrarMenuDocumentos=true;

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

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