From e55cdd19888db9eb7fb64a5463b35af09c8ccd91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=BCnther?= Date: Wed, 5 Aug 2026 10:00:02 +0200 Subject: [PATCH] Moved bank transfer logic to special module --- CLAUDE.md | 17 ++ .../Views/Partials/TenantPaymentMethods.vue | 12 +- .../Event/Views/Partials/CommonSettings.vue | 19 ++- .../SignUpForm/after-submit/SubmitSuccess.vue | 60 ++++--- app/EventPaymentModules/CLAUDE.md | 89 +++++++++++ .../DTO/RegistrationSummaryRequest.php | 12 +- .../DTO/RegistrationSummaryResponse.php | 19 ++- .../Modules/AccountTransferPaymentModule.php | 51 +++++- .../Modules/UndefinedPaymentModule.php | 21 ++- app/EventPaymentModules/ProvidesGiroCode.php | 21 +++ .../Controllers/GiroCodeGetController.php | 22 ++- .../EventSignUpSuccessfullMail.php | 17 +- .../ParticipantPaymentMissingPaymentMail.php | 17 +- app/Models/EventParticipant.php | 48 +++++- app/Resources/EventParticipantResource.php | 8 + .../emails/events/signup_complete.blade.php | 20 ++- .../missing_amount.blade.php | 2 +- .../views/emails/subparts/payment.blade.php | 124 +++++++-------- .../EventParticipantPaymentSummaryTest.php | 147 ++++++++++++++++++ tests/Unit/EventPaymentModuleRegistryTest.php | 7 + tests/Unit/PaymentMethodOptionsTest.php | 5 +- tests/Unit/RegistrationSummaryTest.php | 96 ++++++++++++ 22 files changed, 669 insertions(+), 165 deletions(-) create mode 100644 CLAUDE.md create mode 100644 app/EventPaymentModules/CLAUDE.md create mode 100644 app/EventPaymentModules/ProvidesGiroCode.php create mode 100644 tests/Feature/EventParticipantPaymentSummaryTest.php create mode 100644 tests/Unit/RegistrationSummaryTest.php diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..ed8db94 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,17 @@ +# CLAUDE.md + +Laravel 12 + Inertia/Vue, mandantenfähig (custom `tenant`-Scoping über `app('tenant')`, gesetzt in +`app/Middleware/IdentifyTenant.php`). PHP 8.5 — Tests/Artisan laufen im Container: +`docker exec mareike-mareike-app-1 php artisan test`. + +## Projektkonventionen (verbindlich) + +Die verbindlichen Konventionen (Actions/Request-Command-Response, Controller, Repositories, Models/Resources, Tenant, +Routing, Mails) stehen in `.ai/conventions.md` und werden hier eingebunden — **immer beachten**: + +@.ai/conventions.md + +## Bereichs-Dokumentation + +- [Zahlungsmodule](app/EventPaymentModules/CLAUDE.md) — interface-gesteuerte Zahlungsarten (Optionen, Config, + Anmelde-Zusammenfassung, GiroCode/Fähigkeits-Interfaces, neues Modul hinzufügen). diff --git a/app/Domains/Admin/Views/Partials/TenantPaymentMethods.vue b/app/Domains/Admin/Views/Partials/TenantPaymentMethods.vue index d778c10..ac8d306 100644 --- a/app/Domains/Admin/Views/Partials/TenantPaymentMethods.vue +++ b/app/Domains/Admin/Views/Partials/TenantPaymentMethods.vue @@ -1,8 +1,9 @@