= Use-case 0006 - Book Venue = '''Initiating actor:''' Bride / Groom (Wedding owner) '''Other actors:''' Wedding Organizer (Assistant) == Description == The user books a venue for the wedding. The venue booking includes date, start/end time, booking status and price, and connects the wedding with a chosen venue. == Scenario == 1. The user opens "Venues" and searches/selects a venue. 2. The system shows available venues with details. {{{ SET search_path TO project; SELECT v.venue_id, v.name, v.location, v.city, v.capacity, v.price_per_guest, vt.type_name FROM venue v JOIN venue_type vt ON v.type_id = vt.type_id ORDER BY v.city, v.name; }}} 3. The user selects a venue and clicks "Book". 4. The system displays booking form: date, start_time, end_time, status, price. 5. The user submits booking. 6. The system inserts the booking into database. {{{ SET search_path TO project; INSERT INTO venue_booking("date", start_time, end_time, status, price, venue_id, wedding_id) VALUES (:date, :start_time, :end_time, :status, :price, :venue_id, :wedding_id) RETURNING booking_id; }}} 7. The system confirms booking and displays booked venue details.