Scenario:
Participant A registers also participant B and provides only one address, contact data and so on
Backend:
[x] Create participant B with same data as Participant A
[x] Leave team partner wish email field empty for both of them
[x] Add correlation id for both of them (team_partnerwish_correlation_id or something like that.. is empty for "old" mechanism)
[x] Duplicate email of A to B (we have no DB constraint so far)
[x] Participant subscription activation activates both of them
[x] Messaging: Send message only once on duplicated email when participants are connected
[x] Deleting participant => Show Info about enhanced connection (consider also already arranged teams in combination)
[x] => When deleting root-participant => Delete both A and B
[x] => When deleting child-participant => Delete only B (and clear teampartnerWishOriginatorId in A)
[x] Waitinglist: Move both participants on waitinglist if one would fit into regular teams and one would reside on waitinglist )) => more reasonable: Just do nothing, as this can also happen with old mechanism...
[x] Constraint: This can only work if A has enough number of seats! (must be ensured, also in client)
[x] Data that must be queried for: Firstname, Lastname
[x] => Remove Mealspecifics again from new data structure, due to not needed
[x] Data to be copied from A: Address-Data, Email
[x] Data to be new set: Gender = Unknown, NumberOfSeats = 0
[x] Team Arrangement must consider new data structure
[x] Team Swap must consider new data structure
[x] Change Team-Host function: Does not make sense....
[x] JUnit Tests
[x] Maybe Adapt registration success message so that info about team partner registration is also shown
Frontend:
[x] Form must be changed to allow some selection of creating participant B (Probaly show some dialog)
[x] "old" team partner wish invitation process must still work as is (also don't show dropdown if query param is passed)
[x] Adapt registration form to show info when invitation query param is passed
[x] Adapt RegistrationSummary to show info
[x] Adapt admin form to show info about team partner registration in parent participant
[x] Adapt Admin form to show only relevant fields for participant B
[x] Participant-List: Indicate connection somehow (probably also for "old" mechanism).
=> Proposal: Render something like favorite (heart) icon for participants with team partner wish and show info on hover / tooltip ...
[x] Adapt team list to also show connection of teams and hide gender / numSeats for participant B
[x] Show info also in Team Details
[x] Participant B shall not be dispalyed in registrations widget in Dashboard (and shall not be manually activated)
[x] i18n
General:
[x] Cleanup mess with different RegistrationData classes and REST endpoints...
=> Logic from FrontendRunningDinnerServiceRestV2 can be moved to V1 and replace the existing logic there...(client uses this one already...)
Scenario: Participant A registers also participant B and provides only one address, contact data and so on
Backend:
Frontend:
General: