Files
Training-Team2-Zenvy-Jan26/Trenser.Zenvy/Trenser.Zenvy/models/JobListing.h
T
joelthomastrenser 47b44ccaa0 Added payroll persistance and updated Talent Acquisition role
<SRS> SRS02 : Employee Management </SRS>

<Changes>
 - Added Payroll  getHeaders, serialize and deserialize functions
 - Stored payrolls in DataStore
 - Loaded and saved payrolls along with employees
 - Linked payroll to employees during creation and load
 - Added employeeId to Payroll
- Renamed TAG role to TALENT_ACQUISITION across the project
 - Added missing TalentExecutive case in Employee deserialization
 - Added constructor to TalentExecutive for FileManager integration
 - Renamed ID counters to m_uid for consistency
 - Updated salary values in ApplicationConfig
</Changes>

<Review>
Smitha Mohan
</Review>
2026-04-11 12:13:23 +05:30

39 lines
1.5 KiB
C++

#pragma once
#include <string>
#include <map>
#include <memory>
#include "Candidate.h"
#include "Enums.h"
using candidateMap = std::map<std::string, std::shared_ptr<Candidate>>;
class JobListing
{
private:
static int m_uid;
std::string m_id;
std::string m_name;
std::string m_description;
Enums::JobListingStatus m_status;
int m_numberOfVacancies;
candidateMap m_candidates;
public:
JobListing() : m_id("JL" + std::to_string(++m_uid)), m_name(""), m_description(""), m_status(Enums::JobListingStatus::CLOSED), m_numberOfVacancies(0) {}
JobListing(const std::string& name,
const std::string& description,
Enums::JobListingStatus status,
int numberOfVacancies,
const candidateMap& candidates)
: m_id("JL" + std::to_string(++m_uid)), m_name(name), m_description(description), m_status(status), m_numberOfVacancies(numberOfVacancies), m_candidates(candidates) {}
const std::string& getJobId() const;
const std::string& getJobName() const;
const std::string& getJobDescription() const;
Enums::JobListingStatus getJobStatus() const;
int getNumberOfVacancies() const;
const candidateMap& getCandidates() const;
void setJobId(const std::string& id);
void setJobName(const std::string& name);
void setJobDescription(const std::string& description);
void setJobStatus(Enums::JobListingStatus status);
void setNumberOfVacancies(int numberOfVacancies);
void setCandidates(const candidateMap& candidates);
};