{{-- Tabela read-only de atividades para a visualização pública executiva. @var list> $rows --}} @php $statusBadge = [ 'not_started' => 'secondary', 'planning' => 'info', 'in_progress' => 'primary', 'validation' => 'warning', 'completed' => 'success', 'suspended' => 'secondary', 'cancelled' => 'dark', 'overdue' => 'danger', ]; $orderedRows = collect($rows ?? [])->map(fn ($row) => [ 'row' => $row, 'depth' => empty($row['parent_id']) ? 0 : 1, ]); @endphp
@forelse($orderedRows as $item) @php $row = $item['row']; $depth = $item['depth']; $dotStatus = $row['is_overdue'] ? 'overdue' : $row['status']; $badge = $statusBadge[$dotStatus] ?? 'secondary'; @endphp @empty @endforelse
{{ __('Item') }} {{ __('Atividades') }} {{ __('Predecessora') }} {{ __('%') }} {{ __('Status') }} {{ __('Responsável') }} {{ __('Início') }} {{ __('Término') }} {{ __('Descrição') }} {{ __('Observação') }}
{{ $row['code'] }} @if($depth > 0)@endif {{ $row['title'] }} {{ $row['predecessors'] ?: '-' }}
{{ (int) $row['completion_percent'] }}%
{{ $row['status_label'] }} @if($row['is_overdue']) {{ __('Atrasado') }} @endif {{ $row['planned_start_date'] ? \Carbon\Carbon::parse($row['planned_start_date'])->format('d/m/Y') : '-' }} {{ $row['planned_end_date'] ? \Carbon\Carbon::parse($row['planned_end_date'])->format('d/m/Y') : '-' }} {{ $row['description'] ?: '-' }} {{ $row['notes'] ?: '-' }}
{{ __('Nenhuma atividade cadastrada.') }}