File: /var/www/vhost/disk-apps/demo.sports-crowd.com/app/Models/Membership/MembershipOrder.php
<?php
namespace App\Models\Membership;
use App\DocumentType;
use App\PaymentTransaction;
use App\User;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class MembershipOrder extends Model
{
protected $casts = [
'total_price' => 'float',
'sync_with_erp' => 'boolean',
];
protected $fillable = [
'buyer_user_id',
'payment_transaction_id',
'status',
'total_price',
'sync_with_erp',
'first_name',
'last_name',
'document_type_id',
'document',
'email',
'phone',
'dial_code',
'country_code',
'address',
];
public function buyer(): BelongsTo
{
return $this->belongsTo(User::class, 'buyer_user_id');
}
public function documentType()
{
return $this->belongsTo(DocumentType::class)->select(array('id', 'name', 'alias'));
}
public function paymentTransaction(): BelongsTo
{
return $this->belongsTo(PaymentTransaction::class, 'payment_transaction_id');
}
public function items(): HasMany
{
return $this->hasMany(MembershipOrderItem::class);
}
}