etreschenkov 2025-10-17 13:12:52 +03:00
parent e4fc5bbedd
commit ddd500e26f
4 changed files with 29 additions and 5 deletions

View file

@ -160,7 +160,7 @@ public class ClearingMemberCategoryService extends QueueConsumer implements Init
return null; return null;
} }
private RequestInfoUpdate clearingMemberCategoryDelete(BaseRequest<CommonDeleteRequest> userRequest) { public RequestInfoUpdate clearingMemberCategoryDelete(BaseRequest<CommonDeleteRequest> userRequest) {
CommonDeleteRequest req = userRequest.getRequestPayload(); CommonDeleteRequest req = userRequest.getRequestPayload();
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest); RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);

View file

@ -18,6 +18,7 @@ import ru.spcex.clearing.platform.messaging.domain.ActionType;
import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
import ru.spcex.clearing.platform.messaging.domain.Consts; import ru.spcex.clearing.platform.messaging.domain.Consts;
import ru.spcex.clearing.platform.messaging.domain.cud.account.ClientCodeNewRequest; import ru.spcex.clearing.platform.messaging.domain.cud.account.ClientCodeNewRequest;
import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest;
import ru.spcex.clearing.platform.messaging.domain.cud.company.*; import ru.spcex.clearing.platform.messaging.domain.cud.company.*;
import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate; import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
@ -198,10 +199,16 @@ public class MultiCompanyService
replyI = clearingMemberCategoryService.clearingMemberCategoryNew(wrapRequest(baseRequest, partRequest, ActionType.NEW)); replyI = clearingMemberCategoryService.clearingMemberCategoryNew(wrapRequest(baseRequest, partRequest, ActionType.NEW));
validateReply(companyId, "contactNew", replyI); validateReply(companyId, "contactNew", replyI);
} else { } else {
log.trace("For company[{}] do update category[{}]", companyId, existCategory.getId()); if (Arrays.asList("CLOS", "SSPD").contains(partRequest.getWorkflowStatus())) {
ClearingMemberCategoryUpdateRequest partUpdateRequest = createUpdateRequest(existCategory, partRequest); log.trace("For company[{}] do delete category[{}]", companyId, existCategory.getId());
replyI = clearingMemberCategoryService.clearingMemberCategoryUpdate(wrapRequest(baseRequest, partUpdateRequest, ActionType.UPDATE)); CommonDeleteRequest commonDeleteRequest = createDeleteRequest(existCategory);
validateReply(companyId, "categoryUpdate", replyI); clearingMemberCategoryService.clearingMemberCategoryDelete(wrapRequest(baseRequest, commonDeleteRequest, ActionType.DELETE));
} else {
log.trace("For company[{}] do update category[{}]", companyId, existCategory.getId());
ClearingMemberCategoryUpdateRequest partUpdateRequest = createUpdateRequest(existCategory, partRequest);
replyI = clearingMemberCategoryService.clearingMemberCategoryUpdate(wrapRequest(baseRequest, partUpdateRequest, ActionType.UPDATE));
validateReply(companyId, "categoryUpdate", replyI);
}
} }
} }
txOk = true; txOk = true;
@ -335,6 +342,12 @@ public class MultiCompanyService
return r; return r;
} }
CommonDeleteRequest createDeleteRequest(ClearingMemberCategory existCategory) {
CommonDeleteRequest commonDeleteRequest = new CommonDeleteRequest();
commonDeleteRequest.setId(existCategory.getId());
return commonDeleteRequest;
}
Long getCompanyIdForCompanySymbols(String uuid, CompanyNewRequest cnr, Collection<CompanySymbolNewRequest> companySymbols) { Long getCompanyIdForCompanySymbols(String uuid, CompanyNewRequest cnr, Collection<CompanySymbolNewRequest> companySymbols) {
CompanySymbols companySymbol = null; CompanySymbols companySymbol = null;
if (StringUtils.isNotEmpty(uuid)) { if (StringUtils.isNotEmpty(uuid)) {

View file

@ -131,6 +131,7 @@ public class CompanyRequestAdapter {
public ClearingMemberCategoryNewRequest toCategoryRequest(CompanyClearingCategory companyClearingCategory) { public ClearingMemberCategoryNewRequest toCategoryRequest(CompanyClearingCategory companyClearingCategory) {
ClearingMemberCategoryNewRequest categoryNewRequest = new ClearingMemberCategoryNewRequest(); ClearingMemberCategoryNewRequest categoryNewRequest = new ClearingMemberCategoryNewRequest();
categoryNewRequest.setClearingMemberCategory(companyClearingCategory.getCategory()); categoryNewRequest.setClearingMemberCategory(companyClearingCategory.getCategory());
categoryNewRequest.setWorkflowStatus(companyClearingCategory.getWorkflowStatus());
return categoryNewRequest; return categoryNewRequest;
} }
} }

View file

@ -7,6 +7,8 @@ public class ClearingMemberCategoryNewRequest {
private String clearingMemberCategory; private String clearingMemberCategory;
@JsonProperty @JsonProperty
private Long companyId; private Long companyId;
@JsonProperty
private String workflowStatus;
public Long getCompanyId() { public Long getCompanyId() {
return companyId; return companyId;
@ -23,4 +25,12 @@ public class ClearingMemberCategoryNewRequest {
public void setClearingMemberCategory(String clearingMemberCategory) { public void setClearingMemberCategory(String clearingMemberCategory) {
this.clearingMemberCategory = clearingMemberCategory; this.clearingMemberCategory = clearingMemberCategory;
} }
public String getWorkflowStatus() {
return workflowStatus;
}
public void setWorkflowStatus(String workflowStatus) {
this.workflowStatus = workflowStatus;
}
} }