diff --git a/build.gradle b/build.gradle index 72c4261..89b27e4 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { } repositories { - jcenter() + mavenCentral() } dependencies { diff --git a/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java b/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java index 5d48eb1..d017a24 100644 --- a/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java +++ b/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java @@ -1,10 +1,11 @@ package io.craftgate.request; +import io.craftgate.model.LoyaltyType; +import io.craftgate.request.common.BaseRequest; import io.craftgate.request.dto.FraudCheckParameters; import lombok.Data; -import lombok.experimental.SuperBuilder; import lombok.EqualsAndHashCode; -import io.craftgate.request.common.BaseRequest; +import lombok.experimental.SuperBuilder; @Data @SuperBuilder @@ -14,10 +15,10 @@ public class RetrieveLoyaltiesRequest extends BaseRequest { private String expireYear; private String expireMonth; private String cvc; - private String cardUserKey; private String cardToken; - + private Integer installment; + private LoyaltyType loyaltyType; private String clientIp; private String conversationId; private FraudCheckParameters fraudParams; diff --git a/src/test/java/io/craftgate/sample/PaymentSample.java b/src/test/java/io/craftgate/sample/PaymentSample.java index c2e7f1d..3e16c97 100644 --- a/src/test/java/io/craftgate/sample/PaymentSample.java +++ b/src/test/java/io/craftgate/sample/PaymentSample.java @@ -1969,6 +1969,27 @@ void retrieve_loyalties() { assertEquals(new BigDecimal("5.20"), response.getLoyalties().get(0).getReward().getFirmRewardMoney()); } + @Test + void retrieve_loyalties_by_installment() { + RetrieveLoyaltiesRequest request = RetrieveLoyaltiesRequest.builder() + .cardNumber("5482370000000003") + .expireYear("2044") + .expireMonth("07") + .cvc("000") + .installment(2) + .loyaltyType(LoyaltyType.ADDITIONAL_INSTALLMENT) + .build(); + + RetrieveLoyaltiesResponse response = craftgate.payment().retrieveLoyalties(request); + assertNotNull(response); + assertEquals("Maximum", response.getCardBrand()); + assertNotNull(response.getLoyalties()); + assertFalse(response.getLoyalties().isEmpty()); + assertEquals(LoyaltyType.ADDITIONAL_INSTALLMENT, response.getLoyalties().get(0).getType()); + assertEquals("+5 taksit", response.getLoyalties().get(0).getMessage()); + assertEquals("installment5", response.getLoyalties().get(0).getLoyaltyData().getCode()); + } + @Test void refund_payment() { RefundPaymentRequest request = RefundPaymentRequest.builder()