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

87 lines
2.9 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\TrRegistrasi;
use App\Models\MsPasien;
use App\Models\MsAsuransi;
use App\Models\MsPegawai;
use App\Models\MsRuangPelayanan;
use Illuminate\Http\Request;
class TrRegistrasiController extends Controller
{
public function index(Request $request)
{
$search = $request->input('search');
$registrasis = TrRegistrasi::with(['MsPasien', 'MsAsuransi', 'MsPegawai', 'MsRuangPelayanan'])
->when($search, function ($query, $search) {
return $query->where('id', 'like', "%$search%")
->orWhere('MRPasien', 'like', "%$search%");
})
->paginate(10);
return view('tr_registrasi.index', compact('registrasis'));
}
public function create()
{
$pasiens = MsPasien::all();
$asuransis = MsAsuransi::all();
$pegawais = MsPegawai::all();
$ruangPelayanans = MsRuangPelayanan::all();
return view('tr_registrasi.create', compact('pasiens', 'asuransis', 'pegawais', 'ruangPelayanans'));
}
public function store(Request $request)
{
$request->validate([
'TanggalRegistrasi' => 'required|date',
'MRPasien' => 'required|exists:ms_pasiens,id',
'NomorKartuAsuransi' => 'nullable|string|max:255',
'IdAsuransi' => 'required|exists:ms_asuransis,id',
'IdPegawai' => 'required|exists:ms_pegawais,id',
'IdRuangPelayanan' => 'required|exists:ms_ruang_pelayanans,id',
]);
TrRegistrasi::create($request->all());
return redirect()->route('tr_registrasi.index')->with('success', 'Data registrasi berhasil ditambahkan.');
}
public function edit(TrRegistrasi $tr_registrasi)
{
$pasiens = MsPasien::all();
$asuransis = MsAsuransi::all();
$pegawais = MsPegawai::all();
$ruangPelayanans = MsRuangPelayanan::all();
return view('tr_registrasi.edit', compact('tr_registrasi', 'pasiens', 'asuransis', 'pegawais', 'ruangPelayanans'));
}
public function update(Request $request, TrRegistrasi $tr_registrasi)
{
$request->validate([
'TanggalRegistrasi' => 'required|date',
'MRPasien' => 'required|exists:ms_pasiens,id',
'NomorKartuAsuransi' => 'nullable|string|max:255',
'IdAsuransi' => 'required|exists:ms_asuransis,id',
'IdPegawai' => 'required|exists:ms_pegawais,id',
'IdRuangPelayanan' => 'required|exists:ms_ruang_pelayanans,id',
]);
$tr_registrasi->update($request->all());
return redirect()->route('tr_registrasi.index')->with('success', 'Data registrasi berhasil diperbarui.');
}
public function destroy(TrRegistrasi $tr_registrasi)
{
$tr_registrasi->delete();
return redirect()->route('tr_registrasi.index')->with('success', 'Data registrasi berhasil dihapus.');
}
}