32 lines
1014 B
PHP
32 lines
1014 B
PHP
<?php
|
|
|
|
namespace App\Domains\ParticipantRefund\Actions\ReleaseRefund;
|
|
|
|
use App\Models\EventParticipant;
|
|
use App\ValueObjects\Amount;
|
|
|
|
class ReleaseRefundRequest
|
|
{
|
|
public function __construct(
|
|
public readonly EventParticipant $participant,
|
|
public readonly Amount $amount,
|
|
public readonly string $reason,
|
|
public readonly ?string $reasonNote = null,
|
|
/**
|
|
* Die Bankverbindung, wenn sie der Aktionsleitung bereits vorliegt.
|
|
*
|
|
* Sind beide gesetzt, entfällt der Umweg über den Teili: die Erstattung wird sofort eingereicht.
|
|
* Bleiben sie leer, läuft der übliche Weg über den Bestätigungslink.
|
|
*/
|
|
public readonly ?string $accountOwner = null,
|
|
public readonly ?string $accountIban = null,
|
|
) {
|
|
}
|
|
|
|
/** Ob die Erstattung ohne Zutun des Teilis eingereicht werden kann. */
|
|
public function hasBankDetails(): bool
|
|
{
|
|
return filled($this->accountOwner) && filled($this->accountIban);
|
|
}
|
|
}
|