From 48881ef4ed51621f3cd652af0c0fc0788f18bdd1 Mon Sep 17 00:00:00 2001 From: philipp lang Date: Fri, 4 Apr 2025 01:40:09 +0200 Subject: [PATCH] --wip-- [skip ci] --- app/Member/MemberRequest.php | 1 + ...3_30_035130_create_bank_accounts_table.php | 5 ++++ docker-compose.yml | 4 +++ packages/laravel-nami | 2 +- tests/Feature/Member/UpdateTest.php | 29 +++++++++++++++++-- 5 files changed, 38 insertions(+), 3 deletions(-) diff --git a/app/Member/MemberRequest.php b/app/Member/MemberRequest.php index a46513b6..8c158439 100644 --- a/app/Member/MemberRequest.php +++ b/app/Member/MemberRequest.php @@ -121,6 +121,7 @@ class MemberRequest extends FormRequest $namiSync = $member->isDirty(Member::$namiFields); $member->save(); + $member->bankAccount->update($this->input('bank_account')); if ($this->input('has_nami') && null === $member->nami_id) { $this->storeFreshMemberInNami($member); diff --git a/database/migrations/2025_03_30_035130_create_bank_accounts_table.php b/database/migrations/2025_03_30_035130_create_bank_accounts_table.php index cf436128..7249021c 100644 --- a/database/migrations/2025_03_30_035130_create_bank_accounts_table.php +++ b/database/migrations/2025_03_30_035130_create_bank_accounts_table.php @@ -1,5 +1,6 @@ string('account_number')->nullable(); $table->timestamps(); }); + + foreach (Member::get() as $member) { + $member->bankAccount()->create([]); + } } /** diff --git a/docker-compose.yml b/docker-compose.yml index aa27c717..50c63b6b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -92,6 +92,8 @@ services: socketi: image: quay.io/soketi/soketi:89604f268623cf799573178a7ba56b7491416bde-16-debian + ports: + - '6001:6001' environment: SOKETI_DEFAULT_APP_ID: adremaid SOKETI_DEFAULT_APP_KEY: adremakey @@ -104,6 +106,8 @@ services: meilisearch: image: getmeili/meilisearch:v1.6 + ports: + - '7700:7700' volumes: - ./data/meilisearch:/meili_data env_file: diff --git a/packages/laravel-nami b/packages/laravel-nami index f905c316..7189511a 160000 --- a/packages/laravel-nami +++ b/packages/laravel-nami @@ -1 +1 @@ -Subproject commit f905c316ee7913cbf85c386021fbaa28b4b2a158 +Subproject commit 7189511a550ecce5c9b8f6a0b31e3b4e011752a2 diff --git a/tests/Feature/Member/UpdateTest.php b/tests/Feature/Member/UpdateTest.php index f7747cd3..f85eb948 100644 --- a/tests/Feature/Member/UpdateTest.php +++ b/tests/Feature/Member/UpdateTest.php @@ -32,7 +32,7 @@ class UpdateTest extends TestCase $response = $this ->from("/member/{$member->id}") - ->patch("/member/{$member->id}", array_merge($member->getAttributes(), ['has_nami' => true])); + ->patch("/member/{$member->id}", array_merge($member->getAttributes(), ['has_nami' => true, 'bank_account' => []])); $response->assertRedirect('/member'); NamiPutMemberAction::spy()->shouldHaveReceived('handle')->withArgs( @@ -51,7 +51,7 @@ class UpdateTest extends TestCase $response = $this ->from("/member/{$member->id}") - ->patch("/member/{$member->id}", array_merge($member->getAttributes(), ['has_nami' => true, 'firstname' => '::firstname::'])); + ->patch("/member/{$member->id}", array_merge($member->getAttributes(), ['has_nami' => true, 'firstname' => '::firstname::', 'bank_account' => []])); $response->assertRedirect("/member/{$member->id}/edit?conflict=1"); } @@ -64,6 +64,7 @@ class UpdateTest extends TestCase NamiPutMemberAction::allowToRun(); $this->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => [], 'main_phone' => '02103 4455129', 'fax' => '02103 4455130', 'children_phone' => '02103 4455130', @@ -77,6 +78,25 @@ class UpdateTest extends TestCase ]); } + public function testItUpdatesKontoverbindung(): void + { + $this->withoutExceptionHandling()->login()->loginNami(); + $member = $this->member(); + $this->fakeRequest(); + NamiPutMemberAction::allowToRun(); + + $this->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => ['iban' => 'SSS', 'bic' => 'AAA'], + 'has_nami' => true, + ])); + + $this->assertDatabaseHas('bank_accounts', [ + 'member_id' => $member->id, + 'iban' => 'SSS', + 'bic' => 'AAA', + ]); + } + public function testItUpdatesWiederverwendenFlag(): void { $this->withoutExceptionHandling()->login()->loginNami(); @@ -85,6 +105,7 @@ class UpdateTest extends TestCase NamiPutMemberAction::allowToRun(); $this->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => [], 'keepdata' => true, 'has_nami' => true, ])); @@ -102,6 +123,7 @@ class UpdateTest extends TestCase NamiPutMemberAction::allowToRun(); $this->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => [], 'location' => null, ])); @@ -119,6 +141,7 @@ class UpdateTest extends TestCase $response = $this ->from("/member/{$member->id}") ->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => [], 'other_country' => 'englisch', ])); @@ -138,6 +161,7 @@ class UpdateTest extends TestCase $this->patch("/member/{$member->id}", [ ...$member->getAttributes(), + 'bank_account' => [], 'has_nami' => true, 'first_activity_id' => $activity->id, 'first_subactivity_id' => $subactivity->id, @@ -178,6 +202,7 @@ class UpdateTest extends TestCase $response = $this ->from("/member/{$member->id}") ->patch("/member/{$member->id}", array_merge($member->getAttributes(), [ + 'bank_account' => [], 'ps_at' => '2021-02-01', 'more_ps_at' => '2021-02-02', 'has_svk' => true,