diff --git a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.cpp b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.cpp
index e69de29..4413069 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.cpp
+++ b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.cpp
@@ -0,0 +1,7 @@
+#include "UserInterface.h"
+int main()
+{
+ UserInterface userInterFace;
+ userInterFace.run();
+ return 0;
+}
\ No newline at end of file
diff --git a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj
index 88bb765..4424458 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj
+++ b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj
@@ -102,7 +102,7 @@
true
_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
true
- $(ProjectDir)controllers;$(ProjectDir)services;$(ProjectDir)utilities;%(AdditionalIncludeDirectories)
+ $(ProjectDir)models;$(ProjectDir)controllers;$(ProjectDir)services;$(ProjectDir)utilities;$(ProjectDir)factories;$(ProjectDir)datastores;$(ProjectDir)views;%(AdditionalIncludeDirectories)
Console
@@ -131,6 +131,7 @@
+
@@ -145,6 +146,7 @@
+
@@ -165,6 +167,15 @@
+
+
+
+
+
+
+
+
+
@@ -174,6 +185,7 @@
+
@@ -188,6 +200,7 @@
+
@@ -204,6 +217,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj.filters b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj.filters
index 3c26252..8a20aa6 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj.filters
+++ b/Trenser.Zenvy/Trenser.Zenvy/Trenser.Zenvy.vcxproj.filters
@@ -5,10 +5,6 @@
{4FC737F1-C7A5-4376-A066-2A32D752A2FF}
cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
-
- {93995380-89BD-4b04-88EB-625FBE52EBFB}
- h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
-
{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
@@ -31,11 +27,15 @@
{eb93b9d1-08eb-48aa-be2a-e17085ce27bd}
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {84db0710-2b0f-48bc-a72f-bd10c29954fc}
+
-
- Source Files
-
Services
@@ -156,6 +156,42 @@
Models
+
+ Source Files
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Models
+
+
+ Services
+
@@ -269,6 +305,39 @@
Models
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Views
+
+
+ Models
+
+
+ Services
+
diff --git a/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.cpp b/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.cpp
index aa50123..1f26894 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.cpp
+++ b/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.cpp
@@ -1 +1,17 @@
#include "ZenvyController.h"
+
+//Authentication
+AuthenticationContext ZenvyController::login(const std::string& email, const std::string& password)
+{
+ return m_authenticationManagementService->login(email, password);
+}
+
+void ZenvyController::logout()
+{
+ m_authenticationManagementService->logout();
+}
+
+void ZenvyController::changePassword(const std::string& password)
+{
+ m_authenticationManagementService->changePassword(password);
+}
diff --git a/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.h b/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.h
index 7dae696..11a609d 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.h
+++ b/Trenser.Zenvy/Trenser.Zenvy/controllers/ZenvyController.h
@@ -1,5 +1,48 @@
#pragma once
+#include
+#include
+#include "AuthenticationManagementService.h"
+#include "AttendanceManagementService.h"
+#include "BookingManagementService.h"
+#include "EmployeeManagememtService.h"
+#include "LeaveManagementService.h"
+#include "NotificationManagementService.h"
+#include "PayslipManagementService.h"
+#include "TalentAcquisitionManagementService.h"
+#include "TeamManagementService.h"
+#include "TicketManagementService.h"
+#include "Enums.h"
+
+using AuthenticationContext = std::tuple;
+
class ZenvyController
{
+private:
+ std::shared_ptr m_authenticationManagementService;
+ std::shared_ptr m_attendanceManagementService;
+ std::shared_ptr m_bookingManagementService;
+ std::shared_ptr m_employeeManagememtService;
+ std::shared_ptr m_leaveManagementService;
+ std::shared_ptr m_notificationManagementService;
+ std::shared_ptr m_payslipManagementService;
+ std::shared_ptr m_talentAcquisitionManagementService;
+ std::shared_ptr m_teamManagementService;
+ std::shared_ptr m_ticketManagementService;
+public:
+ ZenvyController() :
+ m_authenticationManagementService(std::make_shared()),
+ m_attendanceManagementService(std::make_shared()),
+ m_bookingManagementService(std::make_shared()),
+ m_employeeManagememtService(std::make_shared()),
+ m_leaveManagementService(std::make_shared()),
+ m_notificationManagementService(std::make_shared()),
+ m_payslipManagementService(std::make_shared()),
+ m_talentAcquisitionManagementService(std::make_shared()),
+ m_teamManagementService(std::make_shared()),
+ m_ticketManagementService(std::make_shared()) {};
+
+ //Authentication
+ AuthenticationContext login(const std::string& email, const std::string& password);
+ void logout();
+ void changePassword(const std::string&);
};
-
diff --git a/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.cpp b/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.cpp
index e81f26f..16ddca1 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.cpp
+++ b/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.cpp
@@ -1 +1,33 @@
#include "DataStore.h"
+
+DataStore& DataStore::getInstance()
+{
+ static DataStore dataStore;
+ return dataStore;
+}
+
+logMap& DataStore::getLogs()
+{
+ return m_logs;
+}
+
+std::shared_ptr& DataStore::getAuthenticatedEmployee()
+{
+ return m_authenticatedEmployee;
+}
+
+void DataStore::setAuthenticatedEmployee(std::shared_ptr authenticatedEmployee)
+{
+ m_authenticatedEmployee = authenticatedEmployee;
+}
+
+employeeMap& DataStore::getEmployees()
+{
+ return m_employees;
+}
+
+std::shared_ptr& DataStore::getAuthenticatedUser()
+{
+ return m_authenticatedEmployee;
+}
+
diff --git a/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.h b/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.h
index 09042e4..5ecfb70 100644
--- a/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.h
+++ b/Trenser.Zenvy/Trenser.Zenvy/datastores/DataStore.h
@@ -1,5 +1,43 @@
#pragma once
+#include
+#include