Filter Laporan
@if(request()->hasAny(['status', 'department', 'audit_type', 'auditor', 'period', 'date_from', 'date_to', 'search']))
Menampilkan {{ $reports->total() }} laporan dari hasil filter
@if($user->role === 'super_admin' && request('auditor'))
— Auditor: {{ $auditors->firstWhere('id', request('auditor'))->name ?? '-' }}
@endif
@endif
@if($reports->count() > 0)
{{-- ══ Desktop Table ══ --}}
| No. Laporan |
@if($user->role === 'staff_departemen')
Tipe Audit |
@else
Departemen |
@endif
@if($user->role === 'super_admin')
Auditor |
@endif
Jenis Masalah |
Lokasi |
@if($isMachineAuditor)
Nama Mesin |
@endif
Status |
Tanggal |
Aksi |
@foreach($reports as $report)
@php
$isThisMachine = $report->auditType && strtolower($report->auditType->name) === 'mesin';
$now = now();
$overdueMsg = null;
if ($report->status === 'submitted') {
$days = (int) $report->created_at->diffInDays($now);
if ($days >= 7) $overdueMsg = "Terlambat {$days} hari";
} elseif ($report->status === 'in_progress' && $report->deadline) {
$dl = \Carbon\Carbon::parse($report->deadline);
if ($now->greaterThan($dl)) {
$late = (int) $dl->diffInDays($now);
$overdueMsg = $late === 0 ? 'Lewat deadline hari ini' : "Lewat deadline {$late} hari";
}
}
@endphp
|
{{ $report->report_number }}
|
@if($user->role === 'staff_departemen')
{{ $report->auditType->name }}
|
@else
{{ $report->department->name }} |
@endif
@if($user->role === 'super_admin')
{{ $report->auditor->name ?? '-' }}
|
@endif
{{ Str::limit($report->issue_type, 28) }} |
{{ Str::limit($report->location, 28) }} |
@if($isMachineAuditor)
@if($report->machine_name)
{{ Str::limit($report->machine_name, 22) }}
@else
—
@endif
|
@endif
{!! $report->status_badge !!} |
{{ $report->created_at->format('d M Y') }}
{{ $report->created_at->format('H:i') }}
@if($overdueMsg)
{{ $overdueMsg }}
@endif
|
Lihat
|
@endforeach
{{-- ══ Tablet ══ --}}
@foreach($reports as $report)
@php
$isThisMachine = $report->auditType && strtolower($report->auditType->name) === 'mesin';
$now = now();
$overdueMsg = null;
if ($report->status === 'submitted') {
$days = (int) $report->created_at->diffInDays($now);
if ($days >= 7) $overdueMsg = "Terlambat {$days} hari";
} elseif ($report->status === 'in_progress' && $report->deadline) {
$dl = \Carbon\Carbon::parse($report->deadline);
if ($now->greaterThan($dl)) {
$late = (int) $dl->diffInDays($now);
$overdueMsg = $late === 0 ? 'Lewat deadline hari ini' : "Lewat deadline {$late} hari";
}
}
@endphp
{{ $report->report_number }}
@if($user->role === 'staff_departemen')
{{ $report->auditType->name }}
@else
{{ $report->department->name }}
@endif
@if($user->role === 'super_admin')
{{ $report->auditor->name ?? '-' }}
@endif
@if($isMachineAuditor && $report->machine_name)
{{ Str::limit($report->machine_name, 18) }}
@endif
{!! $report->status_badge !!}
{{ $report->location }}
{{ $report->issue_type }}
{{ $report->created_at->format('d M Y H:i') }}
@if($overdueMsg)
{{ $overdueMsg }}
@endif
Lihat Detail
@endforeach
{{-- ══ Mobile ══ --}}
@foreach($reports as $report)
@php
$isThisMachine = $report->auditType && strtolower($report->auditType->name) === 'mesin';
$now = now();
$overdueMsg = null;
if ($report->status === 'submitted') {
$days = (int) $report->created_at->diffInDays($now);
if ($days >= 7) $overdueMsg = "Terlambat {$days} hari";
} elseif ($report->status === 'in_progress' && $report->deadline) {
$dl = \Carbon\Carbon::parse($report->deadline);
if ($now->greaterThan($dl)) {
$late = (int) $dl->diffInDays($now);
$overdueMsg = $late === 0 ? 'Lewat deadline hari ini' : "Lewat deadline {$late} hari";
}
}
@endphp
{{ $report->report_number }}
{!! $report->status_badge !!}
@if($user->role === 'staff_departemen')
{{ Str::limit($report->auditType->name, 15) }}
@else
{{ Str::limit($report->department->name, 15) }}
@endif
@if($user->role === 'super_admin')
{{ Str::limit($report->auditor->name ?? '-', 15) }}
@endif
@if($isMachineAuditor && $report->machine_name)
{{ Str::limit($report->machine_name, 15) }}
@endif
{{ Str::limit($report->location, 35) }}
{{ Str::limit($report->issue_type, 30) }}
{{ $report->created_at->format('d M Y H:i') }}
@if($overdueMsg)
{{ $overdueMsg }}
@endif
Lihat Detail
@endforeach
{{-- Pagination Custom --}}
@if($reports->lastPage() > 1)
Menampilkan {{ $reports->firstItem() }}–{{ $reports->lastItem() }}
dari {{ $reports->total() }} laporan
@endif
@else
Tidak ada laporan ditemukan
@if(request()->hasAny(['status', 'department', 'audit_type', 'auditor', 'period', 'date_from', 'date_to', 'search']))
Coba ubah kriteria filter atau pencarian Anda
Reset Filter
@elseif($user->role === 'auditor')
Anda belum membuat laporan apapun
Buat Laporan Pertama
@endif
@endif