Set permanent bank account of member

This commit is contained in:
philipp lang 2025-04-03 00:56:07 +02:00
parent 858ae7f8d1
commit b541d246e0
3 changed files with 8 additions and 1 deletions

View File

@ -61,7 +61,7 @@ class InsertMemberAction
} }
return tap(Member::updateOrCreate(['nami_id' => $member->id], $payload), function ($insertedMember) use ($member) { return tap(Member::updateOrCreate(['nami_id' => $member->id], $payload), function ($insertedMember) use ($member) {
$insertedMember->bankAccount()->updateOrCreate([ $insertedMember->bankAccount->update([
'iban' => $member->bankAccount->iban, 'iban' => $member->bankAccount->iban,
'bic' => $member->bankAccount->bic, 'bic' => $member->bankAccount->bic,
'blz' => $member->bankAccount->blz, 'blz' => $member->bankAccount->blz,

View File

@ -12,4 +12,6 @@ class BankAccount extends Model
use HasFactory; use HasFactory;
public $guarded = []; public $guarded = [];
public $primaryKey = 'member_id';
} }

View File

@ -304,12 +304,17 @@ class Member extends Model implements Geolocatable
public static function booted() public static function booted()
{ {
static::created(function (self $model): void {
$model->bankAccount()->create([]);
});
static::deleting(function (self $model): void { static::deleting(function (self $model): void {
$model->memberships->each->delete(); $model->memberships->each->delete();
$model->courses->each->delete(); $model->courses->each->delete();
$model->invoicePositions->each(function ($position) { $model->invoicePositions->each(function ($position) {
$position->delete(); $position->delete();
}); });
$model->bankAccount()->delete();
}); });
} }