From a5338b63cb8cbd2580455de0fa0631a6c64fd599 Mon Sep 17 00:00:00 2001 From: ggmaleva Date: Thu, 27 Jun 2024 18:09:51 +0300 Subject: [PATCH] remove payout + bump java 17 --- .github/workflows/build.yml | 2 +- .github/workflows/deploy.yml | 2 +- pom.xml | 16 +- .../v2/api/ReportsApiDelegateService.java | 17 +- .../anapi/v2/api/SearchApiDelegate.java | 1 - .../v2/api/SearchApiDelegateService.java | 48 +---- .../ParamsToPayoutSearchQueryConverter.java | 39 ---- .../response/StatPayoutToPayoutConverter.java | 125 ------------ .../ParamsToStatReportRequestConverter.java | 4 +- .../ReporterResponseToReportConverter.java | 4 +- .../anapi/v2/service/MagistaService.java | 52 +---- .../anapi/v2/service/ReporterService.java | 12 +- src/main/resources/application.yml | 4 +- .../vality/anapi/v2/SearchPayoutsTest.java | 162 --------------- ...aramsToPayoutSearchQueryConverterTest.java | 38 ---- .../StatPayoutToPayoutConverterTest.java | 190 ------------------ .../vality/anapi/v2/testutil/MagistaUtil.java | 18 -- .../vality/anapi/v2/testutil/OpenApiUtil.java | 15 -- 18 files changed, 43 insertions(+), 706 deletions(-) delete mode 100644 src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverter.java delete mode 100644 src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverter.java delete mode 100644 src/test/java/dev/vality/anapi/v2/SearchPayoutsTest.java delete mode 100644 src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverterTest.java delete mode 100644 src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverterTest.java diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2cb3849a..c8aff365 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,4 +7,4 @@ on: jobs: build: - uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v1 + uses: valitydev/java-workflow/.github/workflows/maven-service-build.yml@v2 diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index d5fa3bc8..020a245a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -12,7 +12,7 @@ env: jobs: deploy: - uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v1 + uses: valitydev/java-workflow/.github/workflows/maven-service-deploy.yml@v2 secrets: github-token: ${{ secrets.GITHUB_TOKEN }} mm-webhook-url: ${{ secrets.MATTERMOST_WEBHOOK_URL }} diff --git a/pom.xml b/pom.xml index 46cfb4ae..e7350fbd 100644 --- a/pom.xml +++ b/pom.xml @@ -6,11 +6,11 @@ dev.vality service-parent-pom - 1.0.19 + 2.2.0 anapi-v2 - 1.0.4 + 1.1.0 jar anapi-v2 @@ -19,7 +19,7 @@ UTF-8 UTF-8 - 15 + 17 8022 8023 ${server.port} ${management.port} @@ -39,7 +39,7 @@ dev.vality swag-anapi-v2 - 1.81-8f1ba21-server + 1.86-0f6d0dc-server dev.vality @@ -51,11 +51,6 @@ org-management-proto 1.12-1a0110a - - dev.vality - payout-manager-proto - 1.38-635dc24 - dev.vality magista-proto @@ -83,7 +78,7 @@ dev.vality damsel - 1.614-3df747f + 1.639-4856124 dev.vality @@ -148,7 +143,6 @@ org.projectlombok lombok - provided javax.servlet diff --git a/src/main/java/dev/vality/anapi/v2/api/ReportsApiDelegateService.java b/src/main/java/dev/vality/anapi/v2/api/ReportsApiDelegateService.java index 86553606..21b6dd4f 100644 --- a/src/main/java/dev/vality/anapi/v2/api/ReportsApiDelegateService.java +++ b/src/main/java/dev/vality/anapi/v2/api/ReportsApiDelegateService.java @@ -1,14 +1,14 @@ package dev.vality.anapi.v2.api; import dev.vality.anapi.v2.converter.reporter.request.ParamsToStatReportRequestConverter; -import dev.vality.anapi.v2.model.InlineResponse20014; +import dev.vality.anapi.v2.model.InlineResponse20013; import dev.vality.anapi.v2.model.Report; import dev.vality.anapi.v2.model.ReportLink; import dev.vality.anapi.v2.security.AccessData; import dev.vality.anapi.v2.security.AccessService; import dev.vality.anapi.v2.service.ReporterService; -import dev.vality.geck.common.util.TypeUtil; import dev.vality.anapi.v2.util.DeadlineUtil; +import dev.vality.geck.common.util.TypeUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; @@ -27,6 +27,7 @@ @SuppressWarnings({"ParameterName"}) public class ReportsApiDelegateService implements ReportsApiDelegate { + public static final String RES_LOG_200 = "<- Res [200]: xRequestID={}"; private final AccessService accessService; private final ReporterService reporterService; @@ -83,7 +84,7 @@ public ResponseEntity downloadFile(String xRequestID, String partyID .build()); var response = reporterService.getDownloadUrl(fileID, TypeUtil.temporalToString(LocalDateTime.now().plus(reportLifetimeSec, ChronoUnit.SECONDS))); - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @@ -97,12 +98,12 @@ public ResponseEntity getReport(String xRequestID, String partyID, Long .reportId(String.valueOf(reportID)) .build()); var response = reporterService.getReport(reportID); - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @Override - public ResponseEntity searchReports(String xRequestID, String partyID, OffsetDateTime fromTime, + public ResponseEntity searchReports(String xRequestID, String partyID, OffsetDateTime fromTime, OffsetDateTime toTime, Integer limit, List reportTypes, String xRequestDeadline, String shopID, String paymentInstitutionRealm, @@ -115,16 +116,16 @@ public ResponseEntity searchReports(String xRequestID, Stri .shopIds(shopID == null ? null : List.of(shopID)) .realm(paymentInstitutionRealm) .build()); - InlineResponse20014 response; + InlineResponse20013 response; if (shopID == null || shopIDs.contains(shopID)) { var request = statReportRequestConverter.convert(partyID, shopID, fromTime, toTime, limit, reportTypes, continuationToken); response = reporterService.getReports(request); } else { - response = new InlineResponse20014(); + response = new InlineResponse20013(); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } diff --git a/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegate.java b/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegate.java index dfaba874..dde0c756 100644 --- a/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegate.java +++ b/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegate.java @@ -9,7 +9,6 @@ public interface SearchApiDelegate PaymentsApiDelegate, ChargebacksApiDelegate, InvoicesApiDelegate, - PayoutsApiDelegate, RefundsApiDelegate, InvoiceTemplatesApiDelegate { diff --git a/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegateService.java b/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegateService.java index be30c954..81a5987e 100644 --- a/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegateService.java +++ b/src/main/java/dev/vality/anapi/v2/api/SearchApiDelegateService.java @@ -21,13 +21,14 @@ @SuppressWarnings({"ParameterName", "LineLength"}) public class SearchApiDelegateService implements SearchApiDelegate { + public static final String RES_LOG_200 = "<- Res [200]: xRequestID={}"; + private final MagistaService magistaService; private final AccessService accessService; private final ParamsToInvoiceSearchQueryConverter invoiceSearchConverter; private final ParamsToPaymentSearchQueryConverter paymentSearchConverter; private final ParamsToRefundSearchQueryConverter refundSearchConverter; private final ParamsToChargebackSearchQueryConverter chargebackSearchConverter; - private final ParamsToPayoutSearchQueryConverter payoutSearchConverter; private final ParamsToInvoiceTemplateSearchQueryConverter invoiceTemplateSearchConverter; @Override @@ -59,7 +60,7 @@ public ResponseEntity searchInvoices(String xRequestID, Stri continuationToken); response = magistaService.searchInvoices(query); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @@ -106,7 +107,7 @@ public ResponseEntity searchPayments(String xRequestID, Stri continuationToken); response = magistaService.searchPayments(query); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @@ -139,7 +140,7 @@ public ResponseEntity searchRefunds(String xRequestID, Stri continuationToken); response = magistaService.searchRefunds(query); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @@ -172,41 +173,12 @@ public ResponseEntity searchChargebacks(String xRequestID, continuationToken); response = magistaService.searchChargebacks(query); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } @Override - public ResponseEntity searchPayouts(String xRequestID, String partyID, OffsetDateTime fromTime, OffsetDateTime toTime, Integer limit, String xRequestDeadline, String shopID, List shopIDs, String paymentInstitutionRealm, String payoutID, String payoutToolType, String continuationToken) { - DeadlineUtil.checkDeadline(xRequestDeadline, xRequestID); - shopIDs = accessService.getRestrictedShops( - AccessData.builder() - .operationId("SearchPayouts") - .partyId(partyID) - .shopIds(ConverterUtil.merge(shopID, shopIDs)) - .realm(paymentInstitutionRealm) - .build()); - InlineResponse20012 response; - if (shopIDs.isEmpty()) { - response = new InlineResponse20012(); - } else { - var query = payoutSearchConverter.convert( - partyID, - fromTime, - toTime, - limit, - shopIDs, - payoutID, - payoutToolType, - continuationToken); - response = magistaService.searchPayouts(query); - } - log.info("<- Res [200]: xRequestID={}", xRequestID); - return ResponseEntity.ok(response); - } - - @Override - public ResponseEntity searchInvoiceTemplates(String xRequestID, String partyID, OffsetDateTime fromTime, OffsetDateTime toTime, Integer limit, String xRequestDeadline, List shopIDs, String paymentInstitutionRealm, String invoiceTemplateID, String invoiceTemplateStatus, String name, String product, OffsetDateTime invoiceValidUntil, String continuationToken) { + public ResponseEntity searchInvoiceTemplates(String xRequestID, String partyID, OffsetDateTime fromTime, OffsetDateTime toTime, Integer limit, String xRequestDeadline, List shopIDs, String paymentInstitutionRealm, String invoiceTemplateID, String invoiceTemplateStatus, String name, String product, OffsetDateTime invoiceValidUntil, String continuationToken) { shopIDs = accessService.getRestrictedShops( AccessData.builder() .operationId("SearchInvoiceTemplates") @@ -215,9 +187,9 @@ public ResponseEntity searchInvoiceTemplates(String xReques .realm(paymentInstitutionRealm) .build()); DeadlineUtil.checkDeadline(xRequestDeadline, xRequestID); - InlineResponse20013 response; + InlineResponse20012 response; if (shopIDs.isEmpty()) { - response = new InlineResponse20013(); + response = new InlineResponse20012(); } else { var query = invoiceTemplateSearchConverter.convert( partyID, @@ -233,7 +205,7 @@ public ResponseEntity searchInvoiceTemplates(String xReques invoiceValidUntil); response = magistaService.searchInvoiceTemplates(query); } - log.info("<- Res [200]: xRequestID={}", xRequestID); + log.info(RES_LOG_200, xRequestID); return ResponseEntity.ok(response); } } diff --git a/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverter.java b/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverter.java deleted file mode 100644 index 94bd796b..00000000 --- a/src/main/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverter.java +++ /dev/null @@ -1,39 +0,0 @@ -package dev.vality.anapi.v2.converter.magista.request; - -import dev.vality.anapi.v2.exception.BadRequestException; -import dev.vality.anapi.v2.util.ConverterUtil; -import dev.vality.magista.PayoutSearchQuery; -import dev.vality.magista.PayoutToolType; -import org.springframework.stereotype.Component; - -import java.time.OffsetDateTime; -import java.util.List; - -@Component -public class ParamsToPayoutSearchQueryConverter { - - public PayoutSearchQuery convert(String partyID, - OffsetDateTime fromTime, - OffsetDateTime toTime, - Integer limit, - List shopIDs, - String payoutID, - String payoutToolType, - String continuationToken) { - return new PayoutSearchQuery() - .setCommonSearchQueryParams( - ConverterUtil.fillCommonParams(fromTime, toTime, limit, partyID, shopIDs, continuationToken)) - .setPayoutId(payoutID) - .setPayoutType(payoutToolType != null ? mapPayoutToolType(payoutToolType) : null); - } - - protected PayoutToolType mapPayoutToolType(String payoutToolType) { - return switch (payoutToolType) { - case "PayoutAccount" -> PayoutToolType.payout_account; - case "Wallet" -> PayoutToolType.wallet; - case "PaymentInstitutionAccount" -> PayoutToolType.payment_institution_account; - default -> throw new BadRequestException( - String.format("PayoutToolType %s cannot be processed", payoutToolType)); - }; - } -} diff --git a/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverter.java b/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverter.java deleted file mode 100644 index c217548e..00000000 --- a/src/main/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverter.java +++ /dev/null @@ -1,125 +0,0 @@ -package dev.vality.anapi.v2.converter.magista.response; - -import dev.vality.damsel.domain.CountryCode; -import dev.vality.damsel.domain.PayoutToolInfo; -import dev.vality.geck.common.util.TypeUtil; -import dev.vality.magista.PayoutStatus; -import dev.vality.magista.StatPayout; -import dev.vality.anapi.v2.model.*; -import org.springframework.stereotype.Component; - -import javax.annotation.Nullable; -import java.time.ZoneOffset; - -@Component -public class StatPayoutToPayoutConverter { - - public Payout convert(StatPayout payout) { - return new Payout() - .amount(payout.getAmount()) - .createdAt(TypeUtil.stringToInstant(payout.getCreatedAt()).atOffset(ZoneOffset.UTC)) - .currency(payout.getCurrencySymbolicCode()) - .fee(payout.getFee()) - .id(payout.getId()) - .payoutToolDetails(mapPayoutToolDetails(payout.getPayoutToolInfo())) - .shopID(payout.getShopId()) - .status(mapStatus(payout.getStatus())) - .cancellationDetails( - payout.getStatus().isSetCancelled() - ? payout.getStatus().getCancelled().getDetails() - : null); - } - - protected String mapStatus(PayoutStatus status) { - try { - var field = PayoutStatus._Fields.findByName(status.getSetField().getFieldName()); - return switch (field) { - case UNPAID -> "Unpaid"; - case PAID -> "Paid"; - case CANCELLED -> "Cancelled"; - case CONFIRMED -> "Confirmed"; - default -> throw new IllegalArgumentException(); - }; - } catch (Exception e) { - throw new IllegalArgumentException( - String.format("Payout status %s cannot be processed", status)); - } - } - - protected PayoutToolDetails mapPayoutToolDetails(PayoutToolInfo payoutToolInfo) { - try { - var field = PayoutToolInfo._Fields.findByName(payoutToolInfo.getSetField().getFieldName()); - switch (field) { - case RUSSIAN_BANK_ACCOUNT -> { - var account = payoutToolInfo.getRussianBankAccount(); - return new PayoutToolDetailsBankAccount() - .account(account.getAccount()) - .bankBik(account.getBankBik()) - .bankName(account.getBankName()) - .bankPostAccount(account.getBankPostAccount()) - .detailsType("PayoutToolDetailsBankAccount"); - } - case INTERNATIONAL_BANK_ACCOUNT -> { - var account = payoutToolInfo.getInternationalBankAccount(); - return new PayoutToolDetailsInternationalBankAccount() - .iban(account.getIban()) - .number(account.getNumber()) - .bankDetails(account.isSetBank() - ? new InternationalBankDetails() - .name(account.getBank().getName()) - .bic(account.getBank().getBic()) - .countryCode(mapCountryCode(account.getBank().getCountry())) - .address(account.getBank().getAddress()) - .abartn(account.getBank().getAbaRtn()) - : null) - .correspondentBankAccount( - mapInternationalCorrespondentBankAccount(account.getCorrespondentAccount())) - .detailsType("PayoutToolDetailsInternationalBankAccount"); - } - case WALLET_INFO -> { - return new PayoutToolDetailsWalletInfo() - .walletID(payoutToolInfo.getWalletInfo().getWalletId()) - .detailsType("PayoutToolDetailsWalletInfo"); - } - case PAYMENT_INSTITUTION_ACCOUNT -> { - return new PayoutToolDetailsPaymentInstitutionAccount() - .detailsType("PayoutToolDetailsPaymentInstitutionAccount"); - } - default -> throw new IllegalArgumentException(); - } - } catch (Exception e) { - throw new IllegalArgumentException( - String.format("PayoutToolInfo %s cannot be processed", payoutToolInfo)); - } - - } - - protected String mapCountryCode(@Nullable CountryCode countryCode) { - if (countryCode == null) { - return null; - } - return countryCode.name(); - } - - protected InternationalCorrespondentBankAccount mapInternationalCorrespondentBankAccount( - dev.vality.damsel.domain.InternationalBankAccount account) { - if (account == null) { - return null; - } - var details = account.getBank(); - return new InternationalCorrespondentBankAccount() - .bankDetails(details != null - ? new InternationalBankDetails() - .name(details.getName()) - .bic(details.getBic()) - .countryCode(details.getCountry().name()) - .address(details.getAddress()) - .abartn(details.getAbaRtn()) - : null) - .iban(account.getIban()) - .number(account.getNumber()) - .correspondentBankAccount(account.isSetCorrespondentAccount() - ? mapInternationalCorrespondentBankAccount(account.getCorrespondentAccount()) - : null); - } -} diff --git a/src/main/java/dev/vality/anapi/v2/converter/reporter/request/ParamsToStatReportRequestConverter.java b/src/main/java/dev/vality/anapi/v2/converter/reporter/request/ParamsToStatReportRequestConverter.java index 99429f00..e9b308e6 100644 --- a/src/main/java/dev/vality/anapi/v2/converter/reporter/request/ParamsToStatReportRequestConverter.java +++ b/src/main/java/dev/vality/anapi/v2/converter/reporter/request/ParamsToStatReportRequestConverter.java @@ -9,7 +9,6 @@ import java.time.OffsetDateTime; import java.time.format.DateTimeFormatter; import java.util.List; -import java.util.stream.Collectors; @Component public class ParamsToStatReportRequestConverter { @@ -39,13 +38,12 @@ public String mapReportType(String requestReportType) { return switch (inputType) { case PAYMENTREGISTRY -> "payment_registry"; case PROVISIONOFSERVICE -> "provision_of_service"; - case PAYMENTREGISTRYBYPAYOUT -> "payment_registry_by_payout"; default -> throw new IllegalArgumentException("Unknown report type: " + inputType.getValue()); }; } private List mapReportTypes(List requestReportTypes) { - return requestReportTypes.stream().map(this::mapReportType).collect(Collectors.toList()); + return requestReportTypes.stream().map(this::mapReportType).toList(); } } diff --git a/src/main/java/dev/vality/anapi/v2/converter/reporter/response/ReporterResponseToReportConverter.java b/src/main/java/dev/vality/anapi/v2/converter/reporter/response/ReporterResponseToReportConverter.java index 9b3e910e..10fae657 100644 --- a/src/main/java/dev/vality/anapi/v2/converter/reporter/response/ReporterResponseToReportConverter.java +++ b/src/main/java/dev/vality/anapi/v2/converter/reporter/response/ReporterResponseToReportConverter.java @@ -8,7 +8,6 @@ import java.time.ZoneOffset; import java.util.Collections; -import java.util.stream.Collectors; @Component public class ReporterResponseToReportConverter { @@ -31,14 +30,13 @@ public Report convert(dev.vality.reporter.Report response) { .signatures(new FileMetaSignatures() .md5(fileReporter.getSignature().getMd5()) .sha256(fileReporter.getSignature().getSha256()))) - .collect(Collectors.toList()) : Collections.emptyList()); + .toList() : Collections.emptyList()); } private Report.ReportTypeEnum mapReportType(String type) { return switch (type) { case "provision_of_service" -> Report.ReportTypeEnum.PROVISIONOFSERVICE; case "payment_registry" -> Report.ReportTypeEnum.PAYMENTREGISTRY; - case "payment_registry_by_payout" -> Report.ReportTypeEnum.PAYMENTREGISTRYBYPAYOUT; default -> throw new IllegalArgumentException("Unknown report type: " + type); }; } diff --git a/src/main/java/dev/vality/anapi/v2/service/MagistaService.java b/src/main/java/dev/vality/anapi/v2/service/MagistaService.java index f0c2d8c6..a818523c 100644 --- a/src/main/java/dev/vality/anapi/v2/service/MagistaService.java +++ b/src/main/java/dev/vality/anapi/v2/service/MagistaService.java @@ -10,8 +10,6 @@ import org.apache.thrift.TException; import org.springframework.stereotype.Service; -import java.util.stream.Collectors; - @Service @RequiredArgsConstructor public class MagistaService { @@ -20,7 +18,6 @@ public class MagistaService { private final StatPaymentToPaymentSearchResultConverter paymentResponseConverter; private final StatChargebackToChargebackConverter chargebackResponseConverter; private final StatInvoiceToInvoiceConverter invoiceResponseConverter; - private final StatPayoutToPayoutConverter payoutResponseConverter; private final StatRefundToRefundSearchResultConverter refundResponseConverter; private final StatInvoiceTemplateToInvoiceTemplateConverter invoiceTemplateResponseConverter; @@ -30,7 +27,7 @@ public InlineResponse2008 searchInvoices(InvoiceSearchQuery query) { return new InlineResponse2008() .result(magistaResponse.getInvoices().stream() .map(invoiceResponseConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(magistaResponse.getContinuationToken()); } catch (BadContinuationToken e) { var message = String.format( @@ -65,7 +62,7 @@ public InlineResponse2009 searchPayments(PaymentSearchQuery query) { return new InlineResponse2009() .result(magistaResponse.getPayments().stream() .map(paymentResponseConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(magistaResponse.getContinuationToken()); } catch (BadContinuationToken e) { var message = String.format( @@ -100,7 +97,7 @@ public InlineResponse20010 searchRefunds(RefundSearchQuery query) { return new InlineResponse20010() .result(magistaResponse.getRefunds().stream() .map(refundResponseConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(magistaResponse.getContinuationToken()); } catch (BadContinuationToken e) { var message = String.format( @@ -135,7 +132,7 @@ public InlineResponse20011 searchChargebacks(ChargebackSearchQuery query) { return new InlineResponse20011() .result(magistaResponse.getChargebacks().stream() .map(chargebackResponseConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(magistaResponse.getContinuationToken()); } catch (BadContinuationToken e) { var message = String.format( @@ -164,48 +161,13 @@ public InlineResponse20011 searchChargebacks(ChargebackSearchQuery query) { } } - public InlineResponse20012 searchPayouts(PayoutSearchQuery query) { - try { - StatPayoutResponse magistaResponse = magistaClient.searchPayouts(query); - return new InlineResponse20012() - .result(magistaResponse.getPayouts().stream() - .map(payoutResponseConverter::convert) - .collect(Collectors.toList())) - .continuationToken(magistaResponse.getContinuationToken()); - } catch (BadContinuationToken e) { - var message = String.format( - "Bad token exceeded, partyId=%s, payoutId=%s", - query.getCommonSearchQueryParams().getPartyId(), - query.getPayoutId()); - throw badContinuationTokenException(e, message); - } catch (LimitExceeded e) { - var message = String.format( - "Limit exceeded, partyId=%s, payoutId=%s", - query.getCommonSearchQueryParams().getPartyId(), - query.getPayoutId()); - throw limitExceededException(e, message); - } catch (InvalidRequest e) { - var message = String.format( - "Invalid request, partyId=%s, payoutId=%s, errors=%s", - query.getCommonSearchQueryParams().getPartyId(), - query.getPayoutId(), - String.join(", ", e.getErrors())); - throw invalidRequestException(e, message); - } catch (TException e) { - throw new MagistaException( - String.format("Error while call magistaClient.searchPayouts, partyId=%s, payoutId=%s", - query.getCommonSearchQueryParams().getPartyId(), query.getPayoutId()), - e); - } - } - - public InlineResponse20013 searchInvoiceTemplates(InvoiceTemplateSearchQuery query) { + public InlineResponse20012 searchInvoiceTemplates(InvoiceTemplateSearchQuery query) { try { StatInvoiceTemplateResponse magistaResponse = magistaClient.searchInvoiceTemplates(query); - return new InlineResponse20013() + return new InlineResponse20012() .result(magistaResponse.getInvoiceTemplates().stream() .map(invoiceTemplateResponseConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(magistaResponse.getContinuationToken()); } catch (BadContinuationToken e) { var message = String.format( diff --git a/src/main/java/dev/vality/anapi/v2/service/ReporterService.java b/src/main/java/dev/vality/anapi/v2/service/ReporterService.java index 68587250..c5a9ce0d 100644 --- a/src/main/java/dev/vality/anapi/v2/service/ReporterService.java +++ b/src/main/java/dev/vality/anapi/v2/service/ReporterService.java @@ -2,7 +2,9 @@ import dev.vality.anapi.v2.converter.reporter.response.ReporterResponseToReportConverter; import dev.vality.anapi.v2.exception.ReporterException; -import dev.vality.anapi.v2.model.*; +import dev.vality.anapi.v2.model.InlineResponse20013; +import dev.vality.anapi.v2.model.Report; +import dev.vality.anapi.v2.model.ReportLink; import dev.vality.reporter.ReportRequest; import dev.vality.reporter.ReportingSrv; import dev.vality.reporter.StatReportRequest; @@ -11,8 +13,6 @@ import org.apache.thrift.TException; import org.springframework.stereotype.Service; -import java.util.stream.Collectors; - @Slf4j @Service @RequiredArgsConstructor @@ -59,13 +59,13 @@ public Report getReport(long reportId) { } } - public InlineResponse20014 getReports(StatReportRequest request) { + public InlineResponse20013 getReports(StatReportRequest request) { try { var response = reporterClient.getReports(request); - return new InlineResponse20014() + return new InlineResponse20013() .result(response.getReports().stream() .map(reporterResponseToReportConverter::convert) - .collect(Collectors.toList())) + .toList()) .continuationToken(request.getContinuationToken()); } catch (TException e) { throw new ReporterException( diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 302f7c73..676f00db 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,9 +1,9 @@ server: - port: '@server.port@' + port: ${server.port} management: server: - port: '@management.port@' + port: ${management.port} metrics: export: prometheus: diff --git a/src/test/java/dev/vality/anapi/v2/SearchPayoutsTest.java b/src/test/java/dev/vality/anapi/v2/SearchPayoutsTest.java deleted file mode 100644 index 0d05e881..00000000 --- a/src/test/java/dev/vality/anapi/v2/SearchPayoutsTest.java +++ /dev/null @@ -1,162 +0,0 @@ -package dev.vality.anapi.v2; - -import dev.vality.anapi.v2.config.AbstractConfig; -import dev.vality.anapi.v2.model.DefaultLogicError; -import dev.vality.anapi.v2.testutil.MagistaUtil; -import dev.vality.anapi.v2.testutil.OpenApiUtil; -import dev.vality.bouncer.decisions.ArbiterSrv; -import dev.vality.damsel.vortigon.VortigonServiceSrv; -import dev.vality.magista.MerchantStatisticsServiceSrv; -import dev.vality.orgmanagement.AuthContextProviderSrv; -import dev.vality.token.keeper.TokenAuthenticatorSrv; -import lombok.SneakyThrows; -import org.apache.thrift.TException; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.mockito.MockitoAnnotations; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.mock.mockito.MockBean; -import org.springframework.http.MediaType; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.util.MultiValueMap; - -import java.time.Instant; -import java.time.temporal.ChronoUnit; -import java.util.List; - -import static dev.vality.anapi.v2.testutil.BouncerUtil.createContextFragment; -import static dev.vality.anapi.v2.testutil.BouncerUtil.createJudgementAllowed; -import static dev.vality.anapi.v2.testutil.TokenKeeperUtil.createAuthData; -import static java.util.UUID.randomUUID; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.*; -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; - -class SearchPayoutsTest extends AbstractConfig { - - @MockBean - public MerchantStatisticsServiceSrv.Iface magistaClient; - @MockBean - public VortigonServiceSrv.Iface vortigonClient; - @MockBean - public AuthContextProviderSrv.Iface orgManagerClient; - @MockBean - public ArbiterSrv.Iface bouncerClient; - @MockBean - public TokenAuthenticatorSrv.Iface tokenKeeperClient; - - @Autowired - private MockMvc mvc; - - private AutoCloseable mocks; - - private Object[] preparedMocks; - - @BeforeEach - public void init() { - mocks = MockitoAnnotations.openMocks(this); - preparedMocks = new Object[]{magistaClient, vortigonClient, orgManagerClient, bouncerClient, tokenKeeperClient}; - } - - @AfterEach - public void clean() throws Exception { - verifyNoMoreInteractions(preparedMocks); - mocks.close(); - } - - @Test - @SneakyThrows - void searchPayoutsRequiredParamsRequestSuccess() { - when(vortigonClient.getShopsIds(any(), any())).thenReturn(List.of("1", "2", "3")); - when(tokenKeeperClient.authenticate(any(), any())).thenReturn(createAuthData(generateSimpleJwt())); - when(orgManagerClient.getUserContext(any())).thenReturn(createContextFragment()); - when(bouncerClient.judge(any(), any())).thenReturn(createJudgementAllowed()); - when(magistaClient.searchPayouts(any())).thenReturn(MagistaUtil.createSearchPayoutRequiredResponse()); - mvc.perform(get("/lk/v2/payouts") - .header("Authorization", "Bearer " + generateSimpleJwt()) - .header("X-Request-ID", randomUUID()) - .header("X-Request-Deadline", Instant.now().plus(1, ChronoUnit.DAYS).toString()) - .params(OpenApiUtil.getSearchRequiredParams()) - .contentType(MediaType.APPLICATION_JSON_UTF8) - .content("")) - .andDo(print()) - .andExpect(status().is2xxSuccessful()) - .andExpect(jsonPath("$").exists()); - verify(vortigonClient, times(1)).getShopsIds(any(), any()); - verify(tokenKeeperClient, times(1)).authenticate(any(), any()); - verify(orgManagerClient, times(1)).getUserContext(any()); - verify(bouncerClient, times(1)).judge(any(), any()); - verify(magistaClient, times(1)).searchPayouts(any()); - } - - @Test - @SneakyThrows - void searchPayoutsAllParamsRequestSuccess() { - when(vortigonClient.getShopsIds(any(), any())).thenReturn(List.of("1", "2", "3")); - when(tokenKeeperClient.authenticate(any(), any())).thenReturn(createAuthData(generateSimpleJwt())); - when(orgManagerClient.getUserContext(any())).thenReturn(createContextFragment()); - when(bouncerClient.judge(any(), any())).thenReturn(createJudgementAllowed()); - when(magistaClient.searchPayouts(any())).thenReturn(MagistaUtil.createSearchPayoutAllResponse()); - mvc.perform(get("/lk/v2/payouts") - .header("Authorization", "Bearer " + generateSimpleJwt()) - .header("X-Request-ID", randomUUID()) - .header("X-Request-Deadline", Instant.now().plus(1, ChronoUnit.DAYS).toString()) - .params(OpenApiUtil.getSearchPayoutAllParams()) - .contentType(MediaType.APPLICATION_JSON_UTF8) - .content("")) - .andDo(print()) - .andExpect(status().is2xxSuccessful()) - .andExpect(jsonPath("$").exists()); - verify(vortigonClient, times(1)).getShopsIds(any(), any()); - verify(tokenKeeperClient, times(1)).authenticate(any(), any()); - verify(orgManagerClient, times(1)).getUserContext(any()); - verify(bouncerClient, times(1)).judge(any(), any()); - verify(magistaClient, times(1)).searchPayouts(any()); - } - - @Test - @SneakyThrows - void searchPayoutsRequestInvalid() { - MultiValueMap params = OpenApiUtil.getSearchRequiredParams(); - params.remove("partyID"); - mvc.perform(get("/lk/v2/payouts") - .header("Authorization", "Bearer " + generateSimpleJwt()) - .header("X-Request-ID", randomUUID()) - .header("X-Request-Deadline", Instant.now().plus(1, ChronoUnit.DAYS).toString()) - .params(params) - .contentType(MediaType.APPLICATION_JSON_UTF8) - .content("")) - .andDo(print()) - .andExpect(status().is4xxClientError()) - .andExpect(jsonPath("$.code").value(DefaultLogicError.CodeEnum.INVALIDREQUEST.getValue())) - .andExpect(jsonPath("$.message").isNotEmpty()); - } - - @Test - @SneakyThrows - void searchPayoutsRequestMagistaUnavailable() { - when(vortigonClient.getShopsIds(any(), any())).thenReturn(List.of("1", "2", "3")); - when(tokenKeeperClient.authenticate(any(), any())).thenReturn(createAuthData(generateSimpleJwt())); - when(orgManagerClient.getUserContext(any())).thenReturn(createContextFragment()); - when(bouncerClient.judge(any(), any())).thenReturn(createJudgementAllowed()); - when(magistaClient.searchPayouts(any())).thenThrow(TException.class); - mvc.perform(get("/lk/v2/payouts") - .header("Authorization", "Bearer " + generateSimpleJwt()) - .header("X-Request-ID", randomUUID()) - .header("X-Request-Deadline", Instant.now().plus(1, ChronoUnit.DAYS).toString()) - .params(OpenApiUtil.getSearchRequiredParams()) - .contentType(MediaType.APPLICATION_JSON_UTF8) - .content("")) - .andDo(print()) - .andExpect(status().is5xxServerError()); - verify(vortigonClient, times(1)).getShopsIds(any(), any()); - verify(tokenKeeperClient, times(1)).authenticate(any(), any()); - verify(orgManagerClient, times(1)).getUserContext(any()); - verify(bouncerClient, times(1)).judge(any(), any()); - verify(magistaClient, times(1)).searchPayouts(any()); - } -} diff --git a/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverterTest.java b/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverterTest.java deleted file mode 100644 index c18b69b1..00000000 --- a/src/test/java/dev/vality/anapi/v2/converter/magista/request/ParamsToPayoutSearchQueryConverterTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package dev.vality.anapi.v2.converter.magista.request; - -import dev.vality.anapi.v2.exception.BadRequestException; -import dev.vality.magista.PayoutSearchQuery; -import dev.vality.magista.PayoutToolType; -import org.junit.jupiter.api.Test; - -import java.time.OffsetDateTime; -import java.util.List; - -import static org.junit.jupiter.api.Assertions.*; - -class ParamsToPayoutSearchQueryConverterTest { - - private static final ParamsToPayoutSearchQueryConverter converter = new ParamsToPayoutSearchQueryConverter(); - - @Test - void convert() { - PayoutSearchQuery query = converter.convert("1", - OffsetDateTime.MIN, - OffsetDateTime.MAX, - 10, - List.of("1", "2", "3"), - "1", - "Wallet", - "test"); - assertNotNull(query); - } - - @Test - void mapPayoutToolType() { - assertEquals(PayoutToolType.payout_account, converter.mapPayoutToolType("PayoutAccount")); - assertEquals(PayoutToolType.wallet, converter.mapPayoutToolType("Wallet")); - assertEquals(PayoutToolType.payment_institution_account, - converter.mapPayoutToolType("PaymentInstitutionAccount")); - assertThrows(BadRequestException.class, () -> converter.mapPayoutToolType("unexpected")); - } -} \ No newline at end of file diff --git a/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverterTest.java b/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverterTest.java deleted file mode 100644 index 24266ed6..00000000 --- a/src/test/java/dev/vality/anapi/v2/converter/magista/response/StatPayoutToPayoutConverterTest.java +++ /dev/null @@ -1,190 +0,0 @@ -package dev.vality.anapi.v2.converter.magista.response; - -import dev.vality.anapi.v2.model.*; -import dev.vality.anapi.v2.testutil.MagistaUtil; -import dev.vality.anapi.v2.testutil.RandomUtil; -import dev.vality.damsel.domain.InternationalBankAccount; -import dev.vality.damsel.domain.InternationalBankDetails; -import dev.vality.damsel.domain.*; -import dev.vality.magista.*; -import org.junit.jupiter.api.Test; - -import static org.junit.jupiter.api.Assertions.*; - -class StatPayoutToPayoutConverterTest { - - private static final StatPayoutToPayoutConverter converter = new StatPayoutToPayoutConverter(); - - @Test - void convert() { - StatPayoutResponse magistaResponse = MagistaUtil.createSearchPayoutAllResponse(); - StatPayout magistaPayout = magistaResponse.getPayouts().get(0); - Payout result = converter.convert(magistaPayout); - assertAll( - () -> assertEquals(magistaPayout.getAmount(), result.getAmount()), - () -> assertEquals(magistaPayout.getCreatedAt(), result.getCreatedAt().toString()), - () -> assertEquals(magistaPayout.getCurrencySymbolicCode(), result.getCurrency()), - () -> assertEquals(magistaPayout.getFee(), result.getFee()), - () -> assertEquals(magistaPayout.getId(), result.getId()), - () -> assertEquals(magistaPayout.getShopId(), result.getShopID()) - ); - - } - - @Test - void mapPayoutStatus() { - assertAll( - () -> assertEquals("Cancelled", converter.mapStatus(PayoutStatus.cancelled(new PayoutCancelled()))), - () -> assertEquals("Paid", converter.mapStatus(PayoutStatus.paid(new PayoutPaid()))), - () -> assertEquals("Confirmed", converter.mapStatus(PayoutStatus.confirmed(new PayoutConfirmed()))), - () -> assertEquals("Unpaid", converter.mapStatus(PayoutStatus.unpaid(new PayoutUnpaid()))), - () -> assertThrows(IllegalArgumentException.class, () -> converter.mapStatus(new PayoutStatus())) - ); - } - - @Test - void mapPayoutToolDetails() { - //RussianBankAccount - PayoutToolInfo toolInfo = new PayoutToolInfo(); - toolInfo.setRussianBankAccount(new RussianBankAccount() - .setAccount(RandomUtil.randomString(10)) - .setBankBik(RandomUtil.randomString(10)) - .setBankName(RandomUtil.randomString(10)) - .setBankPostAccount(RandomUtil.randomString(10))); - - PayoutToolDetailsBankAccount actualRussianBankAccount = - (PayoutToolDetailsBankAccount) converter.mapPayoutToolDetails(toolInfo); - RussianBankAccount expectedRussianBankAccount = toolInfo.getRussianBankAccount(); - assertAll( - () -> assertEquals(expectedRussianBankAccount.getAccount(), actualRussianBankAccount.getAccount()), - () -> assertEquals(expectedRussianBankAccount.getBankBik(), actualRussianBankAccount.getBankBik()), - () -> assertEquals(expectedRussianBankAccount.getBankName(), actualRussianBankAccount.getBankName()), - () -> assertEquals(expectedRussianBankAccount.getBankPostAccount(), - actualRussianBankAccount.getBankPostAccount()) - ); - - //WalletInfo - toolInfo = new PayoutToolInfo(); - toolInfo.setWalletInfo(new WalletInfo() - .setWalletId(RandomUtil.randomString(10))); - - PayoutToolDetailsWalletInfo walletActual = - (PayoutToolDetailsWalletInfo) converter.mapPayoutToolDetails(toolInfo); - WalletInfo walletExpected = toolInfo.getWalletInfo(); - assertEquals(walletExpected.getWalletId(), walletActual.getWalletID()); - - //PaymentInstitutionAccount - toolInfo = new PayoutToolInfo(); - toolInfo.setPaymentInstitutionAccount(new PaymentInstitutionAccount()); - - PayoutToolDetailsPaymentInstitutionAccount actualPaymentInstitutionAccount = - (PayoutToolDetailsPaymentInstitutionAccount) converter.mapPayoutToolDetails(toolInfo); - PaymentInstitutionAccount expectedPaymentInstitutionAccount = toolInfo.getPaymentInstitutionAccount(); - assertNotNull(expectedPaymentInstitutionAccount); - - //InternationalBankAccount - toolInfo = new PayoutToolInfo(); - toolInfo.setInternationalBankAccount(new InternationalBankAccount() - .setAccountHolder(RandomUtil.randomString(10)) - .setIban(RandomUtil.randomString(10)) - .setNumber(RandomUtil.randomString(10)) - .setBank(new InternationalBankDetails() - .setName(RandomUtil.randomString(10)) - .setAbaRtn(RandomUtil.randomString(10)) - .setAddress(RandomUtil.randomString(10)) - .setBic(RandomUtil.randomString(10)) - .setCountry(CountryCode.ABW))); - - PayoutToolDetailsInternationalBankAccount actualInternationalBankAccount = - (PayoutToolDetailsInternationalBankAccount) converter.mapPayoutToolDetails(toolInfo); - InternationalBankAccount expectedInternationalBankAccount = toolInfo.getInternationalBankAccount(); - - assertAll( - () -> assertEquals(expectedInternationalBankAccount.getIban(), - actualInternationalBankAccount.getIban()), - () -> assertEquals(expectedInternationalBankAccount.getNumber(), - actualInternationalBankAccount.getNumber()), - () -> assertEquals(expectedInternationalBankAccount.getBank().getAbaRtn(), - actualInternationalBankAccount.getBankDetails().getAbartn()), - () -> assertEquals(expectedInternationalBankAccount.getBank().getAddress(), - actualInternationalBankAccount.getBankDetails().getAddress()), - () -> assertEquals(expectedInternationalBankAccount.getBank().getBic(), - actualInternationalBankAccount.getBankDetails().getBic()), - () -> assertEquals(expectedInternationalBankAccount.getBank().getName(), - actualInternationalBankAccount.getBankDetails().getName()), - () -> assertEquals(expectedInternationalBankAccount.getBank().getCountry().name(), - actualInternationalBankAccount.getBankDetails().getCountryCode()), - //tested via mapInternationalCorrespondentBankAccount test - () -> assertNull(actualInternationalBankAccount.getCorrespondentBankAccount()) - ); - - //Some missing type - assertThrows(IllegalArgumentException.class, () -> converter.mapPayoutToolDetails(new PayoutToolInfo())); - - } - - @Test - void mapCountryCode() { - CountryCode countryCode = CountryCode.ABH; - assertEquals("ABH", converter.mapCountryCode(countryCode)); - assertNull(converter.mapCountryCode(null)); - } - - @Test - void mapInternationalCorrespondentBankAccount() { - InternationalBankAccount expected = new InternationalBankAccount() - .setAccountHolder(RandomUtil.randomString(10)) - .setIban(RandomUtil.randomString(10)) - .setNumber(RandomUtil.randomString(10)) - .setBank(new InternationalBankDetails() - .setName(RandomUtil.randomString(10)) - .setAbaRtn(RandomUtil.randomString(10)) - .setAddress(RandomUtil.randomString(10)) - .setBic(RandomUtil.randomString(10)) - .setCountry(CountryCode.ABW)) - .setCorrespondentAccount(new InternationalBankAccount() - .setAccountHolder(RandomUtil.randomString(5)) - .setIban(RandomUtil.randomString(5)) - .setNumber(RandomUtil.randomString(5)) - .setBank(new InternationalBankDetails() - .setName(RandomUtil.randomString(5)) - .setAbaRtn(RandomUtil.randomString(5)) - .setAddress(RandomUtil.randomString(5)) - .setBic(RandomUtil.randomString(5)) - .setCountry(CountryCode.RUS))); - - InternationalCorrespondentBankAccount actual = converter.mapInternationalCorrespondentBankAccount(expected); - - assertAll( - () -> assertEquals(expected.getIban(), - actual.getIban()), - () -> assertEquals(expected.getNumber(), - actual.getNumber()), - () -> assertEquals(expected.getBank().getAbaRtn(), - actual.getBankDetails().getAbartn()), - () -> assertEquals(expected.getBank().getAddress(), - actual.getBankDetails().getAddress()), - () -> assertEquals(expected.getBank().getBic(), - actual.getBankDetails().getBic()), - () -> assertEquals(expected.getBank().getName(), - actual.getBankDetails().getName()), - () -> assertEquals(expected.getBank().getCountry().name(), - actual.getBankDetails().getCountryCode()), - () -> assertEquals(expected.getCorrespondentAccount().getIban(), - actual.getCorrespondentBankAccount().getIban()), - () -> assertEquals(expected.getCorrespondentAccount().getNumber(), - actual.getCorrespondentBankAccount().getNumber()), - () -> assertEquals(expected.getCorrespondentAccount().getBank().getAbaRtn(), - actual.getCorrespondentBankAccount().getBankDetails().getAbartn()), - () -> assertEquals(expected.getCorrespondentAccount().getBank().getAddress(), - actual.getCorrespondentBankAccount().getBankDetails().getAddress()), - () -> assertEquals(expected.getCorrespondentAccount().getBank().getBic(), - actual.getCorrespondentBankAccount().getBankDetails().getBic()), - () -> assertEquals(expected.getCorrespondentAccount().getBank().getName(), - actual.getCorrespondentBankAccount().getBankDetails().getName()), - () -> assertEquals(expected.getCorrespondentAccount().getBank().getCountry().name(), - actual.getCorrespondentBankAccount().getBankDetails().getCountryCode()), - () -> assertNull(actual.getCorrespondentBankAccount().getCorrespondentBankAccount()) - ); - } -} \ 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 9117454d..fdd9b272 100644 --- a/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java +++ b/src/test/java/dev/vality/anapi/v2/testutil/MagistaUtil.java @@ -113,24 +113,6 @@ public static StatInvoiceResponse createSearchInvoiceAllResponse() { ); } - public static StatPayoutResponse createSearchPayoutRequiredResponse() { - return DamselUtil.fillRequiredTBaseObject(new StatPayoutResponse(), StatPayoutResponse.class); - } - - public static StatPayoutResponse createSearchPayoutAllResponse() { - var payout = DamselUtil.fillRequiredTBaseObject(new StatPayout(), StatPayout.class); - var toolInfo = DamselUtil.fillRequiredTBaseObject(new PayoutToolInfo(), PayoutToolInfo.class); - var bank = DamselUtil.fillRequiredTBaseObject(new RussianBankAccount(), RussianBankAccount.class); - var status = DamselUtil.fillRequiredTBaseObject(new PayoutStatus(), PayoutStatus.class); - var response = DamselUtil.fillRequiredTBaseObject(new StatPayoutResponse(), StatPayoutResponse.class); - toolInfo.setRussianBankAccount(bank); - return response.setPayouts( - List.of(payout - .setPayoutToolInfo(toolInfo) - .setStatus(status)) - ); - } - public static StatInvoiceTemplateResponse createSearchInvoiceTemplateAllResponse() { var invoiceTemplate = DamselUtil.fillRequiredTBaseObject(new StatInvoiceTemplate(), StatInvoiceTemplate.class); var cash = DamselUtil.fillRequiredTBaseObject(new Cash(), Cash.class); diff --git a/src/test/java/dev/vality/anapi/v2/testutil/OpenApiUtil.java b/src/test/java/dev/vality/anapi/v2/testutil/OpenApiUtil.java index 9ceb2d32..ff87ccf1 100644 --- a/src/test/java/dev/vality/anapi/v2/testutil/OpenApiUtil.java +++ b/src/test/java/dev/vality/anapi/v2/testutil/OpenApiUtil.java @@ -111,21 +111,6 @@ public static MultiValueMap getSearchInvoiceAllParams() { return params; } - public static MultiValueMap getSearchPayoutAllParams() { - MultiValueMap params = getSearchRequiredParams(); - params.add("shopID", randomIntegerAsString(1, 3)); - params.add("shopIDs", randomIntegerAsString(11, 20)); - params.add("shopIDs", randomIntegerAsString(21, 30)); - params.add("paymentInstitutionRealm", PaymentInstitutionRealm.live.name()); - params.add("offset", randomIntegerAsString(1, 10)); - params.add("payoutID", randomIntegerAsString(1, 1000)); - params.add("payoutToolType", "PayoutAccount"); - params.add("excludedShops", randomIntegerAsString(1, 10)); - params.add("excludedShops", randomIntegerAsString(11, 20)); - params.add("continuationToken", "test"); - return params; - } - public static MultiValueMap getAnalyticsRequiredParams() { MultiValueMap params = new LinkedMultiValueMap<>(); params.add("partyID", randomIntegerAsString(1, 1000));