55 lines
1.9 KiB
PHP
55 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\Asuransi;
|
|
use App\Models\Pasien;
|
|
use App\Models\Registrasi;
|
|
use App\Models\RuangPelayanan;
|
|
use App\Models\Tindakan;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Str;
|
|
|
|
class RegistrasiController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$registrasi = Registrasi::with(['pasien', 'asuransi', 'pegawai', 'ruangPelayanan'])->get();
|
|
$ruangPelayanan = RuangPelayanan::get();
|
|
$asuransi = Asuransi::get();
|
|
$tindakan = Tindakan::get();
|
|
|
|
return view('module.registrasi.index', compact(['registrasi', 'ruangPelayanan', 'asuransi', 'tindakan']));
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
$randomUppercaseString = Str::upper(Str::random(4));
|
|
$pasien = Pasien::where('nik', $request->nik)->first();
|
|
|
|
if ($pasien === null)
|
|
{
|
|
$pasien = new Pasien();
|
|
$pasien->nama = $request->nama;
|
|
$pasien->nik = $request->nik;
|
|
$pasien->tgl_lahir = $request->tgl_lahir;
|
|
$pasien->jenis_kelamin = $request->jenis_kelamin;
|
|
$pasien->created_by = auth('pegawai')->user()->nama;
|
|
$pasien->save();
|
|
}
|
|
|
|
$registrasi = new Registrasi();
|
|
$registrasi->code = now()->format('ymd') . $randomUppercaseString;
|
|
$registrasi->tgl_registrasi = now()->format('Y-m-d');
|
|
$registrasi->id_pasien = $pasien->id;
|
|
$registrasi->id_asuransi = $request->asuransi;
|
|
$registrasi->no_asuransi = $request->no_asuransi;
|
|
$registrasi->id_pegawai = auth('pegawai')->user()->id;
|
|
$registrasi->id_ruang_pelayanan = $request->ruang_pelayanan;
|
|
$registrasi->created_by = auth('pegawai')->user()->nama;
|
|
$registrasi->save();
|
|
|
|
return redirect()->back()->with('message','Registrasi pasien berhasil');
|
|
}
|
|
}
|