{{ __('Reimbursements') }}

@can('create_reimbursement', App\Models\Reimbursement::class)
@if(auth()->user()->hasAnyRole(['hrd', 'finance', 'super-admin'])) @else Add Reimbursement @endif
@endcan
{{-- Flash Alert --}} @if(session('success') || session('error') || session('warning') || session('import_results')) @php $importResults = session('import_results'); $type = session('error') ? 'error' : (session('warning') ? 'warning' : 'success'); $message = session('success') ?? session('error') ?? session('warning') ?? 'Import selesai.'; $styles = [ 'success' => 'bg-green-100 border-green-500 text-green-800 dark:bg-green-900/40 dark:border-green-400 dark:text-green-200', 'error' => 'bg-red-100 border-red-500 text-red-800 dark:bg-red-900/40 dark:border-red-400 dark:text-red-200', 'warning' => 'bg-yellow-100 border-yellow-500 text-yellow-800 dark:bg-yellow-900/40 dark:border-yellow-400 dark:text-yellow-200', ]; @endphp @endif
{{-- ===================== MOBILE SEARCH & FILTER ===================== --}}
{{-- Search input --}}
{{-- Filter date range --}}
{{-- Status filter buttons --}}
{{-- Per page select --}}
{{-- Result count --}}
{{-- ===================== DESKTOP TABLE (md ke atas) ===================== --}} {{-- ===================== MOBILE CARD LIST (di bawah md) ===================== --}}
@forelse ($reimbursements as $reimbursement) @php $approval = $reimbursement->approval; $currentUser = auth()->user(); $canApprove = false; if ($approval) { $activeStep = $approval->steps->firstWhere('status', 'active'); if ($activeStep) { $canApprove = ($activeStep->user_id === $currentUser->id) || ($activeStep->approver_role && $currentUser->hasRole($activeStep->approver_role)); } } $foto = $reimbursement->employee?->foto ?? 'https://api.dicebear.com/9.x/initials/svg?seed=' . urlencode($reimbursement->employee?->fullname ?? 'User'); $statusLabel = $reimbursement->status === 'pending' ? 'pending' : ($reimbursement->status === 'approved' ? 'approved' : 'rejected'); @endphp
{{-- Header: avatar + nama + code + info icon --}}
avatar
@if($reimbursement->employee) {{ $reimbursement->employee->fullname }} @else Unknown Employee @endif

{{ $reimbursement->code }}

{{-- Info icon → ke detail --}}
{{-- Detail info --}}
Type : {{ $reimbursement->reimbursementType->name ?? '-' }} {{ __('table.Title') }} : {{ $reimbursement->title }} Nominal : Rp {{ number_format($reimbursement->amount, 0, ',', '.') }} Lampiran : @if($reimbursement->attachment) Lihat @else - @endif Status :
{{-- Actions jika pending --}} @if ($reimbursement->status === 'pending')
@if ($canApprove) @endif Edit
@endif
@empty

Tidak ada data Reimbursement

@endforelse {{-- Empty state filter --}} {{-- Pagination --}}
{{-- Import Modal --}}

Import Reimbursement

Upload file Excel untuk import data reimbursement.

@csrf

Format: .xlsx, .xls, .csv

{{-- MODAL CHANGES IMPORT --}} @if(session('import_results') && !empty(session('import_results')['changes'])) @php $results = session('import_results'); @endphp @endif {{-- MODAL ERROR IMPORT --}} @if(session('import_results') && !empty(session('import_results')['errors'])) @php $results = session('import_results'); @endphp @endif