58 lines
1.4 KiB
PHP
58 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\Models\Pemasukan;
|
|
use App\Models\Pengeluaran;
|
|
|
|
class DataKasController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$pemasukans = Pemasukan::all()->map(function ($item) {
|
|
$item->jenis = 'masuk';
|
|
return $item;
|
|
});
|
|
|
|
$pengeluarans = Pengeluaran::all()->map(function ($item) {
|
|
$item->jenis = 'keluar';
|
|
return $item;
|
|
});
|
|
|
|
$data_kas = $pemasukans->concat($pengeluarans)->sortByDesc('tanggal')->values();
|
|
|
|
$total_pemasukan = 0;
|
|
$total_pengeluaran = 0;
|
|
|
|
foreach ($data_kas as $item) {
|
|
$qty = $item->quantity ?? 1;
|
|
$harga = $item->harga ?? 0;
|
|
$jumlah = $item->jumlah ?? 0;
|
|
|
|
if ($item->kategori === 'barang') {
|
|
$subtotal = $qty * $harga;
|
|
} else {
|
|
$subtotal = $jumlah;
|
|
}
|
|
|
|
if ($item->jenis === 'masuk') {
|
|
$total_pemasukan += $subtotal;
|
|
} else {
|
|
$total_pengeluaran += $subtotal;
|
|
}
|
|
|
|
$item->subtotal = $subtotal;
|
|
}
|
|
|
|
$saldo_akhir = $total_pemasukan - $total_pengeluaran;
|
|
|
|
return view('data-kas.index', compact('data_kas', 'total_pemasukan', 'total_pengeluaran', 'saldo_akhir'));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|