@extends('layouts.app') @section('content') @php $chartLabels = []; $chartBiayaData = []; $chartProfitData = []; foreach($proyeks as $proyek) { // [PERBAIKAN] Pastikan data untuk chart juga float $totalBiaya = (float) ($proyek->total_pengeluaran ?? 0) + (float) ($proyek->total_upah ?? 0); $profitLoss = (float) ($proyek->nilai_kontrak ?? 0) - $totalBiaya; // Hanya masukkan ke chart jika ada datanya if ($totalBiaya > 0 || $profitLoss !== 0) { $chartLabels[] = $proyek->nama_proyek; $chartBiayaData[] = $totalBiaya; $chartProfitData[] = $profitLoss; } } @endphp
Dokumentasi dan ringkasan finansial dari seluruh proyek.
Rp. {{ number_format($summary['total_nilai_kontrak'] ?? 0, 0, ',', '.') }}
Rp. {{ number_format($summary['total_biaya_proyek'] ?? 0, 0, ',', '.') }}
Rp. {{ number_format($summary['total_profit_loss'] ?? 0, 0, ',', '.') }}
| Nama Proyek | Status | Nilai Kontrak | Total Biaya | Profit/Loss | |
|---|---|---|---|---|---|
| {{ $proyek->nama_proyek ?? 'Nama Proyek Tidak Tersedia' }} | @php $statusClass = ''; switch ($proyek->status ?? '') { case 'Selesai': $statusClass = 'bg-green-100 text-green-800'; break; case 'Sedang Berjalan': $statusClass = 'bg-yellow-100 text-yellow-800'; break; default: $statusClass = 'bg-gray-100 text-gray-800'; } @endphp {{ $proyek->status ?? 'Status Tidak Diketahui' }} | Rp. {{ number_format($nilaiKontrak, 0, ',', '.') }} | Rp. {{ number_format($totalBiaya, 0, ',', '.') }} | Rp. {{ number_format($profitLoss, 0, ',', '.') }} | |
Opsi Laporan
{{-- [PERBAIKAN] Menggunakan json_encode($modalData) --}}
Eksport CSV
Eksport PDF
|
|||||
|
Tidak ada data proyek. Silakan ubah filter atau tambahkan data proyek baru. |
|||||