From a63782a57b168a88bbeda848bdb5c638318c609f Mon Sep 17 00:00:00 2001 From: ialbert Date: Sun, 9 Jul 2023 15:21:05 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B7=D0=B0=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20statement#contract?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/executors/Sdf57Executor.java | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java index 3c1b4c3d0..af91940df 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java @@ -177,8 +177,6 @@ public class Sdf57Executor extends AbstractExecutor { Statement stmt = stmtCmpAcc.statement(); Company company = stmtCmpAcc.company(); Account account = stmtCmpAcc.account(); - if (account == null) - return; Optional err = validateActiveness(company, account); if (err.isEmpty()) { Optional amtFound = RegistrySearch.builder(registryImdg) @@ -593,7 +591,7 @@ public class Sdf57Executor extends AbstractExecutor { return comment.replaceAll("\\s+", ""); } - private String getContractFromSpecif(String specif) { + private static String getContractFromSpecif(String specif) { if (specif == null) { return null; } @@ -601,7 +599,23 @@ public class Sdf57Executor extends AbstractExecutor { if (index == -1) { return null; } - return specif.substring(index + 1).replaceAll("\\s+", ""); + StringBuilder buffer = new StringBuilder(); + String afterN = specif.substring(index + 1); + int countSlashes = 0; + for(int i = 0; i < afterN.length(); i++) { + char c = afterN.charAt(i); + if (!Character.isWhitespace(c)) { + buffer.append(c); + if (c == '/') { + countSlashes++; + } + } else { + if (countSlashes == 3) { + break; + } + } + } + return buffer.toString(); } @FunctionalInterface