| Código ORP | Producto | Lotes | Cantidad Total | Acciones | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @endif @foreach ($orpAgrupadas as $orpId => $contadores) @php $orp = $contadores->first()->orp; $completado = ''; // Filtrar los contadores cuyo tipo sea 'Total' $contadoresTotales = $contadores->filter(function ($contador) { return $contador->tipo === 'Total'; // Asegúrate de que 'tipo' sea el campo correcto }); if ($contadoresTotales->isNotEmpty()) { $completado = 'Completado'; // Si se encuentra un "Total", poner "Completado" } // Si no hay 'Total', filtrar por 'Total por turno' y 'Total para muestras' if ($contadoresTotales->isEmpty()) { $contadoresTotales = $contadores->filter(function ($contador) { return $contador->tipo === 'Total Por Turno'; }); } // Si no hay ninguno de los anteriores, tomar el último de tipo 'Parcial', asegurando que la colección esté ordenada if ($contadoresTotales->isEmpty()) { $ultimoParcial = $contadores ->filter(function ($contador) { return $contador->tipo === 'Parcial'; }) ->sortByDesc('created_at') ->first(); // Ordenamos por fecha (o el campo que corresponda) $cantidadTotal = $ultimoParcial ? $ultimoParcial->cantidad : 0; // Si hay un 'Parcial', tomar su cantidad, si no, poner 0 $completado = ''; // No hay "Completado" } else { // Sumar la cantidad de los contadores filtrados $cantidadTotal = $contadoresTotales->sum('cantidad'); } @endphp | ||||||||||||||||
| {{ $orp->codigo }} | {{ $orp->producto->nombre }} | {{ $orp->lote/1 }} | {{ $cantidadTotal }} @if ($completado) {{ $completado }} @endif | @if (auth()->user()->role->rolModuloPermisos->where('modulo_id', 16)->where('permiso_id', 1)->isNotEmpty()) @endif | ||||||||||||
|
||||||||||||||||