Это должно быть достаточно просто, но я не могу разобраться с этим. У меня есть таблица счетов и таблица платежей. В счете много платежей, и общая сумма платежа рассчитывается с использованием original_amount * exchange_rate. Все, что мне нужно сделать, это разметить оплаченные счета. Вот код:
In Invoice. php
public function payments() {
return $this->hasMany(Payment::class);
}
public function scopePaid($query) {
return $query->whereHas('payments', function (Builder $query)) {
// This is the pseudo code part....
$query->where('original_amount' * 'exchange_rate', '>=', $invoice->amount_due);
}
Я просто sh это было так просто, но, конечно, это не работает. Я всегда мог создать функцию stati c, которая перебирает счета-фактуры, проверяя их оплаченный статус, и возвращает коллекцию оплаченных счетов-фактур, но это не то, что является областью действия, и я надеюсь найти что-то более элегантное, чем это. Есть мысли?
Спасибо!