{{-- ── Header ── --}}
E-Tilang SHE
Dokumen SHE
No. Dokumen: SHE/ST/{{ date('Y') }}/{{ str_pad($tilang->id, 3, '0', STR_PAD_LEFT) }}
Tanggal Cetak: {{ now()->format('d M Y') }}
{{-- ── SP Heading ── --}}
Safety, Health and Environment Department
Surat Tilang
{{-- ── Identitas Karyawan ── --}}
Identitas Karyawan
Nama Karyawan
{{ $tilang->karyawan->nama ?? '-' }}
NIK
{{ $tilang->karyawan->nik ?? '-' }}
Tanggal & Waktu Kejadian
{{ $tilang->tanggal_waktu }}
Lokasi Kejadian
{{ $tilang->lokasi }}
Petugas Patroli
{{ $tilang->picPatroli->name ?? '-' }}
Root Cause
{{ $tilang->root_cause ?? '-' }}
{{-- Total Pelanggaran + Status ── --}} @php $badge = match(true) { $totalPelanggaran === 1 => ['label' => 'Pertama Kali', 'bg' => '#e8f5e9', 'color' => '#27ae60'], $totalPelanggaran === 2 => ['label' => 'Pelanggaran ke-2', 'bg' => '#fff3e0', 'color' => '#e67e22'], $totalPelanggaran === 3 => ['label' => 'Pelanggaran ke-3', 'bg' => '#fce4ec', 'color' => '#c0392b'], default => ['label' => 'Pelanggaran Berulang','bg' => '#4a0000', 'color' => '#ffffff'], }; @endphp
Total Pelanggaran
{{ $totalPelanggaran }}x
Status
{{ $badge['label'] }}
{{-- ── Jenis Pelanggaran ── --}}
Jenis Pelanggaran
@if ($tilang->details->isNotEmpty())
    @foreach ($tilang->details as $d)
  • {{ $d->pelanggaran->nama_pelanggaran ?? '-' }}
  • @endforeach
@else - @endif
{{-- ── Correction Action ── --}}
Correction Action
{{ $tilang->correction_action ?? '-' }}
{{-- ── Sanksi ── --}}
Sanksi
Keputusan Sanksi
{{ $tilang->sanksi ?? '-' }}
{{-- ── Bukti Foto ── --}} @php $fotoArr = $tilang->foto ? json_decode($tilang->foto, true) ?? [] : []; @endphp @if (!empty($fotoArr))
Bukti Foto
@foreach ($fotoArr as $foto) @php $base64 = null; $path = storage_path('app/public/' . $foto); if (is_file($path)) { $type = strtolower(pathinfo($path, PATHINFO_EXTENSION)); $contents = file_get_contents($path); $base64 = 'data:image/' . $type . ';base64,' . base64_encode($contents); } @endphp @if ($base64) Bukti Foto @endif @endforeach
@endif
{{-- ── Footer ── --}}