|
27 | 27 |
|
28 | 28 | import java.math.BigDecimal; |
29 | 29 | import java.text.SimpleDateFormat; |
| 30 | +import java.time.LocalDateTime; |
| 31 | +import java.time.format.DateTimeFormatter; |
30 | 32 | import java.util.ArrayList; |
31 | 33 | import java.util.LinkedHashMap; |
32 | 34 | import java.util.LinkedList; |
@@ -798,7 +800,7 @@ else if (originalPaymentMethod instanceof GiftCard) { |
798 | 800 | // DE 12: Date and Time, Transaction - n12 (YYMMDDhhmmss) |
799 | 801 | String timestamp = builder.getTimestamp(); |
800 | 802 | if(StringUtils.isNullOrEmpty(timestamp)) { |
801 | | - timestamp = DateTime.now(DateTimeZone.UTC).toString("yyMMddhhmmss"); |
| 803 | + timestamp = DateTime.now().toString("yyMMddhhmmss"); |
802 | 804 | } |
803 | 805 | request.set(DataElementId.DE_012, timestamp); |
804 | 806 |
|
@@ -1517,7 +1519,7 @@ private <T extends TransactionBuilder<Transaction>> Transaction sendRequest(Netw |
1517 | 1519 | } else { |
1518 | 1520 | NetworkMessage impliedCapture = decodeRequest(response.getTransactionToken()); |
1519 | 1521 | impliedCapture.set(DataElementId.DE_011, StringUtils.padLeft(followOnStan, 6, '0')); |
1520 | | - impliedCapture.set(DataElementId.DE_012, DateTime.now().toString("yyMMddhhmmss")); |
| 1522 | + impliedCapture.set(DataElementId.DE_012, LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddhhmmss"))); |
1521 | 1523 | impliedCapture.set(DataElementId.DE_025, DE25_MessageReasonCode.PinDebit_EBT_Acknowledgement); |
1522 | 1524 |
|
1523 | 1525 |
|
@@ -1555,7 +1557,7 @@ else if(transactionType.equals(TransactionType.Capture) && messageReasonCode != |
1555 | 1557 | return response; |
1556 | 1558 | } else if (messageReasonCode.equals(DE25_MessageReasonCode.AuthCapture.getValue())) { |
1557 | 1559 | request.set(DataElementId.DE_011, StringUtils.padLeft(followOnStan, 6, '0')); |
1558 | | - request.set(DataElementId.DE_012, DateTime.now().toString("yyMMddhhmmss")); |
| 1560 | + request.set(DataElementId.DE_012, LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddhhmmss"))); |
1559 | 1561 | request.set(DataElementId.DE_025, DE25_MessageReasonCode.PinDebit_EBT_Acknowledgement); |
1560 | 1562 |
|
1561 | 1563 | Transaction dataCollectResponse = sendRequest(request, builder, orgCorr1, orgCorr2); |
@@ -2331,21 +2333,38 @@ private <T extends TransactionBuilder<Transaction>> DE48_MessageControl mapMessa |
2331 | 2333 | // DE48-4 (Sequence Number & Batch Number) |
2332 | 2334 | if(!builder.getTransactionType().equals(TransactionType.Auth) && !isTimeRequest) { |
2333 | 2335 | int sequenceNumber = 0; |
| 2336 | + |
2334 | 2337 | if(!builder.getTransactionType().equals(TransactionType.BatchClose)) { |
2335 | 2338 | sequenceNumber = builder.getSequenceNumber(); |
| 2339 | + if (builder.getPaymentMethod() != null) { |
| 2340 | + IPaymentMethod paymentMethod = builder.getPaymentMethod(); |
| 2341 | + if (paymentMethod instanceof TransactionReference) { |
| 2342 | + TransactionReference reference = (TransactionReference) builder.getPaymentMethod(); |
| 2343 | + if(reference.getSequenceNumber()!=null) { |
| 2344 | + sequenceNumber = reference.getSequenceNumber(); |
| 2345 | + } |
| 2346 | + } |
| 2347 | + } |
2336 | 2348 | if (sequenceNumber == 0 && batchProvider != null) { |
2337 | 2349 | sequenceNumber = batchProvider.getSequenceNumber(); |
2338 | 2350 | } |
2339 | 2351 | } |
2340 | 2352 | messageControl.setSequenceNumber(sequenceNumber); |
2341 | 2353 |
|
2342 | 2354 | int batchNumber = builder.getBatchNumber(); |
2343 | | - if (batchNumber == 0 && batchProvider != null) { |
2344 | | - batchNumber = batchProvider.getBatchNumber(); |
| 2355 | + if (builder.getPaymentMethod() != null) { |
| 2356 | + IPaymentMethod paymentMethod = builder.getPaymentMethod(); |
| 2357 | + if (paymentMethod instanceof TransactionReference) { |
| 2358 | + TransactionReference reference = (TransactionReference) builder.getPaymentMethod(); |
| 2359 | + if(reference.getBatchNumber()!=null) |
| 2360 | + batchNumber = reference.getBatchNumber(); |
| 2361 | + } |
2345 | 2362 | } |
| 2363 | + if (batchNumber == 0 && batchProvider != null) { |
| 2364 | + batchNumber = batchProvider.getBatchNumber(); |
| 2365 | + } |
2346 | 2366 | messageControl.setBatchNumber(batchNumber); |
2347 | 2367 | } |
2348 | | - |
2349 | 2368 | // DE48-5 |
2350 | 2369 | if(builder instanceof AuthorizationBuilder) { |
2351 | 2370 | AuthorizationBuilder authBuilder = (AuthorizationBuilder)builder; |
|
0 commit comments