49 lines
1.1 KiB
PHP
49 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Carbon\Carbon;
|
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
|
use Illuminate\Database\Eloquent\Relations\HasMany;
|
|
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
|
|
use Illuminate\Database\Eloquent\Relations\HasOneThrough;
|
|
|
|
class Pasien extends Model
|
|
{
|
|
/** @use HasFactory<\Database\Factories\PasienFactory> */
|
|
use HasFactory;
|
|
|
|
|
|
protected $table = 'pasiens';
|
|
|
|
protected $fillable = [
|
|
'nik',
|
|
'nama_pasien',
|
|
'jenis_kelamin',
|
|
'tanggal_lahir',
|
|
'nomor_telepon',
|
|
];
|
|
|
|
public function umur(){
|
|
return Carbon::parse($this->tanggal_lahir)->age;
|
|
}
|
|
|
|
public function registrasi(): HasMany
|
|
{
|
|
return $this->hasMany(Registrasi::class);
|
|
}
|
|
|
|
public function transaksi(): HasOneThrough
|
|
{
|
|
return $this->hasOneThrough(Transaksi::class, Registrasi::class);
|
|
}
|
|
|
|
public function asuransi(): BelongsToMany
|
|
{
|
|
return $this->belongsToMany(Asuransi::class, 'pasien_asuransi',
|
|
'pasien_id', 'asuransi_id');
|
|
}
|
|
}
|