{{-- Painel de TV — a mesma tela para todo setor que tem fila própria. É uma tela de aviso pendurada na parede, não um dashboard: quem passa na sala precisa saber, em dois segundos e a três metros de distância, o que entrou, o que está parado e quanto tem na fila. Tudo que não responde a uma dessas três perguntas ficou de fora — inclusive a série de 12 meses, que é número de gestão e se lê sentado, no relatório. O que muda de um setor para outro são só as variáveis abaixo; os números já chegam prontos do controller, recortados pelo destinatário da fila. O som é diferente de propósito: quem passa pelo corredor precisa saber de qual painel veio o aviso sem olhar para a tela. $painelTitulo string — título da aba e do cabeçalho $painelRefresh string — URL que devolve o JSON de atualização $painelAudio string — som tocado quando entra chamado novo $painelMovimento array|null — entradas/saídas de estoque do dia (Logística) --}} @php $painelTitulo ??= 'Painel TI'; $painelRefresh ??= route('painel_page'); // Padrão de segurança, não a escolha de ninguém: cada painel declara o seu // som no controller. Um arquivo de nome genérico compartilhado entre as // duas TVs já trocou o aviso de um setor quando o outro foi atualizado. $painelAudio ??= asset('audio/notification.mp3'); $painelMovimento ??= null; @endphp {{ $painelTitulo }} @vite(['resources/js/app.js', 'resources/css/app.css'])
{{ $painelTitulo }} {{ count($chamados) }} chamados em acompanhamento {{-- Aparece só quando o navegador está barrando o som. Não é decoração: sem ele o aviso sonoro some em silêncio e ninguém descobre. --}} Monitor online --:--
{{ $openTicketsCount }} Na fila
{{ $contador }} Abertos hoje
{{ $contador_ }} Solucionados hoje
{{-- Movimento do dia contado em itens, não em chamados: um chamado empilha vários produtos e cada um tem o seu sentido. --}} @if ($painelMovimento)
{{ $painelMovimento['entradas'] }} Entradas hoje
{{ $painelMovimento['saidas'] }} Saídas hoje
@endif
{{ $staleCount }} Sem resposta
@include('admin.painel.painel-page')