11b47d38c1
- Define models, factory classes, data store, utility classes (timestamp, io helpers, enums, validator) - Define Model Class Structures - Add new model Log - Add new service LogService - Add Factory class - Add Utilities like Timestamp, Validator, Input/Output Helpers.. Co-authored-by: Tinu Johnson <tinu.johnson@trenser.com> Co-authored-by: Princy Jerin <princy.jerin@trenser.com> Co-authored-by: Ajmal Jalaludeen <ajmal.jalaludeen@trenser.com> Co-authored-by: Jissin Sam Mathew <jissin.mathew@trenser.com>
39 lines
1.4 KiB
C++
39 lines
1.4 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:
|
|
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(""), m_name(""), m_description(""), m_status(Enums::JobListingStatus::CLOSED), m_numberOfVacancies(0) {}
|
|
JobListing(const std::string& id,
|
|
const std::string& name,
|
|
const std::string& description,
|
|
Enums::JobListingStatus status,
|
|
int numberOfVacancies,
|
|
const candidateMap& candidates)
|
|
: m_id(id), 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);
|
|
}; |