From 6ad105d04a3caf9519e7b584ca6ee270caa75867 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Fri, 26 May 2023 16:13:48 +0300 Subject: [PATCH] company-service http://jira.mfd.msk:8088/browse/CLS-284 hot fix relation NPE --- .../company/service/RelationService.java | 32 +++++++++++-------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/RelationService.java b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/RelationService.java index 1e206c19f..491107d32 100644 --- a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/RelationService.java +++ b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/RelationService.java @@ -287,20 +287,24 @@ public class RelationService extends QueueConsumer implements InitializingBean { ClearingMemberCategory clearingMemberCategory = transaction.getImdg(IMDGDistributedNames.Map_ClearingMemberCategory, ClearingMemberCategory.class).getSingleObjectByFieldValues(Map.of("companyId", companyId)); WorkflowStatus workflowStatus = getEnumByKey(WorkflowStatus.class, company.getWorkflowStatus()); - ClearingCategory clearingCategory = getEnumByKey(ClearingCategory.class, clearingMemberCategory.getClearingMemberCategory()); - String serviceStatus; - switch (Objects.requireNonNull(clearingCategory)) { - case B: - case I: - case V: - serviceStatus = MKR.getKey(); - break; - case C: - case F: - serviceStatus = FOND.getKey(); - break; - default: - throw new IllegalStateException("Illegal state of clearingCategory"); + String serviceStatus = null; + if (clearingMemberCategory == null) { + log.debug("clearingMemberCategory not found for companyId={}", companyId); + } else { + ClearingCategory clearingCategory = getEnumByKey(ClearingCategory.class, clearingMemberCategory.getClearingMemberCategory()); + switch (Objects.requireNonNull(clearingCategory)) { + case B: + case I: + case V: + serviceStatus = MKR.getKey(); + break; + case C: + case F: + serviceStatus = FOND.getKey(); + break; + default: + throw new IllegalStateException("Illegal state of clearingCategory"); + } } relation.setCreated(Instant.now());