@extends('layouts.app') @section('title', 'Periksa Dokumen') @section('styles') @endsection @section('content') @if(session('success'))
{{ session('success') }}
@endif @if(session('revisi_success'))
Revisi Diterima! Mendeteksi dokumen yang direvisi...
@endif
{{-- MAIN CONTENT - KIRI (8 kolom) --}}
Informasi Pengajuan
Nomor Pengajuan
{{ $pengajuan->nomor_pengajuan ?? '-' }}
Status
{{ $pengajuan->status_label ?? $pengajuan->status }}
Nama Pemohon
{{ $pengajuan->nama_lengkap ?? $pengajuan->pemohon->name ?? '-' }}
Jenis Kepemilikan
{{ $pengajuan->jenis_kepemilikan ?? '-' }}
Jenis Tanda Pengenal
{{ $pengajuan->jenis_tanda_pengenal ?? '-' }}
Nomor Tanda Pengenal
{{ $pengajuan->nomor_tanda_pengenal ?? '-' }}
Nomor Kontak
{{ $pengajuan->nomor_kontak ?? '-' }}
Email
{{ $pengajuan->email ?? '-' }}
Nama Bangunan
{{ $pengajuan->nama_bangunan ?? '-' }}
Fungsi Bangunan
{{ $pengajuan->fungsi_bangunan ?? $pengajuan->jenis_bangunan ?? '-' }}
Sub Fungsi Bangunan
{{ $pengajuan->sub_fungsi_bangunan ?? '-' }}
Luas Bangunan
{{ $pengajuan->luas_bangunan ?? '-' }} m²
Ketinggian Bangunan
{{ $pengajuan->ketinggian_bangunan ?? '-' }} meter
Jumlah Lantai
{{ $pengajuan->jumlah_lantai ?? '-' }}
Jumlah Unit Bangunan
{{ $pengajuan->jumlah_unit_bangunan ?? '-' }}
Tanggal Pengajuan
{{ $pengajuan->created_at ? date('d/m/Y H:i', strtotime($pengajuan->created_at)) : '-' }}
Tahun Rencana Pembangunan
{{ $pengajuan->tahun_rencana_bangun ?? '-' }}
Alamat Bangunan
{{ $pengajuan->alamat_bangunan ?? '-' }}
Verifikasi Dokumen (setiap perubahan langsung tersimpan)
@php // ============================================== // FILTER DOKUMEN BERDASARKAN JUMLAH LANTAI & FUNGSI // ============================================== // 1. DOKUMEN UTAMA (semua wajib) $checklistUtama = [ 'Site Plan (Skala 1:200/1:500/1:1000)', 'Denah dan Perletakan Septictank (Skala 1:100/1:200)', 'Tampak Depan (Skala 1:100/1:200)', 'Tampak Samping (Skala 1:100/1:200)', 'Tampak Belakang (Skala 1:100/1:200)', 'Potongan Melintang (Skala 1:100/1:200)', 'Potongan Memanjang (Skala 1:100/1:200)', 'Portal Pembesian (Skala 1:50/1:100)', 'Detail Pembesian (Skala 1:20/1:25)', 'Potongan Tangga dan Detail (Skala 1:20/1:25)', 'Penulangan Lantai dan Detail (Skala 1:20/1:25)', 'Denah Pondasi (Skala 1:100/1:200)', 'Detail Pondasi (Skala 1:20/1:25)', 'Detail Septictank (Skala 1:20/1:25)', 'Detail Stop Kontak dan Detail Penerangan (Skala 1:100/1:200)', 'Denah APAR Untuk 3 Lantai Ke Atas (Skala 1:100/1:200)', 'Skei Lokasi', 'Surat Pertanggung Jawaban Konstruksi', 'KTP Kedua Belah Pihak (Pemilik dan Perencana)', 'Surat Kuasa (jika Pemohon berbeda dengan Pemilik)', ]; // Item yang tampil hanya untuk lantai 1 $lantai1Items = [1,2,3,4,5,6,7,12,13,14,15,17,18,19,20]; // 2. FILTER BERDASARKAN JUMLAH LANTAI $jumlahLantai = $pengajuan->jumlah_lantai ?? 1; $checklistUtamaFiltered = []; foreach ($checklistUtama as $index => $doc) { $itemId = $index + 1; if ($jumlahLantai >= 2) { // Tampilkan semua $checklistUtamaFiltered[] = $doc; } else { // Lantai 1: hanya tampilkan item yang ada di $lantai1Items if (in_array($itemId, $lantai1Items)) { $checklistUtamaFiltered[] = $doc; } } } // 3. DOKUMEN PERUMAHAN (jika fungsi = Hunian) $checklistPerumahan = []; if ($pengajuan->fungsi_bangunan === 'Hunian') { $checklistPerumahan = [ 'Denah/Skema Perletakan IPAL (Skala 1:200/1:500/1:1000)', 'Detail IPAL (Skala 1:20/1:25)', ]; } // 4. DOKUMEN FASUM (jika fungsi bukan Hunian) $checklistFasum = []; if ($pengajuan->fungsi_bangunan && $pengajuan->fungsi_bangunan !== 'Hunian') { $checklistFasum = [ 'Rencana Jaringan Air Bersih (Skala 1:100/1:200)', 'Rencana Jaringan Air Kotor (Skala 1:100/1:200)', 'Rencana Jaringan Listrik (Skala 1:100/1:200)', 'Rencana Drainase (Skala 1:100/1:200)', 'Rencana Persampahan (Skala 1:100/1:200)', 'Rencana Fasilitas Parkir (Skala 1:100/1:200)', 'Rencana Ruang Terbuka Hijau/RTH (Skala 1:100/1:200)', ]; } // 5. GABUNGKAN SEMUA DOKUMEN YANG SUDAH DIFILTER $requiredDocs = array_merge($checklistUtamaFiltered, $checklistPerumahan, $checklistFasum); // 6. AMBIL DOKUMEN YANG SUDAH DIUPLOAD $uploadedDocs = $pengajuan->dokumen->keyBy('nama_dokumen'); // 7. DOKUMEN TAMBAHAN (opsional) $extraDocs = $pengajuan->dokumen->filter(function($d) use ($requiredDocs) { return !in_array($d->nama_dokumen, $requiredDocs); }); // 8. GABUNGKAN SEMUA UNTUK DITAMPILKAN $allDocs = collect($requiredDocs)->map(function($nama) use ($uploadedDocs) { return (object)[ 'nama_dokumen' => $nama, 'uploaded' => $uploadedDocs->has($nama), 'dokumen' => $uploadedDocs->get($nama) ]; })->concat($extraDocs->map(function($d) { return (object)[ 'nama_dokumen' => $d->nama_dokumen, 'uploaded' => true, 'dokumen' => $d ]; })); @endphp @if(in_array($pengajuan->status, ['ditugaskan', 'diperiksa'])) @foreach($allDocs as $i => $item)
{{ $i + 1 }}. {{ $item->nama_dokumen }} @if($item->uploaded) {{ strtoupper($item->dokumen->tipe_file) }} @else Belum Diupload @endif @if($item->uploaded && session('revisi_dokumen_ids') && in_array($item->dokumen->id, session('revisi_dokumen_ids'))) Direvisi @endif
@if($item->uploaded) Lihat File @endif
@if($item->uploaded)
@else
Pemohon belum mengunggah dokumen ini.
@endif
@endforeach
@else @foreach($allDocs as $i => $item)
{{ $i+1 }}. {{ $item->nama_dokumen }} @if($item->uploaded) {{ strtoupper($item->dokumen->tipe_file) }} @else Belum Diupload @endif
@if($item->uploaded) Lihat @endif
@if($item->uploaded && $item->dokumen->pemeriksaan)
{{ $item->dokumen->pemeriksaan->status_label }} @if($item->dokumen->pemeriksaan->keterangan) {{ $item->dokumen->pemeriksaan->keterangan }} @endif
@endif
@endforeach @endif
{{-- SIDEBAR - KANAN (4 kolom) --}}
@endsection @section('scripts') @endsection