diff options
Autocommit at 05.05.2022 @ 20:23
2 files changed, 19 insertions, 4 deletions
| -rw-r--r-- | src/EventSystem/EventSystem.cpp | 19 | ||||
| -rw-r--r-- | src/EventSystem/EventSystem.h | 4 |
diff --git a/src/EventSystem/EventSystem.cpp b/src/EventSystem/EventSystem.cpp index ccf31c5..c581669 100644 --- a/src/EventSystem/EventSystem.cpp +++ b/src/EventSystem/EventSystem.cpp @@ -66,28 +66,39 @@ StatusCode EventSystem::reserveTicket(const char* name, const Date& date, const } StatusCode EventSystem::cancelTicketReservation(const char* name, const Date& date, unsigned seatRow, unsigned seatColumn) { + return cancelTicketReservation(name, date, Ticket(seatRow, seatColumn)); +} + +StatusCode EventSystem::cancelTicketReservation(const char* name, const Date& date, const Ticket& ticket) { unsigned ind = indexOfEvent(name, date); if (ind == events.get_count()) return E_EventDoesNotExist; - return events[ind].cancelReservation(seatRow, seatColumn); + return events[ind].cancelReservation(ticket); } StatusCode EventSystem::buyTicket(const char* name, const Date& date, unsigned row, unsigned seat) { + return buyTicket(name, date, Ticket(row, seat)); +} + +StatusCode EventSystem::buyTicket(const char* name, const Date& date, const Ticket& ticket) { unsigned ind = indexOfEvent(name, date); if (ind == events.get_count()) return E_EventDoesNotExist; - return events[ind].buyTicket(Ticket(row, seat)); + return events[ind].buyTicket(ticket); } - StatusCode EventSystem::buyTicket(const char* name, const Date& date, unsigned row, unsigned seat, const char* password) { + return buyTicket(name, date, Ticket(row, seat), password); +} + +StatusCode EventSystem::buyTicket(const char* name, const Date& date, const Ticket& ticket, const char* password) { unsigned ind = indexOfEvent(name, date); if (ind == events.get_count()) return E_EventDoesNotExist; - return events[ind].buyTicketFromReservation(Reservation(Ticket(row, seat)), password); + return events[ind].buyTicketFromReservation(Reservation(ticket), password); } List<Ticket> EventSystem::queryFreeTickets(const char* name, const Date& date) { diff --git a/src/EventSystem/EventSystem.h b/src/EventSystem/EventSystem.h index 7956b72..d7bd127 100644 --- a/src/EventSystem/EventSystem.h +++ b/src/EventSystem/EventSystem.h @@ -26,8 +26,12 @@ public: StatusCode reserveTicket(const char* name, const Date& date, const char* password, const char* note, const Ticket& ticket); StatusCode cancelTicketReservation(const char* name, const Date& date, unsigned seatRow, unsigned seatColumn); + StatusCode cancelTicketReservation(const char* name, const Date& date, const Ticket& ticket); + StatusCode buyTicket(const char* name, const Date& date, unsigned row, unsigned seat); + StatusCode buyTicket(const char* name, const Date& date, const Ticket& ticket); StatusCode buyTicket(const char* name, const Date& date, unsigned row, unsigned seat, const char* password); + StatusCode buyTicket(const char* name, const Date& date, const Ticket& ticket, const char* password); List<Ticket> queryFreeTickets(const char* name, const Date& date); void queryReservations(unsigned eventIndex); |
