Fix ServiceBooking ID prefix and notification messages
- change ServiceBooking ID prefix from `SRV` to `SBK` - add customer notification when technician is assigned to booking - fix typo in job completion exception message - remove unnecessary newline characters from completion notifications Fixes #1780
This commit is contained in:
@@ -24,9 +24,10 @@ Parameters: None
|
|||||||
Returns: A new ServiceBooking object.
|
Returns: A new ServiceBooking object.
|
||||||
*/
|
*/
|
||||||
ServiceBooking::ServiceBooking()
|
ServiceBooking::ServiceBooking()
|
||||||
: m_id("SRV" + std::to_string(++m_uid)),
|
: m_id("SBK" + std::to_string(++m_uid)),
|
||||||
m_customer(nullptr),
|
m_customer(nullptr),
|
||||||
m_assignedTechnician(nullptr),
|
m_assignedTechnician(nullptr),
|
||||||
|
m_status(util::ServiceJobStatus::PENDING),
|
||||||
m_discountPercentage(0.0) {}
|
m_discountPercentage(0.0) {}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -56,7 +57,7 @@ ServiceBooking::ServiceBooking(
|
|||||||
const std::string& vehicleModel,
|
const std::string& vehicleModel,
|
||||||
double discountPercentage
|
double discountPercentage
|
||||||
)
|
)
|
||||||
: m_id("SRV" + std::to_string(++m_uid)),
|
: m_id("SBK" + std::to_string(++m_uid)),
|
||||||
m_status(status),
|
m_status(status),
|
||||||
m_services(services),
|
m_services(services),
|
||||||
m_customerId(customerId),
|
m_customerId(customerId),
|
||||||
|
|||||||
+7
-4
@@ -833,6 +833,9 @@ void ServiceManagementService::createJobCard(const std::string& bookingID, const
|
|||||||
{
|
{
|
||||||
throw std::runtime_error("Failed to create job card.");
|
throw std::runtime_error("Failed to create job card.");
|
||||||
}
|
}
|
||||||
|
title = "Technician assigned";
|
||||||
|
message = "A technician has been assigned to your Service Booking with ID " + bookingID;
|
||||||
|
sendNotification(currentBooking->getCustomer(), title, message);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -1055,11 +1058,11 @@ void ServiceManagementService::completeJob(const std::string& jobID)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw std::runtime_error("Failed to complete the job, some error occured or job already completed.");
|
throw std::runtime_error("Failed to complete the job, some error occurred or job already completed.");
|
||||||
}
|
}
|
||||||
if (!jobStatusUpdated)
|
if (!jobStatusUpdated)
|
||||||
{
|
{
|
||||||
throw std::runtime_error("Failed to complete the job, some error occured or job already completed.");
|
throw std::runtime_error("Failed to complete the job, some error occurred or job already completed.");
|
||||||
}
|
}
|
||||||
|
|
||||||
serviceBookingCompleted = hasCompletedAllJobs(currentJob->getBookingId(), currentAssignedJobs);
|
serviceBookingCompleted = hasCompletedAllJobs(currentJob->getBookingId(), currentAssignedJobs);
|
||||||
@@ -1067,8 +1070,8 @@ void ServiceManagementService::completeJob(const std::string& jobID)
|
|||||||
{
|
{
|
||||||
currentJob->getBooking()->setStatus(util::ServiceJobStatus::COMPLETED);
|
currentJob->getBooking()->setStatus(util::ServiceJobStatus::COMPLETED);
|
||||||
paymentManagementService.generateInvoice(currentJob->getBooking());
|
paymentManagementService.generateInvoice(currentJob->getBooking());
|
||||||
std::string title = "Service Booking completed,Invoice Generated.\n";
|
std::string title = "Service Booking completed,Invoice Generated.";
|
||||||
std::string message = "Services completed for the booking and invoice generated.\n";
|
std::string message = "Services completed for the booking and invoice generated.";
|
||||||
sendNotification(currentJob->getBooking()->getCustomer(), title, message);
|
sendNotification(currentJob->getBooking()->getCustomer(), title, message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user