Added MenuHelper feature for ViewEmployee
<UserStory> EMP007 : View Employees </UserStory> <Changes> - Added MenuHelper.cpp and MenuHelper.h to project configuration - Moved viewEmployees() implementation from individual menu classes into MenuHelper - Added inline viewEmployees(shared_ptr<ZenvyController>) helper with formatted output - Added enumToString() to MenuHelper for employee role display - Updated AdminMenu, EmployeeMenu, FinanceExecutiveMenu, HRManagerMenu, ITExecutiveMenu, TalentExecutiveMenu, TeamExecutiveMenu, and TeamLeadMenu to use viewEmployees(m_zenvyController) instead of per‑menu implementations - Removed old viewEmployees() method from EmployeeMenu - Updated menu options to reflect new centralized viewEmployees() function </Changes> <Review> Smitha Mohan </Review>
This commit is contained in:
@@ -172,6 +172,7 @@
|
|||||||
<ClCompile Include="views\FinanceExecutiveMenu.cpp" />
|
<ClCompile Include="views\FinanceExecutiveMenu.cpp" />
|
||||||
<ClCompile Include="views\HRManagerMenu.cpp" />
|
<ClCompile Include="views\HRManagerMenu.cpp" />
|
||||||
<ClCompile Include="views\ITExecutiveMenu.cpp" />
|
<ClCompile Include="views\ITExecutiveMenu.cpp" />
|
||||||
|
<ClCompile Include="views\MenuHelper.cpp" />
|
||||||
<ClCompile Include="views\TalentExecutiveMenu.cpp" />
|
<ClCompile Include="views\TalentExecutiveMenu.cpp" />
|
||||||
<ClCompile Include="views\TeamExecutiveMenu.cpp" />
|
<ClCompile Include="views\TeamExecutiveMenu.cpp" />
|
||||||
<ClCompile Include="views\TeamLeadMenu.cpp" />
|
<ClCompile Include="views\TeamLeadMenu.cpp" />
|
||||||
@@ -222,6 +223,7 @@
|
|||||||
<ClInclude Include="views\FinanceExecutiveMenu.h" />
|
<ClInclude Include="views\FinanceExecutiveMenu.h" />
|
||||||
<ClInclude Include="views\HRManagerMenu.h" />
|
<ClInclude Include="views\HRManagerMenu.h" />
|
||||||
<ClInclude Include="views\ITExecutiveMenu.h" />
|
<ClInclude Include="views\ITExecutiveMenu.h" />
|
||||||
|
<ClInclude Include="views\MenuHelper.h" />
|
||||||
<ClInclude Include="views\TalentExecutiveMenu.h" />
|
<ClInclude Include="views\TalentExecutiveMenu.h" />
|
||||||
<ClInclude Include="views\TeamExecutiveMenu.h" />
|
<ClInclude Include="views\TeamExecutiveMenu.h" />
|
||||||
<ClInclude Include="views\TeamLeadMenu.h" />
|
<ClInclude Include="views\TeamLeadMenu.h" />
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "AdminMenu.h"
|
#include "AdminMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include "MenuHelper.h"
|
||||||
|
|
||||||
void AdminMenu::run()
|
void AdminMenu::run()
|
||||||
{
|
{
|
||||||
@@ -36,11 +37,11 @@ bool AdminMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
m_zenvyController.createEmployee();
|
m_zenvyController.createEmployee();
|
||||||
break;
|
break;*/
|
||||||
case 3:
|
case 3:
|
||||||
m_zenvyController.viewEmployee();
|
viewEmployees(m_zenvyController);
|
||||||
break;
|
break;
|
||||||
case 4:
|
/*case 4:
|
||||||
m_zenvyController.deactivateEmployee();
|
m_zenvyController.deactivateEmployee();
|
||||||
break;*/
|
break;*/
|
||||||
case 5:
|
case 5:
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
#include "EmployeeMenu.h"
|
#include "EmployeeMenu.h"
|
||||||
#include "InputHelper.h"
|
#include "InputHelper.h"
|
||||||
#include "OutputHelper.h"
|
#include "OutputHelper.h"
|
||||||
|
#include "MenuHelper.h"
|
||||||
|
|
||||||
void EmployeeMenu::run()
|
void EmployeeMenu::run()
|
||||||
{
|
{
|
||||||
@@ -51,7 +52,7 @@ bool EmployeeMenu::handleOperation(int choice)
|
|||||||
m_zenvyController.viewTicketHistory();
|
m_zenvyController.viewTicketHistory();
|
||||||
break;*/
|
break;*/
|
||||||
case 7:
|
case 7:
|
||||||
viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
break;
|
break;
|
||||||
/*case 8:
|
/*case 8:
|
||||||
m_zenvyController.searchEmployee();
|
m_zenvyController.searchEmployee();
|
||||||
@@ -79,52 +80,3 @@ bool EmployeeMenu::handleOperation(int choice)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EmployeeMenu::viewEmployees()
|
|
||||||
{
|
|
||||||
std::cout << std::left
|
|
||||||
<< std::setw(10) << "EMPID"
|
|
||||||
<< std::setw(20) << "Name"
|
|
||||||
<< std::setw(15) << "Role"
|
|
||||||
<< std::setw(10) << "TeamId"
|
|
||||||
<< std::setw(25) << "Email"
|
|
||||||
<< std::setw(15) << "Phone"
|
|
||||||
<< std::endl;
|
|
||||||
auto employees = m_zenvyController->getEmployee();
|
|
||||||
if (employees.empty())
|
|
||||||
{
|
|
||||||
std::cout << "No employees found\n";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (const auto& iterator : employees)
|
|
||||||
{
|
|
||||||
std::cout << std::left
|
|
||||||
<< std::setw(10) << iterator->getEmployeeId()
|
|
||||||
<< std::setw(20) << iterator->getEmployeeName()
|
|
||||||
<< std::setw(15) << enumToString(iterator->getEmployeeType())
|
|
||||||
<< std::setw(10) << iterator->getEmployeeTeamId()
|
|
||||||
<< std::setw(25) << iterator->getEmployeeEmail()
|
|
||||||
<< std::setw(15) << iterator->getEmployeePhone()
|
|
||||||
<< std::endl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string enumToString(Enums::EmployeeType type)
|
|
||||||
{
|
|
||||||
switch (type)
|
|
||||||
{
|
|
||||||
case Enums::EmployeeType::IT:
|
|
||||||
return "IT Executive";
|
|
||||||
case Enums::EmployeeType::FINANCE:
|
|
||||||
return "Finance Executive";
|
|
||||||
case Enums::EmployeeType::GENERAL:
|
|
||||||
return "General Employee";
|
|
||||||
case Enums::EmployeeType::HR:
|
|
||||||
return "HR";
|
|
||||||
case Enums::EmployeeType::TAG:
|
|
||||||
return "Talent Acquacition Executive";
|
|
||||||
case Enums::EmployeeType::TEAM:
|
|
||||||
return "Team Executive";
|
|
||||||
case Enums::EmployeeType::INVALID:
|
|
||||||
return "Invalid";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -10,6 +10,5 @@ public:
|
|||||||
EmployeeMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
|
EmployeeMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
|
||||||
void run();
|
void run();
|
||||||
bool handleOperation(int);
|
bool handleOperation(int);
|
||||||
void viewEmployees();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "FinanceExecutiveMenu.h"
|
#include "FinanceExecutiveMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void FinanceExecutiveMenu::run()
|
void FinanceExecutiveMenu::run()
|
||||||
{
|
{
|
||||||
@@ -39,11 +40,11 @@ bool FinanceExecutiveMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
m_zenvyController.viewPayslipHistory();
|
m_zenvyController.viewPayslipHistory();
|
||||||
break;
|
break;*/
|
||||||
case 4:
|
case 4:
|
||||||
m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
break;
|
break;
|
||||||
case 5:
|
/*case 5:
|
||||||
m_zenvyController.searchEmployee();
|
m_zenvyController.searchEmployee();
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "HRManagerMenu.h"
|
#include "HRManagerMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void HRManagerMenu::run()
|
void HRManagerMenu::run()
|
||||||
{
|
{
|
||||||
@@ -40,9 +41,9 @@ bool HRManagerMenu::handleOperation(int choice)
|
|||||||
//case 3:
|
//case 3:
|
||||||
// m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
// break;
|
// break;
|
||||||
//case 4:
|
case 4:
|
||||||
// m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
// break;
|
break;
|
||||||
//case 5:
|
//case 5:
|
||||||
// m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
// break;
|
// break;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "ITExecutiveMenu.h"
|
#include "ITExecutiveMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void ITExecutiveMenu::run()
|
void ITExecutiveMenu::run()
|
||||||
{
|
{
|
||||||
@@ -39,11 +40,11 @@ bool ITExecutiveMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
m_zenvyController.viewPayslipHistory();
|
m_zenvyController.viewPayslipHistory();
|
||||||
break;
|
break;*/
|
||||||
case 4:
|
case 4:
|
||||||
m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
break;
|
break;
|
||||||
case 5:
|
/*case 5:
|
||||||
m_zenvyController.searchEmployee();
|
m_zenvyController.searchEmployee();
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
#include "MenuHelper.h"
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <iomanip>
|
||||||
|
#include "InputHelper.h"
|
||||||
|
#include "OutputHelper.h"
|
||||||
|
|
||||||
|
inline void viewEmployees(std::shared_ptr<ZenvyController> m_zenvyController)
|
||||||
|
{
|
||||||
|
std::cout << std::left
|
||||||
|
<< std::setw(10) << "EMPID"
|
||||||
|
<< std::setw(20) << "Name"
|
||||||
|
<< std::setw(15) << "Role"
|
||||||
|
<< std::setw(10) << "TeamId"
|
||||||
|
<< std::setw(25) << "Email"
|
||||||
|
<< std::setw(15) << "Phone"
|
||||||
|
<< std::endl;
|
||||||
|
auto employees = m_zenvyController->getEmployee();
|
||||||
|
if (employees.empty())
|
||||||
|
{
|
||||||
|
std::cout << "No employees found\n";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (const auto& iterator : employees)
|
||||||
|
{
|
||||||
|
std::cout << std::left
|
||||||
|
<< std::setw(10) << iterator->getEmployeeId()
|
||||||
|
<< std::setw(20) << iterator->getEmployeeName()
|
||||||
|
<< std::setw(15) << enumToString(iterator->getEmployeeType())
|
||||||
|
<< std::setw(10) << iterator->getEmployeeTeamId()
|
||||||
|
<< std::setw(25) << iterator->getEmployeeEmail()
|
||||||
|
<< std::setw(15) << iterator->getEmployeePhone()
|
||||||
|
<< std::endl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string enumToString(Enums::EmployeeType type)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case Enums::EmployeeType::IT:
|
||||||
|
return "IT Executive";
|
||||||
|
case Enums::EmployeeType::FINANCE:
|
||||||
|
return "Finance Executive";
|
||||||
|
case Enums::EmployeeType::GENERAL:
|
||||||
|
return "General Employee";
|
||||||
|
case Enums::EmployeeType::HR:
|
||||||
|
return "HR";
|
||||||
|
case Enums::EmployeeType::TAG:
|
||||||
|
return "Talent Acquacition Executive";
|
||||||
|
case Enums::EmployeeType::TEAM:
|
||||||
|
return "Team Executive";
|
||||||
|
case Enums::EmployeeType::INVALID:
|
||||||
|
return "Invalid";
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "TalentExecutiveMenu.h"
|
#include "TalentExecutiveMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void TalentExecutiveMenu::run()
|
void TalentExecutiveMenu::run()
|
||||||
{
|
{
|
||||||
@@ -40,9 +41,9 @@ bool TalentExecutiveMenu::handleOperation(int choice)
|
|||||||
//case 3:
|
//case 3:
|
||||||
// m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
// break;
|
// break;
|
||||||
//case 4:
|
case 4:
|
||||||
// m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
// break;
|
break;
|
||||||
//case 5:
|
//case 5:
|
||||||
// m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
// break;
|
// break;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "TeamExecutiveMenu.h"
|
#include "TeamExecutiveMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void TeamExecutiveMenu::run()
|
void TeamExecutiveMenu::run()
|
||||||
{
|
{
|
||||||
@@ -40,9 +41,9 @@ bool TeamExecutiveMenu::handleOperation(int choice)
|
|||||||
//case 3:
|
//case 3:
|
||||||
// m_zenvyController.viewPayslipHistory();
|
// m_zenvyController.viewPayslipHistory();
|
||||||
// break;
|
// break;
|
||||||
//case 4:
|
case 4:
|
||||||
// m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
// break;
|
break;
|
||||||
//case 5:
|
//case 5:
|
||||||
// m_zenvyController.searchEmployee();
|
// m_zenvyController.searchEmployee();
|
||||||
// break;
|
// break;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
#include "TeamLeadMenu.h"
|
#include "TeamLeadMenu.h"
|
||||||
#include"InputHelper.h"
|
#include"InputHelper.h"
|
||||||
#include"OutputHelper.h"
|
#include"OutputHelper.h"
|
||||||
|
#include"MenuHelper.h"
|
||||||
|
|
||||||
void TeamLeadMenu::run()
|
void TeamLeadMenu::run()
|
||||||
{
|
{
|
||||||
@@ -48,11 +49,11 @@ bool TeamLeadMenu::handleOperation(int choice)
|
|||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
m_zenvyController.viewTicketHistory();
|
m_zenvyController.viewTicketHistory();
|
||||||
break;
|
break;*/
|
||||||
case 7:
|
case 7:
|
||||||
m_zenvyController.viewEmployees();
|
viewEmployees(m_zenvyController);
|
||||||
break;
|
break;
|
||||||
case 8:
|
/*case 8:
|
||||||
m_zenvyController.searchEmployee();
|
m_zenvyController.searchEmployee();
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
|
|||||||
Reference in New Issue
Block a user