@extends('layouts.app') @section('title') {{ $pageInfo['title'] }} @endsection @section('admin-content')

{{ $pageInfo['title'] }}

{{-- Summary Widgets --}}

Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}

Total Submission

Rp {{ number_format($forms->whereIn('status', ['Approved', 'Approved 1', 'Approved 2', 'Closed', 'Final Approved'])->sum('approved_total'), 0, ',', '.') }}

Total Approved

Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}

Total Pending

{{ !$availableBudget || $availableBudget == 0 ? '-' : 'Rp ' . number_format((float)$availableBudget, 0, ',', '.') }}

Budget Available
{{-- Filter Section - Sistem Periode Bulan Akuntansi --}}
Reset
@php use App\Helpers\NextCloudHelper; @endphp

Database Konsolidasi (All Forms)

@include('backend.layouts.partials.messages') @foreach ($forms as $item) {{-- Kolom Detail Rejeksi Sinkron --}} @endforeach
# No Expense Kategori Nama Pengaju Region / Cabang Tgl. Dibuat Nominal (Appr) Bukti Status Detail Rejeksi
{{ $loop->iteration }} {{ $item->expense_number }} {{ str_replace(['form_', '_'], ['', ' '], (string)$item->type) }} {{ $item->user->name ?? '-' }} {{ $item->user->region->cabang->region->name ?? '-' }} {{ $item->user->cabang->cabang->name ?? '-' }} @php $createdAt = \Carbon\Carbon::parse($item->created_at); @endphp
{{ $createdAt->locale('id')->translatedFormat('d F Y') }}
{{ $createdAt->format('H:i') }} WIB
{{ $item->approved_total ? 'Rp ' . number_format($item->approved_total, 0, ',', '.') : '-' }} @php $fileData = []; $imgExts = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp']; if (!empty($item->main_proof)) { $ext = strtolower(pathinfo($item->main_proof, PATHINFO_EXTENSION)); $fileData[] = [ 'url' => NextCloudHelper::getFileUrl($item->main_proof), 'is_img' => in_array($ext, $imgExts) ]; } if(isset($item->extra_attachments)) { foreach ($item->extra_attachments as $att) { $ext = strtolower(pathinfo($att->file_path, PATHINFO_EXTENSION)); $fileData[] = [ 'url' => NextCloudHelper::getFileUrl($att->file_path), 'is_img' => in_array($ext, $imgExts) ]; } } $uniqueFiles = collect($fileData)->unique('url')->values()->all(); @endphp @if (count($uniqueFiles) > 0) @else - @endif @php $badgeClass = match($item->status) { 'On Progress' => 'badge-warning text-white', 'Approved 1', 'Approved 2', 'Closed', 'Final Approved' => 'badge-success text-white', 'Rejected' => 'badge-danger text-white', default => 'badge-secondary' }; @endphp {{ $item->status }} {{-- Tgl Final Approved --}} @if(isset($item->report_date) && in_array($item->status, ['Approved 2', 'Closed', 'Final Approved']))
Final Approved: {{ \Carbon\Carbon::parse($item->report_date)->translatedFormat('d M Y') }}
@endif {{-- Penanda Tgl Waktu Rejeksi --}} @if($item->status == 'Rejected' && isset($item->rejected_at))
Rejected At: {{ \Carbon\Carbon::parse($item->rejected_at)->translatedFormat('d M Y H:i') }} WIB
@endif
@if($item->status == 'Rejected')
Oleh: {{ $item->rejector->name ?? $item->rejected_by ?? 'System' }}
Alasan: "{{ $item->remarks ?? '-' }}"
@else - @endif
{{-- MODAL PREVIEW --}} {{-- MODAL ZOOM --}} @endsection @section('scripts') @endsection