diff --git a/app/Http/Controllers/InputGajiController.php b/app/Http/Controllers/InputGajiController.php
index fce2c3e..5be857a 100644
--- a/app/Http/Controllers/InputGajiController.php
+++ b/app/Http/Controllers/InputGajiController.php
@@ -51,10 +51,10 @@ private function generateKode($kategori)
// Tentukan kode dasar berdasarkan kategori
$kodeDasar = 0;
switch ($kategori) {
- case 'utang_gaji':
+ case 'utang gaji':
$kodeDasar = 2;
break;
- case 'beban_gaji':
+ case 'beban gaji':
$kodeDasar = 5;
break;
default:
diff --git a/app/Http/Controllers/LaporanController.php b/app/Http/Controllers/LaporanController.php
index 84f9dda..6bf45dd 100644
--- a/app/Http/Controllers/LaporanController.php
+++ b/app/Http/Controllers/LaporanController.php
@@ -6,7 +6,9 @@
use App\Models\LaporanModel;
use Barryvdh\DomPDF\Facade\Pdf;
use Maatwebsite\Excel\Facades\Excel;
-use App\Exports\LaporanExport;
+use Maatwebsite\Excel\Concerns\FromCollection;
+use Maatwebsite\Excel\Concerns\WithHeadings;
+use Maatwebsite\Excel\Concerns\WithMapping;
class LaporanController extends Controller
{
@@ -24,27 +26,158 @@ public function index()
public function exportExcel()
{
- return Excel::download(new LaporanExport, 'laporan-keuangan-'.date('Y-m-d').'.xlsx');
+ try {
+ // Buat class export inline
+ $export = new class implements FromCollection, WithHeadings, WithMapping {
+ public function collection()
+ {
+ return LaporanModel::orderBy('Tanggal', 'desc')->get();
+ }
+
+ public function headings(): array
+ {
+ return [
+ 'ID',
+ 'Tanggal',
+ 'Keterangan',
+ 'Nama Karyawan',
+ 'Uang Masuk',
+ 'Uang Keluar',
+ 'Gaji',
+ ];
+ }
+
+ public function map($laporan): array
+ {
+ return [
+ $laporan->id,
+ $laporan->Tanggal,
+ $laporan->keterangan,
+ $laporan->nama_karyawan,
+ $laporan->uang_masuk,
+ $laporan->uang_keluar,
+ $laporan->gaji,
+ ];
+ }
+ };
+
+ return Excel::download($export, 'laporan-keuangan-'.date('Y-m-d').'.xlsx');
+ } catch (\Exception $e) {
+ return redirect()->back()->with('error', 'Gagal mengekspor Excel: ' . $e->getMessage());
+ }
}
public function exportPDF()
{
- $laporan = LaporanModel::orderBy('Tanggal', 'desc')->get();
- $totalUangMasuk = LaporanModel::sum('uang_masuk');
- $totalUangKeluar = LaporanModel::sum('uang_keluar');
- $totalGaji = LaporanModel::sum('gaji');
- $totalKredit = $totalUangKeluar + $totalGaji;
- $saldo = $totalUangMasuk - $totalKredit;
-
- $pdf = PDF::loadView('laporan-pdf', compact(
- 'laporan',
- 'totalUangMasuk',
- 'totalUangKeluar',
- 'totalGaji',
- 'totalKredit',
- 'saldo'
- ));
-
- return $pdf->download('laporan-keuangan-'.date('Y-m-d').'.pdf');
+ try {
+ $laporan = LaporanModel::orderBy('Tanggal', 'desc')->get();
+ $totalUangMasuk = LaporanModel::sum('uang_masuk');
+ $totalUangKeluar = LaporanModel::sum('uang_keluar');
+ $totalGaji = LaporanModel::sum('gaji');
+ $totalKredit = $totalUangKeluar + $totalGaji;
+ $saldo = $totalUangMasuk - $totalKredit;
+
+ // Generate PDF langsung menggunakan HTML inline
+ $html = '
+
+
+
+ Laporan Keuangan
+
+
+
+ Laporan Keuangan
+ Tanggal: '.date('d-m-Y').'
+
+
+
+
+ No |
+ Tanggal |
+ Keterangan |
+ Nama Karyawan |
+ Uang Masuk |
+ Uang Keluar |
+ Gaji |
+
+
+ ';
+
+ foreach($laporan as $index => $item) {
+ $html .= '
+
+ '.($index + 1).' |
+ '.$item->Tanggal.' |
+ '.$item->keterangan.' |
+ '.$item->nama_karyawan.' |
+ Rp '.number_format($item->uang_masuk, 0, ',', '.').' |
+ Rp '.number_format($item->uang_keluar, 0, ',', '.').' |
+ Rp '.number_format($item->gaji, 0, ',', '.').' |
+
';
+ }
+
+ $html .= '
+
+
+
+
+
Ringkasan
+
+
+ Total Uang Masuk |
+ Rp '.number_format($totalUangMasuk, 0, ',', '.').' |
+
+
+ Total Uang Keluar |
+ Rp '.number_format($totalUangKeluar, 0, ',', '.').' |
+
+
+ Total Gaji |
+ Rp '.number_format($totalGaji, 0, ',', '.').' |
+
+
+ Total Kredit |
+ Rp '.number_format($totalKredit, 0, ',', '.').' |
+
+
+ Saldo |
+ Rp '.number_format($saldo, 0, ',', '.').' |
+
+
+
+
+ ';
+
+ $pdf = PDF::loadHTML($html);
+ return $pdf->download('laporan-keuangan-'.date('Y-m-d').'.pdf');
+ } catch (\Exception $e) {
+ return redirect()->back()->with('error', 'Gagal mengekspor PDF: ' . $e->getMessage());
+ }
}
}
\ No newline at end of file
diff --git a/app/Http/Controllers/UangKeluarController.php b/app/Http/Controllers/UangKeluarController.php
index 74de8c2..7c3f659 100644
--- a/app/Http/Controllers/UangKeluarController.php
+++ b/app/Http/Controllers/UangKeluarController.php
@@ -54,16 +54,19 @@ private function generateKode($kategori)
case 'kas':
$kodeDasar = 1;
break;
- case 'utang_usaha':
+ case 'utang usaha':
$kodeDasar = 2;
break;
- case 'utang_bank':
+ case 'utang bank':
$kodeDasar = 2;
break;
- case 'beban_listrik':
+ case 'modal usaha':
+ $kodeDasar = 3;
+ break;
+ case 'beban listrik':
$kodeDasar = 5;
break;
- case 'beban_sewa':
+ case 'beban sewa':
$kodeDasar = 5;
break;
default:
diff --git a/app/Http/Controllers/UangMasukController.php b/app/Http/Controllers/UangMasukController.php
index 25f3606..2158b61 100644
--- a/app/Http/Controllers/UangMasukController.php
+++ b/app/Http/Controllers/UangMasukController.php
@@ -54,13 +54,13 @@ private function generateKode($kategori)
case 'kas':
$kodeDasar = 1;
break;
- case 'modal_pemilik':
+ case 'modal pemilik':
$kodeDasar = 3;
break;
- case 'pendapatan_penjualan':
+ case 'pendapatan penjualan':
$kodeDasar = 4;
break;
- case 'pendapatan_jasa':
+ case 'pendapatan jasa':
$kodeDasar = 4; // Jika ada kode yang sama, bisa disesuaikan
break;
default:
diff --git a/resources/views/Home.blade.php b/resources/views/Home.blade.php
index d7a9715..afe705b 100644
--- a/resources/views/Home.blade.php
+++ b/resources/views/Home.blade.php
@@ -2,11 +2,11 @@
@section('content')
-
-
-
-
Dashboard
-