@foreach ($chamado->attachments as $att) @php $isImg = str_starts_with($att->mime_type ?? '', 'image/'); @endphp @if ($isImg) @else {{ $att->filename }} @endif @endforeach @if ($chamado->acompanhamentos->isEmpty() && $chamado->solutions->isEmpty())
Nenhum acompanhamento ainda.
@endif {{-- Acompanhamentos e soluções na mesma linha do tempo, estritamente por data. Antes eram dois loops, o que jogava toda solução para o fim do chat. --}} @foreach (\App\Models\Chamado::linhaDoTempo($chamado->acompanhamentos, $chamado->solutions) as $entrada) @if ($entrada['tipo'] === 'acompanhamento') @php $acompanha = $entrada['item']; $hasAtt = $acompanha->attachments->isNotEmpty(); $hasTxt = !empty(trim(strip_tags($acompanha['content'] ?? ''))); $isMe = $acompanha['status'] > 2; $nome = $isMe ? 'Você' : (isset($tec[$acompanha['users_id']]) ? explode(' ', $tec[$acompanha['users_id']])[0] : 'Suporte'); $foto = \App\Helpers\UserHelper::photoUrl( $isMe ? Auth::user()?->info?->photo : $acompanha->user?->info?->photo ); $hora = date('d/m H:i', strtotime($acompanha['date_creation'])); @endphp
{{ $nome }}
@if ($hasAtt) @foreach ($acompanha->attachments as $att) @php $isImg = str_starts_with($att->mime_type ?? '', 'image/'); @endphp @if ($isImg) @else {{ $att->filename }} @endif @endforeach @endif @if ($hasTxt)
@conteudo($acompanha['content'])
{{ $hora }}
@endif
@else @php $s = $entrada['item']; $sNome = explode(' ', $s->user?->info?->name ?? 'Suporte')[0]; $sFoto = \App\Helpers\UserHelper::photoUrl($s->user?->info?->photo); $sHora = date('d/m H:i', strtotime($s->date_creation)); $sHasTxt = !empty(trim(strip_tags($s->content ?? ''))); $sHasAtt = $s->attachments->isNotEmpty(); // Solução que passou pelo fluxo de validação muda de rótulo e de cor // conforme o desfecho; a que não passou segue como "Solução". $sVal = $s->status instanceof \App\Enums\ValidacaoSolucao && $s->status !== \App\Enums\ValidacaoSolucao::Nenhuma ? $s->status : null; $sCor = $sVal?->corChat() ?? '34,201,123'; $sRotulo = $sVal?->label() ?? 'Solução'; $sIcone = $sVal?->icon() ?? 'bi-check-circle-fill'; @endphp
{{ $sNome }}
@if ($sHasAtt) @foreach ($s->attachments as $att) @php $isImg = str_starts_with($att->mime_type ?? '', 'image/'); @endphp @if ($isImg) @else {{ $att->filename }} @endif @endforeach @endif @if ($sHasTxt)
@conteudo($s->content)
{{ $sRotulo }} · {{ $sHora }}
@endif
@endif @endforeach