@extends('layouts.public') @php use App\Models\Edicao; @endphp @section('title', 'Diário Oficial - Início') @push('styles') @endpush @section('content')

Consulta de Diários Oficiais

Pesquise por número da edição, ano, ou termos dentro dos documentos.

Dica: use "frase" para busca exata e -termo para excluir.
@if($hasFilter)
Filtros ativos: @php $partes = []; if ($busca !== '') { $partes[] = '"'.e($busca).'"'; } if ($edicaoFiltro !== '') { $partes[] = 'Edição: '.e($edicaoFiltro); } if ($dataInicio) { $partes[] = 'Desde: '.\Carbon\Carbon::parse($dataInicio)->format('d/m/Y'); } if ($dataFim) { $partes[] = 'Até: '.\Carbon\Carbon::parse($dataFim)->format('d/m/Y'); } @endphp {!! implode(' + ', $partes) !!} Limpar Todos
@endif
Sobre o trecho exibido na busca

O texto abaixo do número da edição vem do campo conteudo_indexado (texto extraído do PDF ao publicar). O MySQL usa MATCH…AGAINST; o trecho segue a lógica de gerarSnippet() do projeto legado em doeca/config.php.

PDF escaneado sem camada de texto pode não gerar trecho útil (sem OCR neste fluxo).

@forelse($edicoes as $ed) @empty @endforelse
Nº Edição Data Publicação Data Upload Ações
{{ $ed->numero_edicao }} @if($busca !== '')
{!! Edicao::gerarSnippetDestacado($ed->conteudo_indexado, $busca) !!}
@endif
{{ $ed->data_publicacao?->format('d/m/Y') }} {{ $ed->created_at?->format('d/m/Y H:i') }} Visualizar Baixar
@if($busca !== '')

Nenhum documento encontrado para sua pesquisa.

@else

Nenhuma edição cadastrada.

@endif
{{ $edicoes->links('pagination::bootstrap-5') }}
@endsection @push('scripts') @endpush