join('ms__pasiens', 'tr_registrasis.MRPasien', '=', 'ms__pasiens.MRPasien') ->join('ms__asuransis', 'tr_registrasis.IdAsuransi', '=', 'ms__asuransis.IdAsuransi') ->join('ms__ruang_pelayanans', 'tr_registrasis.IdRuangPelayanan', '=', 'ms__ruang_pelayanans.IdRuangPelayanan') ->join('ms__pegawais', 'tr_registrasis.IdPegawai', '=', 'ms__pegawais.IdPegawai') ->select( 'tr_registrasis.NoRegistrasi', 'ms__pasiens.NamaPasien', 'tr_registrasis.TanggalRegistrasi', 'ms__asuransis.NamaAsuransi', 'ms__ruang_pelayanans.NamaRuangPelayanan', 'ms__pegawais.NamaPegawai', 'tr_registrasis.JenisRawat' ) ->where('tr_registrasis.statusenabled', true); if ($request->has('tanggal_start') && $request->has('tanggal_end')) { $query->whereBetween('tr_registrasis.TanggalRegistrasi', [$request->tanggal_start, $request->tanggal_end]); } $pasien = $query->get(); return response()->json([ 'data' => $pasien ]); } public function getPendapatanHarian(Request $request) { $tanggal = $request->tanggal ?? date('Y-m-d'); $pendapatan = DB::table('tr__transaksis') ->join('ms__tindakans', 'tr__transaksis.IdTindakan', '=', 'ms__tindakans.IdTindakan') ->join('ms__pegawais', 'tr__transaksis.IdPegawai', '=', 'ms__pegawais.IdPegawai') ->join('tr_registrasis', 'tr__transaksis.IdRegistrasi', '=', 'tr_registrasis.IdRegistrasi') ->join('ms__pasiens', 'tr_registrasis.MRPasien', '=', 'ms__pasiens.MRPasien') ->select( 'tr__transaksis.created_at as TanggalTransaksi', 'ms__pasiens.NoRM', 'ms__pasiens.NamaPasien', 'tr_registrasis.NoRegistrasi', 'tr_registrasis.TanggalRegistrasi', DB::raw('SUM(ms__tindakans.TarifTindakan * tr__transaksis.JmlTindakan) as total_pendapatan') ) ->whereDate('tr__transaksis.created_at', $tanggal) ->groupBy('tr__transaksis.created_at', 'ms__pasiens.NoRM', 'ms__pasiens.NamaPasien', 'tr_registrasis.NoRegistrasi', 'tr_registrasis.TanggalRegistrasi') ->get(); return response()->json([ 'data' => $pendapatan ]); } }