@@ -102,7 +102,7 @@ ocpp::types::AuthorizationStatus ReservationManager::isTransactionAllowed(unsign
102102 if (connector)
103103 {
104104 // Check if connector is reserved
105- if (connector->status == ChargePointStatus::Reserved )
105+ if (! connector->reservation_id_tag . empty () )
106106 {
107107 // Check if id tag match
108108 if (id_tag == connector->reservation_id_tag )
@@ -130,7 +130,7 @@ ocpp::types::AuthorizationStatus ReservationManager::isTransactionAllowed(unsign
130130 {
131131 // Check if connector 0 is reserved
132132 Connector& charge_point = m_connectors.getChargePointConnector ();
133- if (charge_point.status == ChargePointStatus::Reserved )
133+ if (! charge_point.reservation_id_tag . empty () )
134134 {
135135 // Ensure that the module functions properly even when the gun is inserted first by the user.
136136 if (m_connectors.getConnector (connector_id)->status == ChargePointStatus::Preparing)
@@ -234,6 +234,7 @@ bool ReservationManager::handleMessage(const ocpp::messages::ReserveNowReq& requ
234234 m_status_manager.updateConnectorStatus (connector->id , ChargePointStatus::Reserved);
235235 m_events_handler.reservationStarted (connector->id );
236236 });
237+
237238 break ;
238239 }
239240
@@ -293,7 +294,7 @@ bool ReservationManager::handleMessage(const ocpp::messages::CancelReservationRe
293294 response.status = CancelReservationStatus::Rejected;
294295 for (const Connector* connector : m_connectors.getConnectors ())
295296 {
296- if ((connector->status == ChargePointStatus::Reserved ) && (connector->reservation_id == request.reservationId ))
297+ if ((! connector->reservation_id_tag . empty () ) && (connector->reservation_id == request.reservationId ))
297298 {
298299 // Cancel reservation
299300 m_worker_pool.run <void >([this , connector_id = connector->id ] { endReservation (connector_id, true ); });
@@ -316,7 +317,7 @@ void ReservationManager::checkExpiries()
316317 // Check reservations
317318 for (const Connector* connector : m_connectors.getConnectors ())
318319 {
319- if ((connector->status == ChargePointStatus::Reserved ) && (connector->reservation_expiry_date <= now))
320+ if ((! connector->reservation_id_tag . empty () ) && (connector->reservation_expiry_date <= now))
320321 {
321322 // End reservation
322323 m_worker_pool.run <void >(std::bind (&ReservationManager::endReservation, this , connector->id , false ));
0 commit comments