78 lines
1.6 KiB
PHP
78 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
use Illuminate\Database\Eloquent\Relations\HasOne;
|
|
|
|
class Registrasi extends Model
|
|
{
|
|
/** @use HasFactory<\Database\Factories\RegistrasiFactory> */
|
|
use HasFactory;
|
|
|
|
protected $table = 'registrasis';
|
|
|
|
protected $fillable = [
|
|
'pasien_id',
|
|
'asuransi_id',
|
|
'pegawai_id',
|
|
'ruang_pelayanan_id',
|
|
'nomor_kartu_asuransi',
|
|
'tanggal_registrasi',
|
|
'keluhan',
|
|
'nomor_antrian',
|
|
'status',
|
|
];
|
|
|
|
protected $casts = [
|
|
'status' => 'string'
|
|
];
|
|
|
|
public function scopeMenunggu($query)
|
|
{
|
|
return $query->where('status', 'menunggu');
|
|
}
|
|
|
|
public function scopeDiproses($query)
|
|
{
|
|
return $query->where('status', 'sedang_diproses');
|
|
}
|
|
|
|
public function scopeSelesai($query)
|
|
{
|
|
return $query->where('status', 'selesai');
|
|
}
|
|
|
|
public function pasien(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Pasien::class);
|
|
}
|
|
|
|
public function asuransi(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Asuransi::class);
|
|
}
|
|
|
|
public function pegawai(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Pegawai::class);
|
|
}
|
|
|
|
public function ruang_pelayanan(): BelongsTo
|
|
{
|
|
return $this->belongsTo(RuangPelayanan::class);
|
|
}
|
|
|
|
public function transaksi(): HasOne
|
|
{
|
|
return $this->hasOne(Transaksi::class);
|
|
}
|
|
|
|
public function tindakan()
|
|
{
|
|
return $this->belongsTo(Tindakan::class);
|
|
}
|
|
}
|