File: /mnt/data/ghayatcom/ghayatcom-api/app/Payment.php
<?php
namespace App;
use App\Appointment;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Carbon;
/**
* App\Payment
*
* @property mixed $consultation_type
* @property mixed $sick_leave_verification
* @property mixed $payment_status
*/
class Payment extends Model
{
use SoftDeletes;
protected $hidden = ['created_by','updated_by','deleted_by','deleted_at','updated_at'];
protected $appends = ['payment_status_str'];
public function getPaymentStatusStrAttribute() {
return $this->payment_status == 0 ? 'Blocked' : ($this->payment_status == 1 ? 'Paid' : ($this->payment_status == 2 ? 'Failed' : ($this->payment_status == 3 ? 'Refund requested' : ($this->payment_status == 4 ? 'Refunded' : ($this->payment_status == 5 ? 'Refund rejected':'')))));
}
public function appointment(): HasMany
{
return $this->hasMany(Appointment::class, 'id', 'appointment_id');
}
public function patient(): BelongsTo
{
return $this->belongsTo(User::class, 'patient_id', 'id');
}
public function family_member(): BelongsTo
{
return $this->belongsTo(FamilyMembers::class, 'family_member_id', 'id');
}
public function doctor(): BelongsTo
{
return $this->belongsTo(User::class, 'doctor_id', 'id');
}
}