66 lines
2.1 KiB
C++
66 lines
2.1 KiB
C++
/*
|
||
File: JobCard.h
|
||
Description: Declares the JobCard class which represents a technician’s job assignment in the Vehicle Service Management System.
|
||
Each job card includes booking details, associated service, technician information, assigned and completion dates, and job status.
|
||
Author: Trenser
|
||
Date: 19-May-2026
|
||
*/
|
||
|
||
#pragma once
|
||
#include <string>
|
||
#include "Timestamp.h"
|
||
|
||
class ServiceBooking;
|
||
class Service;
|
||
class User;
|
||
|
||
enum class ServiceJobStatus : int;
|
||
|
||
class JobCard
|
||
{
|
||
private:
|
||
static int m_uid;
|
||
std::string m_id;
|
||
std::string m_bookingId;
|
||
ServiceBooking* m_booking;
|
||
Service* m_service;
|
||
std::string m_serviceId;
|
||
std::string m_technicianId;
|
||
User* m_technician;
|
||
util::Timestamp m_assignedDate;
|
||
ServiceJobStatus m_status;
|
||
util::Timestamp m_completionDate;
|
||
|
||
public:
|
||
JobCard();
|
||
JobCard(const std::string& bookingId,
|
||
ServiceBooking* booking,
|
||
Service* service,
|
||
const std::string& serviceId,
|
||
const std::string& technicianId,
|
||
User* technician,
|
||
const util::Timestamp& assignedDate,
|
||
ServiceJobStatus status,
|
||
const util::Timestamp& completionDate
|
||
);
|
||
const std::string& getId() const;
|
||
const std::string& getBookingId() const;
|
||
ServiceBooking* getBooking() const;
|
||
Service* getService() const;
|
||
const std::string& getServiceId() const;
|
||
const std::string& getTechnicianId() const;
|
||
User* getTechnician() const;
|
||
const util::Timestamp& getAssignedDate() const;
|
||
ServiceJobStatus getStatus() const;
|
||
const util::Timestamp& getCompletionDate() const;
|
||
void setId(const std::string& id);
|
||
void setBookingId(const std::string& bookingId);
|
||
void setBooking(ServiceBooking* booking);
|
||
void setService(Service* service);
|
||
void setServiceId(const std::string& serviceId);
|
||
void setTechnicianId(const std::string& technicianId);
|
||
void setTechnician(User* technician);
|
||
void setAssignedDate(const util::Timestamp& assignedDate);
|
||
void setStatus(ServiceJobStatus status);
|
||
void setCompletionDate(const util::Timestamp& completionDate);
|
||
}; |