From 30c55622365cf083a8c9001428ca8e56d469b0d1 Mon Sep 17 00:00:00 2001 From: Anatoly Karlov Date: Tue, 28 Apr 2026 21:21:01 +0700 Subject: [PATCH] bump deps --- pom.xml | 3 +- .../ParamsToPaymentSearchQueryConverter.java | 4 ++- ...PaymentToPaymentSearchResultConverter.java | 11 +----- ...ramsToPaymentSearchQueryConverterTest.java | 35 +++++++++++++++++-- ...entToPaymentSearchResultConverterTest.java | 26 +++----------- .../vality/anapi/v2/testutil/MagistaUtil.java | 16 +++++---- 6 files changed, 53 insertions(+), 42 deletions(-) diff --git a/pom.xml b/pom.xml index 53fdf588..8fb5e242 100644 --- a/pom.xml +++ b/pom.xml @@ -48,7 +48,7 @@ dev.vality magista-proto - 1.55-bbdee33 + 1.60-6cafe01 dev.vality @@ -67,6 +67,7 @@ dev.vality damsel + 1.685-5c25c2e diff --git a/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverter.java b/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverter.java index f934c25a..e1f22718 100644 --- a/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverter.java +++ b/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverter.java @@ -45,6 +45,9 @@ public PaymentSearchQuery convert(String partyID, Long paymentAmountTo, List excludedShops, String continuationToken) { + if (customerID != null) { + throw new BadRequestException("Customer ID payment search is not supported by current magista protocol"); + } List invoiceIds = ConverterUtil.merge(invoiceID, invoiceIDs); PaymentSearchQuery query = new PaymentSearchQuery() .setCommonSearchQueryParams( @@ -62,7 +65,6 @@ public PaymentSearchQuery convert(String partyID, bankCardTokenProvider != null ? new BankCardTokenServiceRef(bankCardTokenProvider) : null) .setPaymentEmail(payerEmail) .setPaymentApprovalCode(approvalCode) - .setPaymentCustomerId(customerID) .setPaymentFingerprint(payerFingerprint) .setPaymentFirst6(first6) .setPaymentLast4(last4) diff --git a/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverter.java b/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverter.java index 4299902e..1bffcc1b 100644 --- a/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverter.java +++ b/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverter.java @@ -1,12 +1,12 @@ package dev.vality.anapi.v2.converter.magista.response; +import dev.vality.anapi.v2.model.*; import dev.vality.anapi.v2.model.ClientInfo; import dev.vality.anapi.v2.model.ContactInfo; import dev.vality.anapi.v2.model.Payer; import dev.vality.anapi.v2.model.PaymentResourcePayer; import dev.vality.anapi.v2.model.RecurrentPayer; import dev.vality.anapi.v2.model.TransactionInfo; -import dev.vality.anapi.v2.model.*; import dev.vality.anapi.v2.util.MaskUtil; import dev.vality.damsel.domain.*; import dev.vality.geck.common.util.TypeUtil; @@ -66,15 +66,6 @@ protected Payer mapPayer(dev.vality.magista.Payer payer) { try { var field = dev.vality.magista.Payer._Fields.findByName(payer.getSetField().getFieldName()); switch (field) { - case CUSTOMER -> { - var customer = payer.getCustomer(); - var paymentTool = customer.getPaymentTool(); - return new CustomerPayer() - .customerID(customer.getCustomerId()) - .paymentToolDetails(mapPaymentToolDetails(paymentTool)) - .paymentToolToken(getPaymentToolToken(paymentTool)) - .payerType("CustomerPayer"); - } case PAYMENT_RESOURCE -> { var resource = payer.getPaymentResource(); var clientInfo = resource.getResource().getClientInfo(); diff --git a/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverterTest.java b/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverterTest.java index e261b98a..be1f0955 100644 --- a/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverterTest.java +++ b/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPaymentSearchQueryConverterTest.java @@ -34,7 +34,7 @@ void convert() { "mail@mail.com", "127.0.0.1", "fingerprint", - "1", + null, "123456", "7890", "012345678", @@ -48,6 +48,37 @@ void convert() { assertNotNull(query); } + @Test + void convertWithCustomerId() { + assertThrows(BadRequestException.class, () -> converter.convert("1", + OffsetDateTime.MIN, + OffsetDateTime.MAX, + 10, + List.of("1", "2", "3"), + List.of("1", "2", "3"), + "cancelled", + "hold", + "paymentTerminal", + "euroset", + "1", + "1", + "1", + "mail@mail.com", + "127.0.0.1", + "fingerprint", + "1", + "123456", + "7890", + "012345678", + "123456", + "applepay", + "mastercard", + 0L, + 1000L, + List.of("1", "2", "3"), + "test")); + } + @Test void mapPaymentTool() { assertEquals(PaymentToolType.bank_card, converter.mapPaymentTool("bankCard")); @@ -70,4 +101,4 @@ void mapStatus() { assertThrows(BadRequestException.class, () -> converter.mapStatus("unexpected")); } -} \ No newline at end of file +} diff --git a/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverterTest.java b/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverterTest.java index 4677edce..a02aa8b7 100644 --- a/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverterTest.java +++ b/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPaymentToPaymentSearchResultConverterTest.java @@ -4,18 +4,17 @@ import dev.vality.anapi.v2.testutil.MagistaUtil; import dev.vality.anapi.v2.testutil.RandomUtil; import dev.vality.anapi.v2.util.MaskUtil; +import dev.vality.damsel.domain.*; import dev.vality.damsel.domain.ClientInfo; import dev.vality.damsel.domain.ContactInfo; import dev.vality.damsel.domain.InvoicePaymentStatus; import dev.vality.damsel.domain.PaymentResourcePayer; import dev.vality.damsel.domain.RecurrentPayer; -import dev.vality.damsel.domain.*; import dev.vality.geck.common.util.TypeUtil; -import dev.vality.magista.CustomerPayer; +import dev.vality.magista.*; import dev.vality.magista.InvoicePaymentFlow; import dev.vality.magista.InvoicePaymentFlowInstant; import dev.vality.magista.Payer; -import dev.vality.magista.*; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; @@ -60,9 +59,6 @@ void convert() { @Test void mapPayer() { - Payer payer = new Payer(); - CustomerPayer customerPayer = new CustomerPayer(); - payer.setCustomer(customerPayer); PaymentTool tool = new PaymentTool(); tool.setBankCard(new BankCard().setBin("1234") .setLastDigits("5678") @@ -70,22 +66,8 @@ void mapPayer() { .setToken("1111") .setPaymentSystem(new PaymentSystemRef("maestro")) .setPaymentToken(new BankCardTokenServiceRef("applepay"))); - customerPayer.setPaymentTool(tool) - .setCustomerId("1"); - var openapiCustomerPayer = - (dev.vality.anapi.v2.model.CustomerPayer) converter.mapPayer(payer); - var paymentToolDetails = (PaymentToolDetailsBankCard) openapiCustomerPayer.getPaymentToolDetails(); - assertAll( - () -> assertEquals("1", openapiCustomerPayer.getCustomerID()), - () -> assertEquals("1111", openapiCustomerPayer.getPaymentToolToken()), - () -> assertEquals("1234", paymentToolDetails.getBin()), - () -> assertEquals("5678", paymentToolDetails.getLastDigits()), - () -> assertEquals("maestro", paymentToolDetails.getPaymentSystem()), - () -> assertEquals("applepay", paymentToolDetails.getTokenProvider()) - ); - - payer = new Payer(); + Payer payer = new Payer(); var contactInfo = new ContactInfo() .setEmail("mail@mail.com") .setPhoneNumber("88005553535"); @@ -231,4 +213,4 @@ void mapPaymentToolDetails() { assertEquals(expectedLegacyCryptoDetails, actualLegacyCryptoDetails.getCryptoCurrency()); } -} \ No newline at end of file +} diff --git a/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java b/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java index a5eb8029..49f0b3a8 100644 --- a/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java +++ b/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java @@ -5,15 +5,15 @@ import dev.vality.bouncer.decisions.Resolution; import dev.vality.bouncer.decisions.ResolutionAllowed; import dev.vality.damsel.base.Content; +import dev.vality.damsel.domain.*; import dev.vality.damsel.domain.InvoicePaymentRefundStatus; import dev.vality.damsel.domain.InvoicePaymentStatus; import dev.vality.damsel.domain.InvoiceStatus; -import dev.vality.damsel.domain.*; +import dev.vality.magista.*; import dev.vality.magista.InvoicePaymentFlow; import dev.vality.magista.InvoicePaymentFlowHold; import dev.vality.magista.InvoicePaymentFlowInstant; import dev.vality.magista.Payer; -import dev.vality.magista.*; import lombok.SneakyThrows; import lombok.experimental.UtilityClass; import org.apache.thrift.TSerializer; @@ -34,9 +34,13 @@ public static StatChargebackResponse createSearchChargebackRequiredResponse() { } public static StatPaymentResponse createSearchPaymentAllResponse() { - var payer = DamselUtil.fillRequiredTBaseObject(new CustomerPayer(), CustomerPayer.class); - payer.setPaymentTool(createBankCardPaymentTool()) - .setCustomerId(RandomUtil.randomString(3)); + var payer = DamselUtil.fillRequiredTBaseObject( + new PaymentResourcePayer(), + PaymentResourcePayer.class); + payer.setResource(new DisposablePaymentResource() + .setPaymentTool(createBankCardPaymentTool()) + .setPaymentSessionId(RandomUtil.randomString(3))) + .setContactInfo(DamselUtil.fillRequiredTBaseObject(new ContactInfo(), ContactInfo.class)); var payment = DamselUtil.fillRequiredTBaseObject(new StatPayment(), StatPayment.class); var status = new InvoicePaymentStatus(); status.setPending(new InvoicePaymentPending()); @@ -52,7 +56,7 @@ public static StatPaymentResponse createSearchPaymentAllResponse() { .setCart(cart.setLines(List.of(line))) .setFlow(InvoicePaymentFlow .instant(instant)) - .setPayer(Payer.customer(payer)))); + .setPayer(Payer.payment_resource(payer)))); } public static StatChargebackResponse createSearchChargebackAllResponse() {