b9b83ad429
<UserStory> EMP010 : View Payslip </UserStory> <Changes> - Added Timestamp support to Payroll and Payslip models - Implemented getPayslipForMonth flow from Controller to Service - Enabled payslip retrieval based on year and month - Updated menus to allow payslip viewing - Enhanced MenuHelper with a unified viewPayslip helper - Added date-based filtering using Timestamp utilities </Changes> <Review> Smitha Mohan </Review>
75 lines
1.6 KiB
C++
75 lines
1.6 KiB
C++
#include <iostream>
|
|
#include<iomanip>
|
|
#include "EmployeeMenu.h"
|
|
#include "InputHelper.h"
|
|
#include "OutputHelper.h"
|
|
#include "MenuHelper.h"
|
|
|
|
void EmployeeMenu::run()
|
|
{
|
|
bool isMenuActive = true;
|
|
while (isMenuActive)
|
|
{
|
|
try
|
|
{
|
|
int choice;
|
|
util::clear();
|
|
std::cout << "Employee Menu\n1. Apply Leave\n2. View Payslip\n3. View Payslip History\n4. Raise Ticket\n5. View Ticket\n6. View Ticket History\n7. View Employees\n8. Search Employee\n9. View Team Members\n10. Book Meeting Room\n11. View Booking History\n12. View Notification\n13. View Announcements\n14. Update Profile\n15. View Profile\n16. Exit\nEnter your Choice: ";
|
|
util::read(choice);
|
|
if (!handleOperation(choice))
|
|
{
|
|
isMenuActive = false;
|
|
}
|
|
}
|
|
catch (const std::exception& e)
|
|
{
|
|
std::cout << "Exception: " << e.what() << std::endl;
|
|
util::pressEnter();
|
|
}
|
|
}
|
|
}
|
|
|
|
bool EmployeeMenu::handleOperation(int choice)
|
|
{
|
|
switch (choice)
|
|
{
|
|
|
|
/*case 1:
|
|
m_zenvyController.applyLeave();
|
|
break;*/
|
|
case 2:
|
|
viewPayslip(m_zenvyController);
|
|
break;
|
|
/*case 3:
|
|
m_zenvyController.viewPayslipHistory();
|
|
break;
|
|
case 4 :
|
|
m_zenvyController.raiseTicket();
|
|
break;
|
|
case 5 :
|
|
m_zenvyController.viewTicket();
|
|
break;
|
|
case 6:
|
|
m_zenvyController.viewTicketHistory();
|
|
break;*/
|
|
case 7:
|
|
viewEmployees(m_zenvyController);
|
|
break;
|
|
case 8:
|
|
searchEmployee(m_zenvyController);
|
|
break;
|
|
case 14:
|
|
updateProfile(m_zenvyController);
|
|
break;
|
|
case 15:
|
|
viewProfile(m_zenvyController);
|
|
break;
|
|
case 16:
|
|
return false;
|
|
default:
|
|
std::cout << "Enter a valid choice!" << std::endl;
|
|
util::pressEnter();
|
|
}
|
|
return true;
|
|
}
|