Skip to content

Commit 8fcee17

Browse files
author
Piotr Chowaniec
committed
Adds fee total amount to TransactionSummary
1 parent 3207db6 commit 8fcee17

File tree

3 files changed

+16
-2
lines changed

3 files changed

+16
-2
lines changed

src/main/java/com/global/api/entities/TransactionSummary.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,4 +156,6 @@ public class TransactionSummary {
156156
private String transactionTime;
157157
private Card cardDetails;
158158
private InstallmentData installmentData;
159+
160+
private BigDecimal feeTotalAmount;
159161
}

src/main/java/com/global/api/mapping/GpApiMapping.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import com.global.api.utils.EnumUtils;
2020
import com.global.api.utils.JsonDoc;
2121
import com.global.api.utils.StringUtils;
22-
import com.google.gson.JsonElement;
2322
import lombok.var;
2423
import org.joda.time.DateTime;
2524

@@ -525,6 +524,11 @@ public static TransactionSummary mapTransactionSummary(JsonDoc doc) throws Gatew
525524
summary.setInstallmentData(setInstallmentData(installment));
526525
}
527526

527+
if(doc.has("fees")) {
528+
JsonDoc fees = doc.get("fees");
529+
summary.setFeeTotalAmount(fees.getDecimal("total_amount_decimal"));
530+
}
531+
528532
summary.setFraudManagementResponse(doc.has("risk_assessment") ? mapFraudManagementReport(doc.get("risk_assessment")) : null);
529533

530534
return summary;

src/test/java/com/global/api/tests/gpapi/GpApiMappingTest.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@
1717
import com.global.api.utils.StringUtils;
1818
import lombok.var;
1919
import org.joda.time.DateTime;
20+
import org.junit.Test;
21+
22+
import java.math.BigDecimal;
23+
2024
import org.junit.jupiter.api.Test;
2125
import static org.junit.jupiter.api.Assertions.*;
2226
import static com.global.api.gateways.GpApiConnector.parseGpApiDate;
@@ -33,7 +37,7 @@ public GpApiMappingTest() throws ApiException {
3337
@Test
3438
public void MapTransactionSummaryTest() throws GatewayException {
3539
// Arrange
36-
String rawJson = "{\"id\":\"TRN_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"time_created\":\"2020-06-05T03:08:20.896Z\",\"time_last_updated\":\"\",\"status\":\"PREAUTHORIZED\",\"type\":\"SALE\",\"merchant_id\":\"MER_c4c0df11039c48a9b63701adeaa296c3\",\"merchant_name\":\"Sandbox_merchant_2\",\"account_id\":\"TRA_6716058969854a48b33347043ff8225f\",\"account_name\":\"Transaction_Processing\",\"channel\":\"CNP\",\"amount\":\"10000\",\"currency\":\"CAD\",\"reference\":\"My-TRANS-184398775\",\"description\":\"41e7877b-da90-4c5f-befe-7f024b96311e\",\"order_reference\":\"\",\"time_created_reference\":\"\",\"batch_id\":\"\",\"initiator\":\"\",\"country\":\"\",\"language\":\"\",\"ip_address\":\"97.107.232.5\",\"site_reference\":\"\",\"payment_method\":{\"result\":\"00\",\"message\":\"SUCCESS\",\"entry_mode\":\"ECOM\",\"name\":\"NAME NOT PROVIDED\",\"card\":{\"funding\":\"CREDIT\",\"brand\":\"VISA\",\"authcode\":\"12345\",\"brand_reference\":\"TQ76bJf7qzkC30U0\",\"masked_number_first6last4\":\"411111XXXXXX1111\",\"cvv_indicator\":\"PRESENT\",\"cvv_result\":\"MATCHED\",\"avs_address_result\":\"MATCHED\",\"avs_postal_code_result\":\"MATCHED\"}},\"action_create_id\":\"ACT_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"parent_resource_id\":\"TRN_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"action\":{\"id\":\"ACT_kLkU0qND7wyuW0Br76ZNyAnlPTjHsb\",\"type\":\"TRANSACTION_SINGLE\",\"time_created\":\"2020-11-24T15:43:43.990Z\",\"result_code\":\"SUCCESS\",\"app_id\":\"JF2GQpeCrOivkBGsTRiqkpkdKp67Gxi0\",\"app_name\":\"test_app\"}}";
40+
String rawJson = "{\"id\":\"TRN_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"time_created\":\"2020-06-05T03:08:20.896Z\",\"time_last_updated\":\"\",\"status\":\"PREAUTHORIZED\",\"type\":\"SALE\",\"merchant_id\":\"MER_c4c0df11039c48a9b63701adeaa296c3\",\"merchant_name\":\"Sandbox_merchant_2\",\"account_id\":\"TRA_6716058969854a48b33347043ff8225f\",\"account_name\":\"Transaction_Processing\",\"channel\":\"CNP\",\"amount\":\"10000\",\"currency\":\"CAD\",\"reference\":\"My-TRANS-184398775\",\"description\":\"41e7877b-da90-4c5f-befe-7f024b96311e\",\"order_reference\":\"\",\"time_created_reference\":\"\",\"batch_id\":\"\",\"initiator\":\"\",\"country\":\"\",\"language\":\"\",\"ip_address\":\"97.107.232.5\",\"site_reference\":\"\",\"payment_method\":{\"result\":\"00\",\"message\":\"SUCCESS\",\"entry_mode\":\"ECOM\",\"name\":\"NAME NOT PROVIDED\",\"card\":{\"funding\":\"CREDIT\",\"brand\":\"VISA\",\"authcode\":\"12345\",\"brand_reference\":\"TQ76bJf7qzkC30U0\",\"masked_number_first6last4\":\"411111XXXXXX1111\",\"cvv_indicator\":\"PRESENT\",\"cvv_result\":\"MATCHED\",\"avs_address_result\":\"MATCHED\",\"avs_postal_code_result\":\"MATCHED\"}},\"action_create_id\":\"ACT_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"parent_resource_id\":\"TRN_TvY1QFXxQKtaFSjNaLnDVdo3PZ7ivz\",\"fees\":{\"total_amount_decimal\":\"123.12\"},\"action\":{\"id\":\"ACT_kLkU0qND7wyuW0Br76ZNyAnlPTjHsb\",\"type\":\"TRANSACTION_SINGLE\",\"time_created\":\"2020-11-24T15:43:43.990Z\",\"result_code\":\"SUCCESS\",\"app_id\":\"JF2GQpeCrOivkBGsTRiqkpkdKp67Gxi0\",\"app_name\":\"test_app\"}}";
3741

3842
JsonDoc doc = JsonDoc.parse(rawJson);
3943

@@ -69,6 +73,10 @@ public void MapTransactionSummaryTest() throws GatewayException {
6973
assertEquals(card.getString("masked_number_first6last4"), transaction.getMaskedCardNumber());
7074
}
7175
}
76+
if (doc.has("fees")) {
77+
assertEquals(doc.get("fees").getDecimal("total_amount_decimal"), transaction.getFeeTotalAmount());
78+
assertEquals(new BigDecimal("123.12"), transaction.getFeeTotalAmount());
79+
}
7280
}
7381

7482
@Test

0 commit comments

Comments
 (0)