Website Summary Files Commits Branches @commit @diff @stats
path: root / src
diff options
context:
space:
mode:
Commitb1a5dab44e70642e3bb43dacfa6968afa01e0a09 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 21:09:37 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 21:09:37 +0300
Files166ea10f9077ca02d5821666133c250b8460b17e /src
FMI-OOP-P1_TicketSystem-b1a5dab44e70642e3bb43dacfa6968afa01e0a09.tar
FMI-OOP-P1_TicketSystem-b1a5dab44e70642e3bb43dacfa6968afa01e0a09.tar.gz
FMI-OOP-P1_TicketSystem-b1a5dab44e70642e3bb43dacfa6968afa01e0a09.zip
Parent052b44d44b3d640b0d2a9fa80922b09b49a723cd (diff)
Autocommit at 07.05.2022 @ 21:09
4 files changed, 41 insertions, 4 deletions
-rw-r--r--src/Services/EventService.cpp16
-rw-r--r--src/Services/EventService.h4
-rw-r--r--src/Services/HallService.cpp21
-rw-r--r--src/Services/HallService.h4
diff --git a/src/Services/EventService.cpp b/src/Services/EventService.cpp
index 0a77a41..0134a06 100644
--- a/src/Services/EventService.cpp
+++ b/src/Services/EventService.cpp
@@ -226,10 +226,22 @@ StatusCode EventService::reportBoughtTickets(int hallNumber, const Date& start,
}
-void EventService::load() {
+StatusCode EventService::load() {
+ std::ifstream inFile("eventsDatabase.fmits");
+ if (!inFile.is_open())
+ return E_FileCouldNotBeOpened;
+ events.read(inFile);
+ inFile.close();
+ return Success;
}
-void EventService::save() {
+StatusCode EventService::save() {
+ std::ofstream outFile("eventsDatabase.fmits");
+ if (!outFile.is_open())
+ return E_FileCouldNotBeOpened;
+ events.write(outFile);
+ outFile.close();
+ return Success;
}
diff --git a/src/Services/EventService.h b/src/Services/EventService.h
index d941c4e..2afaa17 100644
--- a/src/Services/EventService.h
+++ b/src/Services/EventService.h
@@ -40,8 +40,8 @@ public:
StatusCode reportReservations(const char* name, const Date& date);
StatusCode reportBoughtTickets(int hallNumber, const Date& start, const Date& end, bool all = false);
- void load();
- void save();
+ StatusCode load();
+ StatusCode save();
};
#endif
diff --git a/src/Services/HallService.cpp b/src/Services/HallService.cpp
index ffbf989..02bf040 100644
--- a/src/Services/HallService.cpp
+++ b/src/Services/HallService.cpp
@@ -1,4 +1,5 @@
#include "HallService.h"
+#include <fstream>
HallService::HallService(const Hall* halls, unsigned hallCount) {
this->halls = OrderedList<Hall>(halls, hallCount);
@@ -7,3 +8,23 @@ HallService::HallService(const Hall* halls, unsigned hallCount) {
const OrderedList<Hall>& HallService::get_halls() const {
return halls;
}
+
+StatusCode HallService::load() {
+ std::ifstream inFile("hallsDatabase.fmits");
+ if (!inFile.is_open())
+ return E_FileCouldNotBeOpened;
+
+ events.read(inFile);
+ inFile.close();
+ return Success;
+}
+
+StatusCode HallService::save() {
+ std::ofstream outFile("hallsDatabase.fmits");
+ if (!outFile.is_open())
+ return E_FileCouldNotBeOpened;
+
+ events.write(outFile);
+ outFile.close();
+ return Success;
+}
diff --git a/src/Services/HallService.h b/src/Services/HallService.h
index 4fdea1e..4bb5748 100644
--- a/src/Services/HallService.h
+++ b/src/Services/HallService.h
@@ -3,6 +3,7 @@
#include "../Generic/List/OrderedList.hpp"
#include "../Models/Hall.h"
+#include "StatusCode.h"
class HallService {
OrderedList<Hall> halls;
@@ -11,6 +12,9 @@ public:
HallService(const Hall* halls, unsigned hallCount);
const OrderedList<Hall>& get_halls() const;
+
+ StatusCode load();
+ StatusCode save();
};
#endif