diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/SdfCreatorBySTLDPayment.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/SdfCreatorBySTLDPayment.java index 3d3295909..ebf91a6fe 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/SdfCreatorBySTLDPayment.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/SdfCreatorBySTLDPayment.java @@ -181,6 +181,11 @@ public class SdfCreatorBySTLDPayment { ClearingCategory getClearingCategory(PaymentInstruction paymentInstruction) { ClearingMemberCategory category = clearingMemberCategoryImdg.getSingleObjectByFieldValues( Map.of("companyId", paymentInstruction.getSenderId())); + if (category == null) { + log.error("ClearingMemberCategory not found by paymentInstruction[{}].companyId={}", + paymentInstruction.getId(), paymentInstruction.getSenderId()); + return null; + } return IEnumKey.getEnumByKeyOrUndefined(ClearingCategory.class, category.getClearingMemberCategory()); } diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/builder/LiabilitiesClaimsMoneyCreator.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/builder/LiabilitiesClaimsMoneyCreator.java index 7801e7bf8..2cf8fbd81 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/builder/LiabilitiesClaimsMoneyCreator.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/builder/LiabilitiesClaimsMoneyCreator.java @@ -49,9 +49,9 @@ public class LiabilitiesClaimsMoneyCreator { lcm.setAccountType(lca.getAccountType()); lcm.setAccount(lca.getAccount()); if (category.equals(ClearingCategory.I) || category.equals(ClearingCategory.V)) { - lcm.setLiabilitiesAmount(lca.getLiabilitiesQuantity()); + lcm.setLiabilitiesAmount(safeBD(lca.getLiabilitiesQuantity())); } else if (category.equals(ClearingCategory.B)) { - lcm.setClaimsAmount(lca.getClaimsQuantity()); + lcm.setClaimsAmount(safeBD(lca.getClaimsQuantity())); } lcm.setSettlementDate(lca.getSettlementDate()); lcm.setTradingDate(lca.getTradingDate()); @@ -77,9 +77,9 @@ public class LiabilitiesClaimsMoneyCreator { lcm.setAccountType(lca.getAccountType()); lcm.setAccount(lca.getAccount()); if (category.equals(ClearingCategory.I) || category.equals(ClearingCategory.V)) { - lcm.setClaimsAmount(lca.getClaimsQuantity()); + lcm.setClaimsAmount(safeBD(lca.getClaimsQuantity())); } else if (category.equals(ClearingCategory.B)) { - lcm.setLiabilitiesAmount(lca.getLiabilitiesQuantity()); + lcm.setLiabilitiesAmount(safeBD(lca.getLiabilitiesQuantity())); } lcm.setSettlementDate(lca.getRefundDate()); lcm.setTradingDate(lca.getTradingDate());