From ca0e277586ba06db98bac47cf38b88a2e6577866 Mon Sep 17 00:00:00 2001 From: Jissin Mathew Date: Thu, 18 Jun 2026 11:33:10 +0530 Subject: [PATCH] Implement Review fixes --- .../Trenser.VehicleServiceSystem/datastores/DataStore.h | 1 + .../services/ServiceManagementService.cpp | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/datastores/DataStore.h b/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/datastores/DataStore.h index 7093599..03eb0eb 100644 --- a/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/datastores/DataStore.h +++ b/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/datastores/DataStore.h @@ -222,6 +222,7 @@ void DataStore::refreshCache(util::Map>& cac TrackedRecord& oldRecord = oldCache.getValueAt(oldIndex); if (oldRecord.state == RecordState::MODIFIED) { + delete refreshedRecord.data; cache.insert(id, oldRecord); continue; } diff --git a/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/services/ServiceManagementService.cpp b/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/services/ServiceManagementService.cpp index 172cda4..1a7693f 100644 --- a/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/services/ServiceManagementService.cpp +++ b/Trenser.VehicleServiceSystem/Trenser.VehicleServiceSystem/services/ServiceManagementService.cpp @@ -594,6 +594,10 @@ void ServiceManagementService::createJobCard(const std::string& bookingID, const DataStoreLockGuard lock(m_dataStore); UserManagementService m_userManagementService; ServiceBooking* currentBooking = getServiceBooking(bookingID); + if (currentBooking == nullptr) + { + throw std::runtime_error("Service Booking not available"); + } if (currentBooking->getStatus() == util::ServiceJobStatus::CANCELLED) { throw std::runtime_error("Cannot create job card. Service Booking was cancelled!"); @@ -607,10 +611,6 @@ void ServiceManagementService::createJobCard(const std::string& bookingID, const throw std::runtime_error("Invalid service booking id."); } auto& currentTrackedServiceBooking = currentTrackedServiceBookings.getValueAt(currentTrackedServiceBookingIndex); - if (currentBooking == nullptr) - { - throw std::runtime_error("Service Booking not available"); - } auto& currentServices = currentBooking->getServices(); if (currentServices.find(serviceID) == -1) {