Implement Review fixes
<UserStory> EMP007 : View All Employees </UserStory> <Changes> - Added check for empty employee map - Filtered only ACTIVE employees - Added formatted table using <iomanip> in EmplopyeeMenu::viewEmployee() - Added check for empty employee list </Changes> <Review> Smitha Mohan </Review>
This commit is contained in:
@@ -15,10 +15,17 @@ std::shared_ptr<const Employee> EmployeeManagementService::getEmployee(const std
|
||||
Employees EmployeeManagementService::getEmployees()
|
||||
{
|
||||
Employees result;
|
||||
auto& employee = m_dataStore.getEmployees();
|
||||
for (const auto& iterator : employee)
|
||||
auto& employees = m_dataStore.getEmployees();
|
||||
if (employees.size() <= 0)
|
||||
{
|
||||
result.push_back(iterator.second);
|
||||
return result;
|
||||
}
|
||||
for (const auto& iterator : employees)
|
||||
{
|
||||
if (iterator.second->getEmployeeAccountStatus() == Enums::AccountStatus::ACTIVE)
|
||||
{
|
||||
result.push_back(iterator.second);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <iostream>
|
||||
#include<iomanip>
|
||||
#include "EmployeeMenu.h"
|
||||
#include"InputHelper.h"
|
||||
#include"OutputHelper.h"
|
||||
@@ -80,19 +81,30 @@ bool EmployeeMenu::handleOperation(int choice)
|
||||
|
||||
void EmployeeMenu::viewEmployees()
|
||||
{
|
||||
std::cout << "EMPID\t\tName\t\tRole\t\tTeamId\t\tEmail\t\tPhone\t\t";
|
||||
auto employee = m_zenvyController->getEmployee();
|
||||
for (const auto& iterator : employee)
|
||||
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())
|
||||
{
|
||||
if (iterator->getEmployeeAccountStatus() == Enums::AccountStatus::ACTIVE)
|
||||
{
|
||||
std::cout << iterator->getEmployeeId() << "\t"
|
||||
<< iterator->getEmployeeName() << "\t"
|
||||
<< enumToString(iterator->getEmployeeType()) << "\t"
|
||||
<< iterator->getEmployeeTeamId() << "\t"
|
||||
<< iterator->getEmployeeEmail() << "\t"
|
||||
<< iterator->getEmployeePhone() << std::endl;
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user