Website Summary Files Commits Branches @commit @diff @stats
path: root / src / EventSystem
diff options
context:
space:
mode:
3 files changed, 10 insertions, 3 deletions
-rw-r--r--src/EventSystem/Event.cpp7
-rw-r--r--src/EventSystem/Event.h1
-rw-r--r--src/EventSystem/EventSystem.cpp5
diff --git a/src/EventSystem/Event.cpp b/src/EventSystem/Event.cpp
index 3deb58c..e9e0375 100644
--- a/src/EventSystem/Event.cpp
+++ b/src/EventSystem/Event.cpp
@@ -59,8 +59,11 @@ StatusCode Event::buyTicketFromReservation(const Reservation& reservation, const
}
bool Event::ticketIsFree(unsigned row, unsigned seat) {
- Ticket temp(row, seat);
- unsigned ind = tickets.findIndex(temp);
+ return ticketIsFree(Ticket(row, seat));
+}
+
+bool Event::ticketIsFree(const Ticket& ticket) {
+ return tickets.findIndex(ticket) != tickets.get_count() || reservations.findIndex(Reservation(ticket)) != reservations.get_count();
}
int Event::compare(const Event& other) {
diff --git a/src/EventSystem/Event.h b/src/EventSystem/Event.h
index f33b33a..f4c5038 100644
--- a/src/EventSystem/Event.h
+++ b/src/EventSystem/Event.h
@@ -35,6 +35,7 @@ public:
StatusCode buyTicketFromReservation(const Reservation& reservation, const char* password);
bool ticketIsFree(unsigned row, unsigned seat);
+ bool ticketIsFree(const Ticket& ticket);
int compare(const Event& other);
};
diff --git a/src/EventSystem/EventSystem.cpp b/src/EventSystem/EventSystem.cpp
index cdfa6c9..3502b50 100644
--- a/src/EventSystem/EventSystem.cpp
+++ b/src/EventSystem/EventSystem.cpp
@@ -54,7 +54,10 @@ StatusCode EventSystem::cancelEvent(const char* name, const Date& date) {
}
StatusCode EventSystem::reserveTicket(const char* name, const Date& date, char* note, unsigned seatRow, unsigned seatColumn) {
-
+ unsigned ei = indexOfEvent(name, date);
+ if (ei == events.get_count())
+ return E_EventDoesNotExist;
+
}
List<Ticket> EventSystem::queryFreeTickets(const char* name, const Date& dt) {