<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

use App\Traits\PushNew;

class PaymentItem extends Model
{
	use PushNew;

	public $timestamps = FALSE;

	/* RELATIONS */

	public function invoice()
	{
		return $this->belongsTo(Invoice::class);
	}

	public function payment() {
		return $this->belongsTo(Payment::class);
	}

	/* ATTRIBUTES */

	/**
	 * If our amount is negative, and invoice_id is null, then this is a reversal.
	 *
	 * @param $value
	 * @return float
	 */
	public function getAllocAmtAttribute($value): float
	{
		return (is_null($this->invoice_id) && $value < 0) ? -$value : $value;
	}
}