@extends('layouts.atelier') @section('title', 'Session #' . $session->id) @section('page-title', 'Détail session #' . $session->id) @section('topbar-actions') CSV ← Historique @endsection @section('content') {{-- Wrapper pour LiveSession JS (data-session-statut sert au JS pour choisir l'intervalle) --}}
{{-- Résumé --}}
Type
@if($session->type === 'batch') Lot @else Unitaire @endif
Marque
{{ ucfirst($session->brand) }}
Total
{{ $session->total }}
Succès
{{ $session->succes }}
Erreurs
{{ $session->erreurs }}
Statut
@if($session->statut === 'termine') Terminé @elseif($session->statut === 'erreur_partielle') Partiel @else En cours @endif
Lancé par {{ $session->user?->full_name }} le {{ $session->created_at->format('d/m/Y à H:i:s') }} @if($session->nom) — {{ $session->nom }} @endif
{{-- Opérations --}}
@forelse($operations as $op) {{-- Batterie --}} {{-- Info ESL --}} @empty @endforelse
ID étiquette Batterie Info ESL Ping Reset Confirmé Statut Durée Mode Message
{{ $op->label_id }} @include('partials.battery-icon', ['pct' => $op->battery_pct]) @if($op->esl_status) @php $sc = $op->esl_status === 'online' ? '#10b981' : '#94a3b8'; @endphp {{ $op->esl_status }}
@endif @if($op->screen_size) {{ $op->screen_size }} mm @endif @if($op->firmware) · FW {{ $op->firmware }} @endif @if($op->last_seen_at)
{{ $op->last_seen_at->diffForHumans() }} @endif @if(!$op->esl_status && !$op->screen_size && !$op->firmware) @endif
@if($op->ping_ok === true) OK @elseif($op->ping_ok === false) KO @else @endif @if($op->reset_ok === true) OK @elseif($op->reset_ok === false) KO @else @endif @if($op->confirmed_at) @if($op->ack_status === 'success') ✓ {{ $op->confirmed_at->format('H:i:s') }} @else ✗ Échec ESL @endif @elseif($op->reset_ok === true) En attente… @else @endif @php $badgeMap = [ 'pending' => 'badge-muted', 'checking' => 'badge-info', 'ping_ok' => 'badge-info', 'ping_fail' => 'badge-danger', 'reset_ok' => 'badge-success', 'erreur' => 'badge-danger', ]; @endphp {{ $op->statut }} {{ $op->duration_ms ? $op->duration_ms . ' ms' : '—' }} @if($op->mock) Démo @endif @if($op->error_message) {{ $op->error_message }} @endif @if($op->isError()) @endif
Aucune opération.
{{-- /data-live-session --}} @endsection