From aa8b39d1ea473224ab7b52aaf580201fbc1dfbbf Mon Sep 17 00:00:00 2001 From: Syndamia Date: Mon, 2 May 2022 22:00:43 +0300 Subject: Autocommit at 02.05.2022 @ 22:00 --- src/EventSystem/Event.cpp | 7 +++++-- src/EventSystem/Event.h | 2 +- src/EventSystem/EventSystem.h | 2 +- src/OrderedList/OrderedList.cpp | 12 ------------ src/OrderedList/OrderedList.h | 16 ---------------- 5 files changed, 7 insertions(+), 32 deletions(-) delete mode 100644 src/OrderedList/OrderedList.cpp delete mode 100644 src/OrderedList/OrderedList.h (limited to 'src') diff --git a/src/EventSystem/Event.cpp b/src/EventSystem/Event.cpp index f0a3f75..a6d0e95 100644 --- a/src/EventSystem/Event.cpp +++ b/src/EventSystem/Event.cpp @@ -36,9 +36,12 @@ StatusCode Event::buyTicket(const Ticket& ticket) { } StatusCode Event::buyTicketFromReservation(const Reservation& reservation, const char* password) { - if (!reservations.contain(reservation)) return E_ReservationDoesNotExist; + unsigned resInd = reservations.findIndex(reservation); + if (resInd == reservations.get_count()) return E_ReservationDoesNotExist; if (!reservation.checkPassword(password)) return E_WrongReservationPassword; - reservations.removeAt + reservations.removeAt(resInd); + tickets.insert(reservation.get_ticket()); + return Success; } diff --git a/src/EventSystem/Event.h b/src/EventSystem/Event.h index fa1169a..ad3ae89 100644 --- a/src/EventSystem/Event.h +++ b/src/EventSystem/Event.h @@ -1,7 +1,7 @@ #ifndef HEADER_EVENTSYSTEM_EVENT #define HEADER_EVENTSYSTEM_EVENT -#include "../OrderedList/OrderedList.h" +#include "../List/OrderedList.h" #include "../DateTime/DateTime.h" #include "../String/String.h" #include "../Venue/Hall.h" diff --git a/src/EventSystem/EventSystem.h b/src/EventSystem/EventSystem.h index a38ab2b..9492b09 100644 --- a/src/EventSystem/EventSystem.h +++ b/src/EventSystem/EventSystem.h @@ -1,7 +1,7 @@ #ifndef HEADER_EVENTSYSTEM #define HEADER_EVENTSYSTEM -#include "../List/List.h" +#include "../List/OrderedList.h" #include "../DateTime/DateTime.h" #include "Event.h" diff --git a/src/OrderedList/OrderedList.cpp b/src/OrderedList/OrderedList.cpp deleted file mode 100644 index f3a7450..0000000 --- a/src/OrderedList/OrderedList.cpp +++ /dev/null @@ -1,12 +0,0 @@ -#include "OrderedList.h" - -template -bool OrderedList::insert(const T& element) { - if (List::length == List::count) List::resize(); - - unsigned insertionInd = 0; - while (List::elements[insertionInd].compare(element) < 0 && insertionInd < List::count) - insertionInd++; - - return List::insertAt(element, insertionInd); -} diff --git a/src/OrderedList/OrderedList.h b/src/OrderedList/OrderedList.h deleted file mode 100644 index ef723ff..0000000 --- a/src/OrderedList/OrderedList.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef HEADER_ORDEREDLIST -#define HEADER_ORDEREDLIST - -#include "../List/List.h" - -template -class OrderedList : public List { -public: - void add(const T& element) = delete; - bool insertAt(const T& element, unsigned index) = delete; - - bool insert(const T& element); - // unsigned findIndex(const T& element) const; TODO: binary search -}; - -#endif -- cgit v1.3.1-23-gd82d