diff --git a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/MultiCompanyService.java b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/MultiCompanyService.java index 95368d2a8..bac0bc4e9 100644 --- a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/MultiCompanyService.java +++ b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/MultiCompanyService.java @@ -193,13 +193,18 @@ public class MultiCompanyService } for (ClearingMemberCategoryNewRequest partRequest : req.getCategories()) { + boolean isCategoryForDeletion = Arrays.asList("CLOS", "SSPD").contains(partRequest.getWorkflowStatus()); ClearingMemberCategory existCategory = findCategory(partRequest); + if (isCategoryForDeletion && existCategory == null) { + log.debug("There is no category for deletion; do nothing..."); + continue; + } if (existCategory == null) { log.trace("For company[{}] do new category", companyId); replyI = clearingMemberCategoryService.clearingMemberCategoryNew(wrapRequest(baseRequest, partRequest, ActionType.NEW)); validateReply(companyId, "contactNew", replyI); } else { - if (Arrays.asList("CLOS", "SSPD").contains(partRequest.getWorkflowStatus())) { + if (isCategoryForDeletion) { log.trace("For company[{}] do delete category[{}]", companyId, existCategory.getId()); CommonDeleteRequest commonDeleteRequest = createDeleteRequest(existCategory); clearingMemberCategoryService.clearingMemberCategoryDelete(wrapRequest(baseRequest, commonDeleteRequest, ActionType.DELETE));