Skip to content

Commit c64d3bf

Browse files
authored
Merge pull request #1416 from steve-community/1414-and-1415
handle "0" ids same as "null"
2 parents cf4d550 + 6e4e980 commit c64d3bf

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

src/main/java/de/rwth/idsg/steve/repository/dto/InsertTransactionParams.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,11 @@ public class InsertTransactionParams {
4343
// this came after splitting transaction table into two tables (start and stop)
4444
private final DateTime eventTimestamp;
4545

46+
/**
47+
* https://github.com/steve-community/steve/issues/1414
48+
*/
4649
public boolean isSetReservationId() {
47-
return reservationId != null;
50+
return reservationId != null && reservationId != 0;
4851
}
4952

5053
}

src/main/java/de/rwth/idsg/steve/service/CentralSystemService16_Service.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,11 +151,13 @@ public StatusNotificationResponse statusNotification(
151151
}
152152

153153
public MeterValuesResponse meterValues(MeterValuesRequest parameters, String chargeBoxIdentity) {
154+
Integer transactionId = getTransactionId(parameters);
155+
154156
ocppServerRepository.insertMeterValues(
155157
chargeBoxIdentity,
156158
parameters.getMeterValue(),
157159
parameters.getConnectorId(),
158-
parameters.getTransactionId()
160+
transactionId
159161
);
160162

161163
return new MeterValuesResponse();
@@ -261,4 +263,19 @@ public DataTransferResponse dataTransfer(DataTransferRequest parameters, String
261263
// https://github.com/steve-community/steve/pull/36
262264
return new DataTransferResponse().withStatus(DataTransferStatus.ACCEPTED);
263265
}
266+
267+
// -------------------------------------------------------------------------
268+
// Helpers
269+
// -------------------------------------------------------------------------
270+
271+
/**
272+
* https://github.com/steve-community/steve/issues/1415
273+
*/
274+
private Integer getTransactionId(MeterValuesRequest parameters) {
275+
Integer transactionId = parameters.getTransactionId();
276+
if (transactionId == null || transactionId == 0) {
277+
return null;
278+
}
279+
return transactionId;
280+
}
264281
}

0 commit comments

Comments
 (0)