From d2b69ef2f71eb93a1e97e1dfc1f68f9072ae5982 Mon Sep 17 00:00:00 2001 From: vananiev Date: Tue, 5 Nov 2024 23:28:33 +0300 Subject: [PATCH] revert uralsib CouponAmortizationRedemptionTable logic --- .../uralsib/CouponAmortizationRedemptionTable.java | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/src/main/java/ru/investbook/parser/uralsib/CouponAmortizationRedemptionTable.java b/src/main/java/ru/investbook/parser/uralsib/CouponAmortizationRedemptionTable.java index 1a0f7233..e9c89193 100644 --- a/src/main/java/ru/investbook/parser/uralsib/CouponAmortizationRedemptionTable.java +++ b/src/main/java/ru/investbook/parser/uralsib/CouponAmortizationRedemptionTable.java @@ -56,7 +56,7 @@ public CouponAmortizationRedemptionTable(UralsibBrokerReport report, protected Collection parseRowToCollection(TableRow row) { @Nullable CashFlowType event; String action = row.getStringCellValue(OPERATION); - action = String.valueOf(action).toLowerCase().trim(); + action = action.toLowerCase().trim(); if (action.equalsIgnoreCase("погашение купона")) { event = CashFlowType.COUPON; } else if (action.equalsIgnoreCase("погашение номинала")) { // и амортизация и погашение @@ -70,7 +70,7 @@ protected Collection parseRowToCollection(TableRow row) { Instant timestamp = convertToInstant(row.getStringCellValue(DATE)); if (event == null) { - if (isRedemption(security.getName(), timestamp)) { + if (isRedemption(requireNonNull(security.getName()), timestamp)) { event = CashFlowType.REDEMPTION; } else { event = CashFlowType.AMORTIZATION; @@ -100,10 +100,7 @@ protected Collection parseRowToCollection(TableRow row) { return data; } - private boolean isRedemption(@Nullable String securityName, Instant amortizationDay) { - if (isNull(securityName)) { - return false; - } + private boolean isRedemption(String securityName, Instant amortizationDay) { @Nullable LocalDate redemptionDate = redemptionDates.stream() .filter(e -> securityName.equalsIgnoreCase(e.getKey())) .map(Map.Entry::getValue) @@ -112,9 +109,4 @@ private boolean isRedemption(@Nullable String securityName, Instant amortization .orElse(null); return nonNull(redemptionDate) && redemptionDate.equals(LocalDate.ofInstant(amortizationDay, getReport().getReportZoneId())); } - - protected BigDecimal getTax(Table table, TableRow row) { - // информация о налоге по купонам облигаций не выводится в отчет брокера - return BigDecimal.ZERO; - } }