Error fixes and added main method function and objects
<SRS> SRS01 : Authentication </SRS> <Changes> - Fixed polymorphism errors in Employee base class by adding virtual destructor. - Corrected constructor mismatch in GeneralEmployee to properly call Employee constructor with EmployeeType. - Created UserInterface object in main() and invoked run() to start role-based menus. </Changes> <Review> Smitha Mohan </Review>
This commit is contained in:
@@ -1,4 +1,7 @@
|
|||||||
|
#include "UserInterface.h"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
|
UserInterface userInterFace;
|
||||||
|
userInterFace.run();
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
<SDLCheck>true</SDLCheck>
|
<SDLCheck>true</SDLCheck>
|
||||||
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<ConformanceMode>true</ConformanceMode>
|
<ConformanceMode>true</ConformanceMode>
|
||||||
<AdditionalIncludeDirectories>$(ProjectDir)models;$(ProjectDir)controllers;$(ProjectDir)services;$(ProjectDir)utilities;$(ProjectDir)factories;$(ProjectDir)datastores;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(ProjectDir)models;$(ProjectDir)controllers;$(ProjectDir)services;$(ProjectDir)utilities;$(ProjectDir)factories;$(ProjectDir)datastores;$(ProjectDir)views;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Console</SubSystem>
|
<SubSystem>Console</SubSystem>
|
||||||
|
|||||||
@@ -62,5 +62,5 @@ public:
|
|||||||
void addAttendance(std::shared_ptr<Attendance> attendance);
|
void addAttendance(std::shared_ptr<Attendance> attendance);
|
||||||
void addLeave(std::shared_ptr<Leave> leave);
|
void addLeave(std::shared_ptr<Leave> leave);
|
||||||
Enums::EmployeeType getEmployeeType() const;
|
Enums::EmployeeType getEmployeeType() const;
|
||||||
~Employee() = default;
|
virtual ~Employee() = default;
|
||||||
};
|
};
|
||||||
@@ -15,8 +15,7 @@ public:
|
|||||||
const std::string& email,
|
const std::string& email,
|
||||||
const std::string& teamId,
|
const std::string& teamId,
|
||||||
std::shared_ptr<Payroll> payroll,
|
std::shared_ptr<Payroll> payroll,
|
||||||
Enums::EmployeeDesignation designation)
|
Enums::EmployeeDesignation designation) : Employee(id, password, name, phone, email, teamId,Enums::EmployeeType::GENERAL, payroll), m_designation(designation) {}
|
||||||
: Employee(id, password, name, phone, email, teamId, payroll), m_designation(designation) {}
|
|
||||||
Enums::EmployeeDesignation getDesignation() const;
|
Enums::EmployeeDesignation getDesignation() const;
|
||||||
void setDesignation(Enums::EmployeeDesignation designation);
|
void setDesignation(Enums::EmployeeDesignation designation);
|
||||||
~GeneralEmployee() = default;
|
~GeneralEmployee() = default;
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ bool AdminMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
/*case 1:
|
||||||
m_zenvyController.createHRManager();
|
m_zenvyController.createHRManager();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -42,7 +42,7 @@ bool AdminMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
m_zenvyController.deactivateEmployee();
|
m_zenvyController.deactivateEmployee();
|
||||||
break;
|
break;*/
|
||||||
case 5:
|
case 5:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ bool EmployeeMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
/*case 1:
|
||||||
m_zenvyController.applyLeave();
|
m_zenvyController.applyLeave();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -69,7 +69,7 @@ bool EmployeeMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 13:
|
case 13:
|
||||||
m_zenvyController.viewAnnouncements();
|
m_zenvyController.viewAnnouncements();
|
||||||
break;
|
break;*/
|
||||||
case 14:
|
case 14:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ bool FinanceExecutiveMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
/*case 1:
|
||||||
m_zenvyController.applyLeave();
|
m_zenvyController.applyLeave();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -60,7 +60,7 @@ bool FinanceExecutiveMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
m_zenvyController.updatePayroll();
|
m_zenvyController.updatePayroll();
|
||||||
break;
|
break;*/
|
||||||
case 11:
|
case 11:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,39 +31,39 @@ bool HRManagerMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
//case 1:
|
||||||
m_zenvyController.applyLeave();
|
// m_zenvyController.applyLeave();
|
||||||
break;
|
// break;
|
||||||
case 2:
|
//case 2:
|
||||||
m_zenvyController.viewPayslip();
|
// m_zenvyController.viewPayslip();
|
||||||
break;
|
// break;
|
||||||
case 3:
|
//case 3:
|
||||||
m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
break;
|
// break;
|
||||||
case 4:
|
//case 4:
|
||||||
m_zenvyController.viewEmployees();
|
// m_zenvyController.viewEmployees();
|
||||||
break;
|
// break;
|
||||||
case 5:
|
//case 5:
|
||||||
m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
break;
|
// break;
|
||||||
case 6:
|
//case 6:
|
||||||
m_zenvyController.viewNotifications();
|
// m_zenvyController.viewNotifications();
|
||||||
break;
|
// break;
|
||||||
case 7:
|
//case 7:
|
||||||
m_zenvyController.viewAnnouncements();
|
// m_zenvyController.viewAnnouncements();
|
||||||
break;
|
// break;
|
||||||
case 8:
|
//case 8:
|
||||||
m_zenvyController.createEmployee();
|
// m_zenvyController.createEmployee();
|
||||||
break;
|
// break;
|
||||||
case 9:
|
//case 9:
|
||||||
m_zenvyController.regularizeAttenance();
|
// m_zenvyController.regularizeAttenance();
|
||||||
break;
|
// break;
|
||||||
case 10:
|
//case 10:
|
||||||
m_zenvyController.updateLeaveRequest();
|
// m_zenvyController.updateLeaveRequest();
|
||||||
break;
|
// break;
|
||||||
case 11:
|
//case 11:
|
||||||
m_zenvyController.registercandidateAsEmployee();
|
// m_zenvyController.registercandidateAsEmployee();
|
||||||
break;
|
// break;
|
||||||
case 12:
|
case 12:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ bool ITExecutiveMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
/*case 1:
|
||||||
m_zenvyController.applyLeave();
|
m_zenvyController.applyLeave();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -54,7 +54,7 @@ bool ITExecutiveMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
m_zenvyController.resolveTicket();
|
m_zenvyController.resolveTicket();
|
||||||
break;
|
break;*/
|
||||||
case 9:
|
case 9:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,42 +31,42 @@ bool TalentExecutiveMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
//case 1:
|
||||||
m_zenvyController.applyLeave();
|
// m_zenvyController.applyLeave();
|
||||||
break;
|
// break;
|
||||||
case 2:
|
//case 2:
|
||||||
m_zenvyController.viewPayslip();
|
// m_zenvyController.viewPayslip();
|
||||||
break;
|
// break;
|
||||||
case 3:
|
//case 3:
|
||||||
m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
break;
|
// break;
|
||||||
case 4:
|
//case 4:
|
||||||
m_zenvyController.viewEmployees();
|
// m_zenvyController.viewEmployees();
|
||||||
break;
|
// break;
|
||||||
case 5:
|
//case 5:
|
||||||
m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
break;
|
// break;
|
||||||
case 6:
|
//case 6:
|
||||||
m_zenvyController.viewNotifications();
|
// m_zenvyController.viewNotifications();
|
||||||
break;
|
// break;
|
||||||
case 7:
|
//case 7:
|
||||||
m_zenvyController.viewAnnouncements();
|
// m_zenvyController.viewAnnouncements();
|
||||||
break;
|
// break;
|
||||||
case 8:
|
//case 8:
|
||||||
m_zenvyController.createNewJob();
|
// m_zenvyController.createNewJob();
|
||||||
break;
|
// break;
|
||||||
case 9:
|
//case 9:
|
||||||
m_zenvyController.viewJobOpenings();
|
// m_zenvyController.viewJobOpenings();
|
||||||
break;
|
// break;
|
||||||
case 10:
|
//case 10:
|
||||||
m_zenvyController.addCandidate();
|
// m_zenvyController.addCandidate();
|
||||||
break;
|
// break;
|
||||||
case 11:
|
//case 11:
|
||||||
m_zenvyController.updateCandidateStatus();
|
// m_zenvyController.updateCandidateStatus();
|
||||||
break;
|
// break;
|
||||||
case 12:
|
//case 12:
|
||||||
m_zenvyController.viewShortlistedCandidates();
|
// m_zenvyController.viewShortlistedCandidates();
|
||||||
break;
|
// break;
|
||||||
case 13:
|
case 13:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,45 +31,45 @@ bool TeamExecutiveMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
//case 1:
|
||||||
m_zenvyController.applyLeave();
|
// m_zenvyController.applyLeave();
|
||||||
break;
|
// break;
|
||||||
case 2:
|
//case 2:
|
||||||
m_zenvyController.viewPayslip();
|
// m_zenvyController.viewPayslip();
|
||||||
break;
|
// break;
|
||||||
case 3:
|
//case 3:
|
||||||
m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
break;
|
// break;
|
||||||
case 4:
|
//case 4:
|
||||||
m_zenvyController.viewEmployees();
|
// m_zenvyController.viewEmployees();
|
||||||
break;
|
// break;
|
||||||
case 5:
|
//case 5:
|
||||||
m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
break;
|
// break;
|
||||||
case 6:
|
//case 6:
|
||||||
m_zenvyController.viewNotifications();
|
// m_zenvyController.viewNotifications();
|
||||||
break;
|
// break;
|
||||||
case 7:
|
//case 7:
|
||||||
m_zenvyController.viewAnnouncements();
|
// m_zenvyController.viewAnnouncements();
|
||||||
break;
|
// break;
|
||||||
case 8:
|
//case 8:
|
||||||
m_zenvyController.createTeam();
|
// m_zenvyController.createTeam();
|
||||||
break;
|
// break;
|
||||||
case 9:
|
//case 9:
|
||||||
m_zenvyController.updateTeam();
|
// m_zenvyController.updateTeam();
|
||||||
break;
|
// break;
|
||||||
case 10:
|
//case 10:
|
||||||
m_zenvyController.removeTeam();
|
// m_zenvyController.removeTeam();
|
||||||
break;
|
// break;
|
||||||
case 11:
|
//case 11:
|
||||||
m_zenvyController.assignEmployee();
|
// m_zenvyController.assignEmployee();
|
||||||
break;
|
// break;
|
||||||
case 12:
|
//case 12:
|
||||||
m_zenvyController.unassignEmployee();
|
// m_zenvyController.unassignEmployee();
|
||||||
break;
|
// break;
|
||||||
case 13:
|
//case 13:
|
||||||
m_zenvyController.viewTeams();
|
// m_zenvyController.viewTeams();
|
||||||
break;
|
// break;
|
||||||
case 14:
|
case 14:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ bool TeamLeadMenu::handleOperation(int choice)
|
|||||||
{
|
{
|
||||||
switch (choice)
|
switch (choice)
|
||||||
{
|
{
|
||||||
case 1:
|
/*case 1:
|
||||||
m_zenvyController.applyLeave();
|
m_zenvyController.applyLeave();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -75,7 +75,7 @@ bool TeamLeadMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 15:
|
case 15:
|
||||||
m_zenvyController.updateLeaveRequest();
|
m_zenvyController.updateLeaveRequest();
|
||||||
break;
|
break;*/
|
||||||
case 16:
|
case 16:
|
||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ bool UserInterface::handleOperation(int choice)
|
|||||||
return false;
|
return false;
|
||||||
default:
|
default:
|
||||||
std::cout << "Enter a valid choice!" << std::endl;
|
std::cout << "Enter a valid choice!" << std::endl;
|
||||||
|
util::pressEnter();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user