Changes between Initial Version and Version 1 of UseCase0011


Ignore:
Timestamp:
01/10/26 18:03:07 (10 days ago)
Author:
193284
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCase0011

    v1 v1  
     1= Use-case 0011 - Assign Attendance / Seating =
     2
     3'''Initiating actor:''' Wedding Organizer (Assistant)
     4
     5'''Other actors:''' Bride / Groom (Wedding owner)
     6
     7== Description ==
     8The organizer assigns seating details and attendance metadata for guests per event, including table number and role (e.g., Guest, Maid of Honor, Best Man). This data is stored in Attendance.
     9
     10== Scenario ==
     111. The organizer selects an event.
     122. The system lists guests with RSVP info.
     13
     14{{{
     15SET search_path TO project;
     16
     17SELECT g.guest_id, g.first_name, g.last_name,
     18       COALESCE(r.status, 'pending') AS rsvp_status
     19FROM guest g
     20LEFT JOIN event_rsvp r ON r.guest_id = g.guest_id AND r.event_id = :event_id
     21WHERE g.wedding_id = :wedding_id
     22ORDER BY g.last_name, g.first_name;
     23}}}
     24
     253. The organizer assigns table number and role.
     264. The system saves attendance record.
     27
     28{{{
     29SET search_path TO project;
     30
     31INSERT INTO attendance(status, table_number, role, guest_id, event_id)
     32VALUES (:status, :table_number, :role, :guest_id, :event_id)
     33RETURNING attendance_id;
     34}}}
     35
     365. If an attendance record already exists, the system updates it.
     37
     38{{{
     39SET search_path TO project;
     40
     41UPDATE attendance
     42SET status = :status,
     43    table_number = :table_number,
     44    role = :role
     45WHERE guest_id = :guest_id AND event_id = :event_id;
     46}}}
     47
     486. The system confirms seating/attendance update.