• Mahmoud Aglan's avatar
    Fix receptionist registration wizard — full rewrite of broken business logic · 45a76a04
    Mahmoud Aglan authored
    Problems fixed:
    - MissingRulesException crash on step 4 (empty rules passed to validate())
    - Guardian was never actually created as Person + Guardian record
    - Guardian was never linked to participant via guardian_participant pivot
    - Enrollment in program never happened (service didn't handle program_id)
    - medical_notes was passed at wrong level (it's on people table, not participants)
    - relation 'guardian' missing from validation (exists in DB CHECK constraint)
    
    Now the wizard properly:
    1. Creates guardian Person + Guardian record (or reuses existing)
    2. Creates participant Person record with all fields (phone, national_id, medical_notes)
    3. Creates Participant via ParticipantService with guardian linked
    4. Attaches guardian via guardian_participant pivot
    5. Enrolls in program via EnrollmentService (auto-finds/creates group)
    6. Added participant phone + national_id fields to step 2
    Co-Authored-By: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
    45a76a04
Name
Last commit
Last update
..
Activities Loading commit data...
Admin Loading commit data...
Assignments Loading commit data...
Attendance Loading commit data...
Audit Loading commit data...
Auth Loading commit data...
Branches Loading commit data...
CashSessions Loading commit data...
Components Loading commit data...
Dashboard Loading commit data...
Enrollments Loading commit data...
Evaluations Loading commit data...
Facilities Loading commit data...
Financial Loading commit data...
Groups Loading commit data...
Guardian Loading commit data...
Inventory Loading commit data...
Invoices Loading commit data...
Messaging Loading commit data...
Notifications Loading commit data...
POS Loading commit data...
Participants Loading commit data...
People Loading commit data...
Pricing Loading commit data...
Profile Loading commit data...
Programs Loading commit data...
Receptionist Loading commit data...
Reports Loading commit data...
Roles Loading commit data...
Schedule Loading commit data...
Settings Loading commit data...
Trainer Loading commit data...
Training Loading commit data...
Users Loading commit data...
Wallets Loading commit data...
Wizards Loading commit data...
BranchSwitcher.php Loading commit data...
Dashboard.php Loading commit data...
GlobalSearch.php Loading commit data...