Teren-app/app/Models/Account.php
2025-10-02 18:35:02 +02:00

60 lines
1.3 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\HasMany;
class Account extends Model
{
/** @use HasFactory<\Database\Factories\Person/AccountFactory> */
use HasFactory;
protected $fillable = [
'reference',
'description',
'contract_id',
'type_id',
'active',
'initial_amount',
'balance_amount',
];
public function debtor(): BelongsTo
{
return $this->belongsTo(\App\Models\Person\Person::class, 'debtor_id');
}
public function client(): BelongsTo
{
return $this->belongsTo(\App\Models\Person\Person::class, 'client_id');
}
public function type(): BelongsTo
{
return $this->belongsTo(\App\Models\AccountType::class);
}
public function debts(): HasMany
{
return $this->hasMany(\App\Models\Debt::class);
}
public function payments(): HasMany
{
return $this->hasMany(\App\Models\Payment::class);
}
public function bookings(): HasMany
{
return $this->hasMany(\App\Models\Booking::class);
}
public function contract(): BelongsTo
{
return $this->belongsTo(\App\Models\Contract::class);
}
}