nanosanteservice/app/Models/NhInsurancesSubscription.php

73 lines
1.7 KiB
PHP

<?php
/**
* Created by Reliese Model.
*/
namespace App\Models;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Model;
/**
* Class NhInsurancesSubscription
*
* @property int $id
* @property string $insurance_subscription_id
* @property int $network_id
* @property int $user_id
* @property int $number_of_months
* @property float $bonus_amount
* @property int $number_of_beneficiaries
* @property float $total_bonus_amount
* @property string $state
* @property string $insurance_action
* @property Carbon $created_at
* @property Carbon $updated_at
*
* @package App\Models
*/
class NhInsurancesSubscription extends Model
{
protected $table = 'nh_insurances_subscriptions';
protected $fillable = [
'insurance_subscription_id',
'network_id',
'user_id',
'number_of_months',
'total_bonus_amount',
'number_of_beneficiaries',
'bonus_amount',
'state',
'insurance_action'
];
public function network()
{
return $this->belongsTo(Network::class, 'network_id');
}
public function user()
{
return $this->belongsTo(User::class, 'user_id');
}
public function beneficiaries()
{
return $this->hasManyThrough(NhHavingRight::class, NhInsurancesHavingRight::class,
'insurance_subscription_id', 'id', 'id', 'having_right_id');
}
public function nhNetworkConfig()
{
return $this->belongsTo(NhNetworksConfig::class, 'network_id', 'network_id');
}
public function payment()
{
return $this->belongsTo(NhInsurancesPayment::class, 'insurance_subscription_id', 'insurance_subscription_id');
}
}