@php
$devProjectsMap = [
'Chamados' => ['name' => 'Portal de Serviços', 'color' => '#4d7cf5'],
'CapacitaCDA' => ['name' => 'Capacita CDA', 'color' => '#16a34a'],
'Intranet' => ['name' => 'Intranet', 'color' => '#f58122'],
'Novo' => ['name' => 'Novo', 'color' => '#64748b'],
];
@endphp
@if (count($chamados) != 0)
@foreach ($chamados as $chamado)
@php
$openerName = $chamado['opener_name'] ?? data_get($chamado['payload'], 'nome', '');
$openerInitials = collect(explode(' ', trim($openerName)))
->filter()
->take(2)
->map(fn($w) => strtoupper($w[0]))
->implode('');
$openerFoto = $chamado['opener_photo'] ?? null;
$openerCargo = $chamado['opener_cargo'] ?? '';
$openerFilial = $chamado['opener_filial'] ?? '';
$tooltipText = Str::limit(strip_tags(
data_get($chamado['payload'], 'msg', '') ?: ($chamado['content'] ?? '')
), 120);
$isPending = $chamado['actiontime'] === 'new';
// Dev-specific title parts
$projeto = data_get($chamado['payload'], 'projeto', '');
$titulo = data_get($chamado['payload'], 'titulo', $chamado['name']);
$typeStr = $chamado->types?->name ?? '';
$catStr = $chamado->category?->name ?? '';
$projInfo = $devProjectsMap[$projeto] ?? null;
$bugCount = (int) data_get($chamado['payload'], 'count', 1);
$isBug = ($chamado['itilcategories_id'] ?? null) == 40;
@endphp
@if ($isBug)
@endif
{{-- ID --}}
#{{ $chamado['id'] }}
{{-- Opener --}}
@if ($openerName)
@if ($openerFoto)
 }})
@else
{{ $openerInitials ?: '?' }}
@endif
@if ($isPending)
@endif
{{ Str::limit($openerName, 18) }}
@if ($openerCargo || $openerFilial)
{{ Str::limit(implode(' | ', array_filter([Str::limit($openerCargo, 15), $openerFilial])), 32) }}
@endif
@else
Não informado
@endif
{{-- Title (Dev: Tipo — Categoria — Título + badge projeto) --}}
{{-- Status --}}
@php
$st = \App\Enums\ChamadoStatus::coerce($chamado['status']);
$classeFornecedor = ($chamado['suppliers_id'] ?? 0) == 9 ? 'rede' : 'planned';
$validacaoSub = $st === \App\Enums\ChamadoStatus::AguardandoValidacao
? $chamado->validacaoAtual?->status
: null;
@endphp
@if ($st === \App\Enums\ChamadoStatus::Planejado)
{{ $chamado['supplier_name'] ?? $st->label() }}
@elseif ($st === \App\Enums\ChamadoStatus::EmAndamento && !empty($chamado['supplier_name']))
{{ $chamado['supplier_name'] }}
@elseif ($st === \App\Enums\ChamadoStatus::EmAndamento)
{{ $isPending ? 'Resposta' : $st->labelCurto() }}
@elseif ($st === \App\Enums\ChamadoStatus::AguardandoValidacao)
{{ $validacaoSub?->label() ?? $st->label() }}
@elseif ($st === \App\Enums\ChamadoStatus::Aberto || $st === \App\Enums\ChamadoStatus::Analise)
{{ $st->label() }}
@else
Interno
@endif
{{-- Agents (acompanhadores) --}}
@php
$followups = $followupsByTicket[$chamado['id']] ?? [];
$currentUserId = auth()->id();
@endphp
@if ($followups)
@foreach ($followups as $fi => $user)
@php
$name = $user->name ?? 'Usuário';
$initials = collect(explode(' ', trim($name)))
->filter()->take(2)
->map(fn($w) => strtoupper($w[0]))->implode('');
@endphp
@if ($user->photo)
 }})
@else
{{ $initials }}
@endif
@endforeach
@else
@endif
{{-- Dates --}}
Aberto
{{ date('d/m/y', strtotime($chamado['date_creation'])) }}
Modif.
{{ date('d/m/y', strtotime($chamado['date_mod'])) }}
{{-- Actions --}}
@endforeach
@else
@include('admin.view._empty')
@endif