rsab_harapan_kita/app/Http/Controllers/DashboardController.php
2025-04-27 20:56:03 +07:00

42 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\MsPasien;
use App\Models\MsTindakan;
use App\Models\TrTransaksi;
use Illuminate\Http\Request;
class DashboardController extends Controller
{
public function index()
{
// Data pasien per hari
$pasienPerHari = MsPasien::selectRaw('DATE(created_at) as tanggal, COUNT(*) as jumlah')
->groupBy('tanggal')
->orderBy('tanggal', 'desc')
->take(7)
->get();
// Data pendapatan per hari
$pendapatanPerHari = TrTransaksi::selectRaw('DATE(tr_transaksis.created_at) as tanggal, SUM(tr_transaksis.JmlTindakan * ms_tindakans.TarifTindakan) as total')
->join('ms_tindakans', 'tr_transaksis.IdTindakan', '=', 'ms_tindakans.IdTindakan')
->groupBy('tanggal')
->orderBy('tanggal', 'desc')
->take(7)
->get();
// Data pasien berdasarkan jenis kelamin (contoh)
$genderData = [
'Laki-laki' => MsPasien::where('JenisKelamin', 'L')->count(),
'Perempuan' => MsPasien::where('JenisKelamin', 'P')->count(),
];
if (array_sum($genderData) == 0) {
$genderData = ['Laki-laki' => 120, 'Perempuan' => 100]; // Dummy
}
return view('dashboard', compact('pasienPerHari', 'pendapatanPerHari', 'genderData'));
}
}