{{-- Filtros --}}
<form method="GET" action="{{ route('admin.indicadoresTi.index') }}" class="row g-2 mb-3 align-items-end"
    id="form-filtros-chamados">
    <div class="col-12 col-md-4">
        <label class="form-label visually-hidden" for="filtro-busca">{{ __('Buscar') }}</label>
        <input type="text" id="filtro-busca" name="busca" class="form-control"
            placeholder="{{ __('Número ou cliente…') }}" value="{{ $filterParams['busca'] ?? '' }}" autocomplete="off">
    </div>
    <div class="col-6 col-md-2">
        <label class="form-label visually-hidden" for="filtro-status">{{ __('Status') }}</label>
        <select id="filtro-status" name="status" class="form-select">
            <option value="">{{ __('Todos os status') }}</option>
            @foreach (\App\Models\IndicadoresTi\Chamado::STATUS as $valor => $label)
                <option value="{{ $valor }}" @selected(($filterParams['status'] ?? '') === $valor)>{{ __($label) }}</option>
            @endforeach
        </select>
    </div>
    <div class="col-6 col-md-2">
        <label class="form-label visually-hidden" for="filtro-prioridade">{{ __('Prioridade') }}</label>
        <select id="filtro-prioridade" name="prioridade" class="form-select">
            <option value="">{{ __('Todas as prioridades') }}</option>
            @foreach (\App\Models\IndicadoresTi\Chamado::PRIORIDADE as $valor => $label)
                <option value="{{ $valor }}" @selected(($filterParams['prioridade'] ?? '') === $valor)>{{ __($label) }}</option>
            @endforeach
        </select>
    </div>
    <div class="col-6 col-md-2">
        <label class="form-label visually-hidden" for="filtro-setor">{{ __('Setor') }}</label>
        <select id="filtro-setor" name="setor_id" class="form-select">
            <option value="">{{ __('Todos os setores') }}</option>
            @foreach ($setores as $setor)
                <option value="{{ $setor->id }}" @selected((int) ($filterParams['setor_id'] ?? 0) === $setor->id)>{{ $setor->nome }}</option>
            @endforeach
        </select>
    </div>
    <div class="col-6 col-md-2 d-flex gap-2">
        <button type="submit" class="btn btn-primary w-100">
            <i class="fa-solid fa-magnifying-glass me-1"></i><span class="d-none d-sm-inline">{{ __('Filtrar') }}</span>
        </button>
        <a href="{{ route('admin.indicadoresTi.index') }}" class="btn btn-outline-secondary"
            title="{{ __('Limpar filtros') }}">
            <i class="fa-solid fa-xmark"></i>
        </a>
    </div>
</form>

@php
    $theadChamados = [
        __('Número'),
        __('Solicitante'),
        __('Unidade'),
        __('Setor'),
        __('Assunto'),
        __('SubAssunto'),
        __('Status'),
        __('Prioridade'),
        __('Atendente'),
        __('Abertura'),
        __('Fechamento'),
        __('Tempo'),
        __('Ações'),
    ];
@endphp

<div class="card shadow-sm mb-4">
    <div class="card-header fw-bold bg-primary text-white d-flex justify-content-between align-items-center">
        <span><i class="fa-solid fa-user-tie me-2"></i>{{ __('Meus Chamados') }}</span>
        <span class="badge bg-white text-primary">{{ $meusChamados->total() }} {{ __('chamados') }}</span>
    </div>
    <div class="card-body p-0">
        @php ob_start(); @endphp
        @forelse ($meusChamados as $item)
            @include('admin.indicadoresTi._row_chamado', ['item' => $item, 'thead' => $theadChamados])
        @empty
            <tr>
                <td colspan="{{ count($theadChamados) }}" class="text-center text-muted py-4">
                    <i class="fa-solid fa-inbox fa-2x mb-2 d-block opacity-50"></i>
                    {{ __('Nenhum chamado encontrado.') }}
                </td>
            </tr>
        @endforelse
        @php $body = ob_get_clean(); @endphp
        @include('components.tables._table', [
            'thead' => $theadChamados,
            'body' => $body,
            'pagination' => $meusChamados->hasPages() ? $meusChamados->links() : null,
        ])
    </div>
</div>


@isset($outrosChamadosPorSetor)
    <div class="card shadow-sm">
        <div class="card-header fw-bold bg-secondary text-white d-flex align-items-center justify-content-between">
            <span><i class="fa-solid fa-building me-2"></i>{{ __('Todos Chamados dos Setores') }}</span>
        </div>
        <div class="card-body p-0">
            @forelse ($outrosChamadosPorSetor as $bloco)
                <div class="border-bottom">
                    <button
                        class="btn btn-link w-100 text-start text-decoration-none d-flex justify-content-between align-items-center p-3 js-setor-toggle"
                        type="button" data-bs-target="#setor-{{ $bloco['setor']->id }}" aria-expanded="false"
                        aria-controls="setor-{{ $bloco['setor']->id }}">
                        <span><i class="fa-solid fa-folder-tree me-2"></i>{{ $bloco['setor']->nome }}</span>
                        <div class="d-flex align-items-center gap-2">
                            <span class="badge bg-info text-dark">
                                {{ $bloco['chamados']->total() }} {{ __('chamados') }}
                            </span>
                            <i class="fa-solid fa-chevron-down js-setor-chevron" style="transition:transform .3s"></i>
                        </div>
                    </button>
                    <div class="collapse" id="setor-{{ $bloco['setor']->id }}">
                        @php
                            $theadSetor = [
                                __('Número'),
                                __('Solicitante'),
                                __('Unidade'),
                                __('Assunto'),
                                __('Prioridade'),
                                __('Status'),
                                __('Atendente'),
                                __('Abertura'),
                                __('Fechamento'),
                                __('Ações'),
                            ];
                            ob_start();
                        @endphp
                        @foreach ($bloco['chamados'] as $item)
                            <tr @if ($item->isEmAndamento()) class="table-warning" @endif>
                                <td class="fw-semibold">{{ $item->numero }}</td>
                                <td>{{ $item->solicitante_nome }}</td>
                                <td>{{ $item->unidade->abbreviation ?? '—' }}</td>
                                <td>{{ $item->assunto_nome ?? $item->assunto?->nome ?? '—' }}</td>
                                <td>
                                    <span
                                        class="badge bg-{{ match ($item->prioridade) {'alta', 'critica' => 'danger','media' => 'warning','baixa' => 'success',default => 'secondary'} }}">
                                        {{ __(\App\Models\IndicadoresTi\Chamado::PRIORIDADE[$item->prioridade] ?? $item->prioridade) }}
                                    </span>
                                </td>
                                <td>
                                    <span
                                        class="badge bg-{{ match ($item->status) {'pendente' => 'warning','em_andamento' => 'info','atendido' => 'success',default => 'secondary'} }}">
                                        {{ __(\App\Models\IndicadoresTi\Chamado::STATUS[$item->status] ?? $item->status) }}
                                    </span>
                                </td>
                                <td>{{ $item->atendente->name ?? '—' }}</td>
                                <td>{{ optional($item->data_abertura)->format('d/m/Y H:i') }}</td>
                                <td>{{ optional($item->data_fechamento)->format('d/m/Y H:i') }}</td>
                                <td>
                                    <a href="{{ route('admin.indicadoresTi.show', $item->id) }}"
                                        class="btn btn-sm btn-primary" title="{{ __('Abrir') }}">
                                        <i class="fa-solid fa-pen-to-square"></i>
                                    </a>
                                </td>
                            </tr>
                        @endforeach
                        @php $bodySetor = ob_get_clean(); @endphp
                        @include('components.tables._table', [
                            'thead' => $theadSetor,
                            'body' => $bodySetor,
                            'pagination' => $bloco['chamados']->hasPages() ? $bloco['chamados']->links() : null,
                        ])
                    </div>
                </div>
            @empty
                <div class="text-center text-muted py-4">
                    <i class="fa-solid fa-inbox fa-2x mb-2 d-block opacity-50"></i>
                    {{ __('Nenhum chamado de outros usuários no momento.') }}
                </div>
            @endforelse
        </div>
    </div>
@elseif (isset($outrosChamadosPorUnidade))
    <div class="card shadow-sm">
        <div class="card-header fw-bold bg-secondary text-white d-flex align-items-center justify-content-between">
            <span><i class="fa-solid fa-building me-2"></i>{{ __('Outros Chamados') }}</span>
        </div>
        <div class="card-body p-0">
            @forelse ($outrosChamadosPorUnidade as $bloco)
                <div class="border-bottom">
                    <button
                        class="btn btn-link w-100 text-start text-decoration-none d-flex justify-content-between align-items-center p-3 js-setor-toggle"
                        type="button" data-bs-target="#unidade-{{ $bloco['unidade']->id }}" aria-expanded="false"
                        aria-controls="unidade-{{ $bloco['unidade']->id }}">
                        <span>
                            <i class="fa-solid fa-sitemap me-2"></i>
                            {{ $bloco['unidade']->abbreviation }} — {{ $bloco['unidade']->name }}
                        </span>
                        <div class="d-flex align-items-center gap-2">
                            <span class="badge bg-info text-dark">
                                {{ $bloco['chamados']->total() }} {{ __('chamados') }}
                            </span>
                            <i class="fa-solid fa-chevron-down js-setor-chevron" style="transition:transform .3s"></i>
                        </div>
                    </button>
                    <div class="collapse" id="unidade-{{ $bloco['unidade']->id }}">
                        @php
                            $theadUnidade = [
                                __('Número'),
                                __('Solicitante'),
                                __('Setor'),
                                __('Assunto'),
                                __('Prioridade'),
                                __('Status'),
                                __('Atendente'),
                                __('Abertura'),
                                __('Fechamento'),
                                __('Ações'),
                            ];
                            ob_start();
                        @endphp
                        @foreach ($bloco['chamados'] as $item)
                            <tr @if ($item->isEmAndamento()) class="table-warning" @endif>
                                <td class="fw-semibold">{{ $item->numero }}</td>
                                <td>{{ $item->solicitante_nome }}</td>
                                <td>{{ $item->setor_nome ?? $item->setor?->nome ?? '—' }}</td>
                                <td>{{ $item->assunto_nome ?? $item->assunto?->nome ?? '—' }}</td>
                                <td>
                                    <span
                                        class="badge bg-{{ match ($item->prioridade) {'alta', 'critica' => 'danger','media' => 'warning','baixa' => 'success',default => 'secondary'} }}">
                                        {{ __(\App\Models\IndicadoresTi\Chamado::PRIORIDADE[$item->prioridade] ?? $item->prioridade) }}
                                    </span>
                                </td>
                                <td>
                                    <span
                                        class="badge bg-{{ match ($item->status) {'pendente' => 'warning','em_andamento' => 'info','atendido' => 'success',default => 'secondary'} }}">
                                        {{ __(\App\Models\IndicadoresTi\Chamado::STATUS[$item->status] ?? $item->status) }}
                                    </span>
                                </td>
                                <td>{{ $item->atendente->name ?? '—' }}</td>
                                <td>{{ optional($item->data_abertura)->format('d/m/Y H:i') }}</td>
                                <td>{{ optional($item->data_fechamento)->format('d/m/Y H:i') }}</td>
                                <td>
                                    <a href="{{ route('admin.indicadoresTi.show', $item->id) }}"
                                        class="btn btn-sm btn-primary" title="{{ __('Abrir') }}">
                                        <i class="fa-solid fa-pen-to-square"></i>
                                    </a>
                                </td>
                            </tr>
                        @endforeach
                        @php $bodyUnidade = ob_get_clean(); @endphp
                        @include('components.tables._table', [
                            'thead' => $theadUnidade,
                            'body' => $bodyUnidade,
                            'pagination' => $bloco['chamados']->hasPages() ? $bloco['chamados']->links() : null,
                        ])
                    </div>
                </div>
            @empty
                <div class="text-center text-muted py-4">
                    <i class="fa-solid fa-inbox fa-2x mb-2 d-block opacity-50"></i>
                    {{ __('Nenhum chamado de outros usuários no momento.') }}
                </div>
            @endforelse
        </div>
    </div>
@else
    <div class="card shadow-sm">
        <div class="card-header fw-bold bg-secondary text-white d-flex justify-content-between align-items-center">
            <span><i class="fa-solid fa-users me-2"></i>{{ __('Outros Chamados') }}</span>
            <span class="badge bg-white text-secondary">{{ $outrosChamados->total() }} {{ __('chamados') }}</span>
        </div>
        <div class="card-body p-0">
            @php ob_start(); @endphp
            @forelse ($outrosChamados as $item)
                @include('admin.indicadoresTi._row_chamado', ['item' => $item, 'thead' => $theadChamados])
            @empty
                <tr>
                    <td colspan="{{ count($theadChamados) }}" class="text-center text-muted py-4">
                        <i class="fa-solid fa-inbox fa-2x mb-2 d-block opacity-50"></i>
                        {{ __('Nenhum chamado de outros usuários.') }}
                    </td>
                </tr>
            @endforelse
            @php $body = ob_get_clean(); @endphp
            @include('components.tables._table', [
                'thead' => $theadChamados,
                'body' => $body,
                'pagination' => $outrosChamados->hasPages() ? $outrosChamados->links() : null,
            ])
        </div>
    </div>
@endisset
