From a0c499d78fdf34fb844ddc9a3a30b15c6400d051 Mon Sep 17 00:00:00 2001 From: Tinu Johnson Date: Fri, 17 Apr 2026 10:26:33 +0530 Subject: [PATCH] Add function headers in models --- .../Trenser.Zenvy/models/Employee.cpp | 62 +++++++++++++++---- Trenser.Zenvy/Trenser.Zenvy/models/FAQ.cpp | 2 +- Trenser.Zenvy/Trenser.Zenvy/models/FAQ.h | 3 +- .../Trenser.Zenvy/models/FinanceExecutive.h | 3 +- .../Trenser.Zenvy/models/GeneralEmployee.cpp | 26 ++++++-- .../Trenser.Zenvy/models/HRManager.cpp | 2 +- .../Trenser.Zenvy/models/HRManager.h | 3 +- .../Trenser.Zenvy/models/ITExecutive.h | 3 +- Trenser.Zenvy/Trenser.Zenvy/models/Leave.cpp | 8 +-- 9 files changed, 79 insertions(+), 33 deletions(-) diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/Employee.cpp b/Trenser.Zenvy/Trenser.Zenvy/models/Employee.cpp index f34534f..7795d56 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/Employee.cpp +++ b/Trenser.Zenvy/Trenser.Zenvy/models/Employee.cpp @@ -105,6 +105,16 @@ const leaveMap& Employee::getEmployeeLeaves() const return m_leaves; } +Enums::EmployeeType Employee::getEmployeeType() const +{ + return m_employeeType; +} + +std::string Employee::getHeaders() +{ + return "EmployeeId,Email,Name,Phone,Password,TeamID,TeamStatus,AccountStatus,EmployeeType"; +} + void Employee::setEmployeeId(const std::string& id) { m_id = id; @@ -145,6 +155,14 @@ void Employee::setEmployeePayroll(Payroll* payroll) m_payroll = payroll; } +/* +* Function: addPayslip +* Description : Adds a payslip to the employee's payslip records +* Parameters : + payslip - Pointer to the Payslip object to be added +* Returns : + void + */ void Employee::addPayslip(Payslip* payslip) { if (payslip) @@ -153,6 +171,14 @@ void Employee::addPayslip(Payslip* payslip) } } +/* + * Function: addAttendance + * Description: Adds an attendance record to the employee's attendance history + * Parameters: + * attendance - Pointer to the Attendance object containing login information + * Returns: + * void + */ void Employee::addAttendance(Attendance* attendance) { if (attendance) @@ -161,6 +187,14 @@ void Employee::addAttendance(Attendance* attendance) } } +/* + * Function: addLeave + * Description: Adds a leave record to the employee's leave history + * Parameters: + * leave - Pointer to the Leave object to be added + * Returns: + * void + */ void Employee::addLeave(Leave* leave) { if (leave) @@ -169,11 +203,14 @@ void Employee::addLeave(Leave* leave) } } -Enums::EmployeeType Employee::getEmployeeType() const -{ - return m_employeeType; -} - +/* + * Function: serialize + * Description: Serializes the employee object's core details into a comma-separated string + * Parameters: + None + * Returns: + A string containing serialized employee data in CSV format + */ std::string Employee::serialize() const { std::ostringstream serializedEmployee; @@ -189,6 +226,14 @@ std::string Employee::serialize() const return serializedEmployee.str(); } +/* + * Function: deserialize + * Description: Creates and returns an Employee object from a serialized comma-separated record string + * Parameters: + record - A string containing serialized employee data in CSV format + * Returns: + Pointer to a newly created Employee object based on the employee type + */ Employee* Employee::deserialize(const std::string& record) { std::string id, name, phone, password, email; @@ -279,9 +324,4 @@ Employee* Employee::deserialize(const std::string& record) default: return nullptr; } -} - -std::string Employee::getHeaders() -{ - return "EmployeeId,Email,Name,Phone,Password,TeamID,TeamStatus,AccountStatus,EmployeeType"; -} +} \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.cpp b/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.cpp index a5e7b41..4badf93 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.cpp +++ b/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.cpp @@ -4,4 +4,4 @@ * Author: Trenser * Created: 02-Apr-2026 */ -#include "Faq.h" +#include "Faq.h" \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.h b/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.h index 3788612..a2ba8bf 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.h +++ b/Trenser.Zenvy/Trenser.Zenvy/models/FAQ.h @@ -8,5 +8,4 @@ class Faq { -}; - +}; \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/FinanceExecutive.h b/Trenser.Zenvy/Trenser.Zenvy/models/FinanceExecutive.h index 3a899d9..1a58dfe 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/FinanceExecutive.h +++ b/Trenser.Zenvy/Trenser.Zenvy/models/FinanceExecutive.h @@ -35,5 +35,4 @@ public: Enums::EmployeeType::FINANCE, accountStatus) {} ~FinanceExecutive() = default; -}; - +}; \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/GeneralEmployee.cpp b/Trenser.Zenvy/Trenser.Zenvy/models/GeneralEmployee.cpp index 8ce81ba..fcf784c 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/GeneralEmployee.cpp +++ b/Trenser.Zenvy/Trenser.Zenvy/models/GeneralEmployee.cpp @@ -13,11 +13,24 @@ Enums::EmployeeDesignation GeneralEmployee::getDesignation() const return m_designation; } +std::string GeneralEmployee::getHeaders() +{ + return "EmployeeId,Email,Name,Phone,Password,TeamID,TeamStatus,AccountStatus,EmployeeType,EmployeeDesignation"; +} + void GeneralEmployee::setDesignation(Enums::EmployeeDesignation designation) { m_designation = designation; } +/* + * Function: serialize + * Description: Serializes the general employee's details, including designation, into a comma-separated string + * Parameters: + None + * Returns: + A string containing serialized general employee data in CSV format + */ std::string GeneralEmployee::serialize() const { std::ostringstream serializedEmployee; @@ -34,6 +47,14 @@ std::string GeneralEmployee::serialize() const return serializedEmployee.str(); } +/* + * Function: deserialize + * Description: Creates and returns a GeneralEmployee object from a serialized comma-separated record string + * Parameters: + record - A string containing serialized general employee data in CSV format + * Returns: + Pointer to a newly created GeneralEmployee object + */ GeneralEmployee* GeneralEmployee::deserialize(const std::string& record) { std::string id, name, phone, password, email; @@ -64,9 +85,4 @@ GeneralEmployee* GeneralEmployee::deserialize(const std::string& record) employeeDesignation, accountStatus ); -} - -std::string GeneralEmployee::getHeaders() -{ - return "EmployeeId,Email,Name,Phone,Password,TeamID,TeamStatus,AccountStatus,EmployeeType,EmployeeDesignation"; } \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.cpp b/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.cpp index 8f9615f..3a3733b 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.cpp +++ b/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.cpp @@ -4,4 +4,4 @@ * Author: Trenser * Created: 31-Mar-2026 */ -#include "HRManager.h" +#include "HRManager.h" \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.h b/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.h index 41fa740..6a08f03 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.h +++ b/Trenser.Zenvy/Trenser.Zenvy/models/HRManager.h @@ -35,5 +35,4 @@ public: Enums::EmployeeType::HR, accountStatus) {} ~HRManager() = default; -}; - +}; \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/ITExecutive.h b/Trenser.Zenvy/Trenser.Zenvy/models/ITExecutive.h index 9d02cd1..ab807e8 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/ITExecutive.h +++ b/Trenser.Zenvy/Trenser.Zenvy/models/ITExecutive.h @@ -35,5 +35,4 @@ public: Enums::EmployeeType::IT, accountStatus) {} ~ITExecutive() = default; -}; - +}; \ No newline at end of file diff --git a/Trenser.Zenvy/Trenser.Zenvy/models/Leave.cpp b/Trenser.Zenvy/Trenser.Zenvy/models/Leave.cpp index 3519d1e..e33e319 100644 --- a/Trenser.Zenvy/Trenser.Zenvy/models/Leave.cpp +++ b/Trenser.Zenvy/Trenser.Zenvy/models/Leave.cpp @@ -86,10 +86,4 @@ void Leave::setNumberOfMedicalLeave(int value) void Leave::setLeaveType(Enums::LeaveType type) { m_leaveType = type; -} - -int Leave::m_numberOfGeneralLeave = 12; - -int Leave::m_numberOfRestrictedLeave = 2; - -int Leave::m_numberOfMedicalLeave = 6; \ No newline at end of file +} \ No newline at end of file