diff --git a/Trenser.Zenvy/Trenser.Zenvy/views/MenuHelper.h b/Trenser.Zenvy/Trenser.Zenvy/views/MenuHelper.h index 2d6e595..4c84538 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/views/MenuHelper.h +++ b/Trenser.Zenvy/Trenser.Zenvy/views/MenuHelper.h @@ -154,28 +154,6 @@ inline void viewEmployees(std::shared_ptr m_zenvyController) util::pressEnter(); } -static void displayPayroll(std::shared_ptr payroll) -{ - std::cout << std::left - << std::setw(10) << payroll->getId() - << std::setw(10) << payroll->getBasicSalary() - << std::setw(10) << payroll->getEmployeePFContribution() - << std::setw(10) << payroll->getEmployerPFContribution() - << std::setw(10) << payroll->getFoodAllowance() - << std::setw(10) << payroll->getHouseRentAllowance() - << std::endl; -} - -static void filterSearchResults(Enums::EmployeeType type, std::shared_ptr employee) -{ - switch (type) - { - case Enums::EmployeeType::FINANCE: - displayPayroll(employee->getPayroll()); - break; - } -} - inline void searchEmployee(std::shared_ptr& m_zenvyController) { std::string name; @@ -185,15 +163,27 @@ inline void searchEmployee(std::shared_ptr& m_zenvyController) std::pair>> searchResults = m_zenvyController->searchEmployee(name); if (!(searchResults.second).empty()) { - std::cout << std::left - << std::setw(10) << "ID" - << std::setw(20) << "Name" - << std::setw(25) << "Email" - << std::setw(15) << "Phone" - << std::setw(15) << "Type" - << std::setw(15) << "Team Status" - << std::setw(10) << "Team ID" - << std::endl; + std::cout << std::left + << std::setw(10) << "ID" + << std::setw(20) << "Name" + << std::setw(25) << "Email" + << std::setw(15) << "Phone" + << std::setw(20) << "Type" + << std::setw(20) << "TeamStatus" + << std::setw(15) << "TeamID"; + if (searchResults.first == Enums::EmployeeType::FINANCE + || searchResults.first == Enums::EmployeeType::HR + || searchResults.first == Enums::EmployeeType::ADMIN) + { + std::cout << std::left + << std::setw(17) << "PayrollID" + << std::setw(20) << "BasicSalary" + << std::setw(15) << "EmployeePF" + << std::setw(15) << "EmployerPF" + << std::setw(15) << "FoodAllowance" + << std::setw(15) << "HouseRentAllowance"; + } + std::cout << std::endl; for (const auto& employee : searchResults.second) { if (employee->getEmployeeAccountStatus() == Enums::AccountStatus::ACTIVE) @@ -203,10 +193,29 @@ inline void searchEmployee(std::shared_ptr& m_zenvyController) << std::setw(20) << employee->getEmployeeName() << std::setw(25) << employee->getEmployeeEmail() << std::setw(15) << employee->getEmployeePhone() - << std::setw(15) << Enums::getEmployeeTypeString(employee->getEmployeeType()) - << std::setw(15) << Enums::getTeamStatusString(employee->getEmployeeTeamStatus()) - << std::setw(10) << employee->getEmployeeTeamId(); - filterSearchResults(searchResults.first, employee); + << std::setw(20) << Enums::getEmployeeTypeString(employee->getEmployeeType()) + << std::setw(20) << Enums::getTeamStatusString(employee->getEmployeeTeamStatus()); + if (employee->getEmployeeTeamId() == "") + { + std::cout << std::setw(15) << "NULL"; + } + else + { + std::cout << std::setw(15) << employee->getEmployeeTeamId(); + } + if (searchResults.first == Enums::EmployeeType::FINANCE + || searchResults.first == Enums::EmployeeType::HR + || searchResults.first == Enums::EmployeeType::ADMIN) + { + std::cout << std::left + << std::setw(17) << employee->getPayroll()->getId() + << std::setw(20) << employee->getPayroll()->getBasicSalary() + << std::setw(15) << employee->getPayroll()->getEmployeePFContribution() + << std::setw(15) << employee->getPayroll()->getEmployerPFContribution() + << std::setw(15) << employee->getPayroll()->getFoodAllowance() + << std::setw(15) << employee->getPayroll()->getHouseRentAllowance(); + } + std::cout << std::endl; } } }