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()
|
||||
{
|
||||
|
||||
UserInterface userInterFace;
|
||||
userInterFace.run();
|
||||
return 0;
|
||||
}
|
||||
@@ -102,7 +102,7 @@
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<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>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
|
||||
@@ -62,5 +62,5 @@ public:
|
||||
void addAttendance(std::shared_ptr<Attendance> attendance);
|
||||
void addLeave(std::shared_ptr<Leave> leave);
|
||||
Enums::EmployeeType getEmployeeType() const;
|
||||
~Employee() = default;
|
||||
virtual ~Employee() = default;
|
||||
};
|
||||
@@ -15,8 +15,7 @@ public:
|
||||
const std::string& email,
|
||||
const std::string& teamId,
|
||||
std::shared_ptr<Payroll> payroll,
|
||||
Enums::EmployeeDesignation designation)
|
||||
: Employee(id, password, name, phone, email, teamId, payroll), m_designation(designation) {}
|
||||
Enums::EmployeeDesignation designation) : Employee(id, password, name, phone, email, teamId,Enums::EmployeeType::GENERAL, payroll), m_designation(designation) {}
|
||||
Enums::EmployeeDesignation getDesignation() const;
|
||||
void setDesignation(Enums::EmployeeDesignation designation);
|
||||
~GeneralEmployee() = default;
|
||||
|
||||
@@ -31,7 +31,7 @@ bool AdminMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
/*case 1:
|
||||
m_zenvyController.createHRManager();
|
||||
break;
|
||||
case 2:
|
||||
@@ -42,7 +42,7 @@ bool AdminMenu::handleOperation(int choice)
|
||||
break;
|
||||
case 4:
|
||||
m_zenvyController.deactivateEmployee();
|
||||
break;
|
||||
break;*/
|
||||
case 5:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,7 +31,7 @@ bool EmployeeMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
/*case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
@@ -69,7 +69,7 @@ bool EmployeeMenu::handleOperation(int choice)
|
||||
break;
|
||||
case 13:
|
||||
m_zenvyController.viewAnnouncements();
|
||||
break;
|
||||
break;*/
|
||||
case 14:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,7 +31,7 @@ bool FinanceExecutiveMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
/*case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
@@ -60,7 +60,7 @@ bool FinanceExecutiveMenu::handleOperation(int choice)
|
||||
break;
|
||||
case 10:
|
||||
m_zenvyController.updatePayroll();
|
||||
break;
|
||||
break;*/
|
||||
case 11:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,39 +31,39 @@ bool HRManagerMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
m_zenvyController.viewPayslip();
|
||||
break;
|
||||
case 3:
|
||||
m_zenvyController.viewPayslipHistory();
|
||||
break;
|
||||
case 4:
|
||||
m_zenvyController.viewEmployees();
|
||||
break;
|
||||
case 5:
|
||||
m_zenvyController.searchEmployee();
|
||||
break;
|
||||
case 6:
|
||||
m_zenvyController.viewNotifications();
|
||||
break;
|
||||
case 7:
|
||||
m_zenvyController.viewAnnouncements();
|
||||
break;
|
||||
case 8:
|
||||
m_zenvyController.createEmployee();
|
||||
break;
|
||||
case 9:
|
||||
m_zenvyController.regularizeAttenance();
|
||||
break;
|
||||
case 10:
|
||||
m_zenvyController.updateLeaveRequest();
|
||||
break;
|
||||
case 11:
|
||||
m_zenvyController.registercandidateAsEmployee();
|
||||
break;
|
||||
//case 1:
|
||||
// m_zenvyController.applyLeave();
|
||||
// break;
|
||||
//case 2:
|
||||
// m_zenvyController.viewPayslip();
|
||||
// break;
|
||||
//case 3:
|
||||
// m_zenvyController.viewPayslipHistory();
|
||||
// break;
|
||||
//case 4:
|
||||
// m_zenvyController.viewEmployees();
|
||||
// break;
|
||||
//case 5:
|
||||
// m_zenvyController.searchEmployee();
|
||||
// break;
|
||||
//case 6:
|
||||
// m_zenvyController.viewNotifications();
|
||||
// break;
|
||||
//case 7:
|
||||
// m_zenvyController.viewAnnouncements();
|
||||
// break;
|
||||
//case 8:
|
||||
// m_zenvyController.createEmployee();
|
||||
// break;
|
||||
//case 9:
|
||||
// m_zenvyController.regularizeAttenance();
|
||||
// break;
|
||||
//case 10:
|
||||
// m_zenvyController.updateLeaveRequest();
|
||||
// break;
|
||||
//case 11:
|
||||
// m_zenvyController.registercandidateAsEmployee();
|
||||
// break;
|
||||
case 12:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,7 +31,7 @@ bool ITExecutiveMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
/*case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
@@ -54,7 +54,7 @@ bool ITExecutiveMenu::handleOperation(int choice)
|
||||
break;
|
||||
case 8:
|
||||
m_zenvyController.resolveTicket();
|
||||
break;
|
||||
break;*/
|
||||
case 9:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,42 +31,42 @@ bool TalentExecutiveMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
m_zenvyController.viewPayslip();
|
||||
break;
|
||||
case 3:
|
||||
m_zenvyController.viewPayslipHistory();
|
||||
break;
|
||||
case 4:
|
||||
m_zenvyController.viewEmployees();
|
||||
break;
|
||||
case 5:
|
||||
m_zenvyController.searchEmployee();
|
||||
break;
|
||||
case 6:
|
||||
m_zenvyController.viewNotifications();
|
||||
break;
|
||||
case 7:
|
||||
m_zenvyController.viewAnnouncements();
|
||||
break;
|
||||
case 8:
|
||||
m_zenvyController.createNewJob();
|
||||
break;
|
||||
case 9:
|
||||
m_zenvyController.viewJobOpenings();
|
||||
break;
|
||||
case 10:
|
||||
m_zenvyController.addCandidate();
|
||||
break;
|
||||
case 11:
|
||||
m_zenvyController.updateCandidateStatus();
|
||||
break;
|
||||
case 12:
|
||||
m_zenvyController.viewShortlistedCandidates();
|
||||
break;
|
||||
//case 1:
|
||||
// m_zenvyController.applyLeave();
|
||||
// break;
|
||||
//case 2:
|
||||
// m_zenvyController.viewPayslip();
|
||||
// break;
|
||||
//case 3:
|
||||
// m_zenvyController.viewPayslipHistory();
|
||||
// break;
|
||||
//case 4:
|
||||
// m_zenvyController.viewEmployees();
|
||||
// break;
|
||||
//case 5:
|
||||
// m_zenvyController.searchEmployee();
|
||||
// break;
|
||||
//case 6:
|
||||
// m_zenvyController.viewNotifications();
|
||||
// break;
|
||||
//case 7:
|
||||
// m_zenvyController.viewAnnouncements();
|
||||
// break;
|
||||
//case 8:
|
||||
// m_zenvyController.createNewJob();
|
||||
// break;
|
||||
//case 9:
|
||||
// m_zenvyController.viewJobOpenings();
|
||||
// break;
|
||||
//case 10:
|
||||
// m_zenvyController.addCandidate();
|
||||
// break;
|
||||
//case 11:
|
||||
// m_zenvyController.updateCandidateStatus();
|
||||
// break;
|
||||
//case 12:
|
||||
// m_zenvyController.viewShortlistedCandidates();
|
||||
// break;
|
||||
case 13:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,45 +31,45 @@ bool TeamExecutiveMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
m_zenvyController.viewPayslip();
|
||||
break;
|
||||
case 3:
|
||||
m_zenvyController.viewPayslipHistory();
|
||||
break;
|
||||
case 4:
|
||||
m_zenvyController.viewEmployees();
|
||||
break;
|
||||
case 5:
|
||||
m_zenvyController.searchEmployee();
|
||||
break;
|
||||
case 6:
|
||||
m_zenvyController.viewNotifications();
|
||||
break;
|
||||
case 7:
|
||||
m_zenvyController.viewAnnouncements();
|
||||
break;
|
||||
case 8:
|
||||
m_zenvyController.createTeam();
|
||||
break;
|
||||
case 9:
|
||||
m_zenvyController.updateTeam();
|
||||
break;
|
||||
case 10:
|
||||
m_zenvyController.removeTeam();
|
||||
break;
|
||||
case 11:
|
||||
m_zenvyController.assignEmployee();
|
||||
break;
|
||||
case 12:
|
||||
m_zenvyController.unassignEmployee();
|
||||
break;
|
||||
case 13:
|
||||
m_zenvyController.viewTeams();
|
||||
break;
|
||||
//case 1:
|
||||
// m_zenvyController.applyLeave();
|
||||
// break;
|
||||
//case 2:
|
||||
// m_zenvyController.viewPayslip();
|
||||
// break;
|
||||
//case 3:
|
||||
// m_zenvyController.viewPayslipHistory();
|
||||
// break;
|
||||
//case 4:
|
||||
// m_zenvyController.viewEmployees();
|
||||
// break;
|
||||
//case 5:
|
||||
// m_zenvyController.searchEmployee();
|
||||
// break;
|
||||
//case 6:
|
||||
// m_zenvyController.viewNotifications();
|
||||
// break;
|
||||
//case 7:
|
||||
// m_zenvyController.viewAnnouncements();
|
||||
// break;
|
||||
//case 8:
|
||||
// m_zenvyController.createTeam();
|
||||
// break;
|
||||
//case 9:
|
||||
// m_zenvyController.updateTeam();
|
||||
// break;
|
||||
//case 10:
|
||||
// m_zenvyController.removeTeam();
|
||||
// break;
|
||||
//case 11:
|
||||
// m_zenvyController.assignEmployee();
|
||||
// break;
|
||||
//case 12:
|
||||
// m_zenvyController.unassignEmployee();
|
||||
// break;
|
||||
//case 13:
|
||||
// m_zenvyController.viewTeams();
|
||||
// break;
|
||||
case 14:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -31,7 +31,7 @@ bool TeamLeadMenu::handleOperation(int choice)
|
||||
{
|
||||
switch (choice)
|
||||
{
|
||||
case 1:
|
||||
/*case 1:
|
||||
m_zenvyController.applyLeave();
|
||||
break;
|
||||
case 2:
|
||||
@@ -75,7 +75,7 @@ bool TeamLeadMenu::handleOperation(int choice)
|
||||
break;
|
||||
case 15:
|
||||
m_zenvyController.updateLeaveRequest();
|
||||
break;
|
||||
break;*/
|
||||
case 16:
|
||||
return false;
|
||||
default:
|
||||
|
||||
@@ -52,6 +52,7 @@ bool UserInterface::handleOperation(int choice)
|
||||
return false;
|
||||
default:
|
||||
std::cout << "Enter a valid choice!" << std::endl;
|
||||
util::pressEnter();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user