securities-service http://jira.mfd.msk:8088/browse/CLS-325 http://jira.mfd.msk:8088/browse/CLS-326 Листинг. todo валидацию.
This commit is contained in:
parent
a289ed3672
commit
fbda04082a
4 changed files with 255 additions and 58 deletions
|
|
@ -100,12 +100,12 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
|
||||||
try {
|
try {
|
||||||
transaction.beginTransaction();
|
transaction.beginTransaction();
|
||||||
Imdg<EquitySecurity> equityImdg = transaction.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class);
|
Imdg<EquitySecurity> equityImdg = transaction.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class);
|
||||||
Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
// Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
//одним скопом выполняем реквест
|
//одним скопом выполняем реквест
|
||||||
equityImdg.insert(equity);
|
equityImdg.insert(equity);
|
||||||
Listing listing = ListingBuilder.builder()
|
// Listing listing = ListingBuilder.builder()
|
||||||
.append(equity).append(req).build();
|
// .append(equity).append(req).build();
|
||||||
listingMap.insert(listing);
|
// listingMap.insert(listing);
|
||||||
//и сохраняем обновленный
|
//и сохраняем обновленный
|
||||||
// reqInfoMap.insert(reqInfo);
|
// reqInfoMap.insert(reqInfo);
|
||||||
transaction.commitTransaction();
|
transaction.commitTransaction();
|
||||||
|
|
@ -144,13 +144,13 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
|
||||||
equity.setInstrumentType(req.getInstrumentType());
|
equity.setInstrumentType(req.getInstrumentType());
|
||||||
|
|
||||||
equitySecurityImdg.update(equity);
|
equitySecurityImdg.update(equity);
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
// log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing = updateListingByEquity(equity, listing);
|
// listing = updateListingByEquity(equity, listing);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -170,14 +170,14 @@ public class EquitySecurityService extends QueueConsumer implements Initializing
|
||||||
equity.setUpdated(updateTime);
|
equity.setUpdated(updateTime);
|
||||||
equitySecurityImdg.update(equity);
|
equitySecurityImdg.update(equity);
|
||||||
|
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
// log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
// listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
||||||
listing.setUpdated(updateTime);
|
// listing.setUpdated(updateTime);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -104,12 +104,12 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
|
||||||
try {
|
try {
|
||||||
transaction.beginTransaction();
|
transaction.beginTransaction();
|
||||||
Imdg<FixedIncomeSecurity> fixedIncomeImdg = transaction.getImdg(IMDGDistributedNames.Map_FixedIncomeSecurity, FixedIncomeSecurity.class);
|
Imdg<FixedIncomeSecurity> fixedIncomeImdg = transaction.getImdg(IMDGDistributedNames.Map_FixedIncomeSecurity, FixedIncomeSecurity.class);
|
||||||
Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
// Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
//одним скопом выполняем реквест
|
//одним скопом выполняем реквест
|
||||||
fixedIncomeImdg.insert(fixedIncome);
|
fixedIncomeImdg.insert(fixedIncome);
|
||||||
Listing listing = ListingBuilder.builder()
|
// Listing listing = ListingBuilder.builder()
|
||||||
.append(fixedIncome).append(req).build();
|
// .append(fixedIncome).append(req).build();
|
||||||
listingMap.insert(listing);
|
// listingMap.insert(listing);
|
||||||
//и сохраняем обновленный
|
//и сохраняем обновленный
|
||||||
// reqInfoMap.insert(reqInfo);
|
// reqInfoMap.insert(reqInfo);
|
||||||
transaction.commitTransaction();
|
transaction.commitTransaction();
|
||||||
|
|
@ -154,13 +154,13 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
|
||||||
fixedIncome.setSecurityId(fixedIncome.getId());
|
fixedIncome.setSecurityId(fixedIncome.getId());
|
||||||
|
|
||||||
fixedIncomeSecurityImdg.update(fixedIncome);
|
fixedIncomeSecurityImdg.update(fixedIncome);
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", fixedIncome.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", fixedIncome.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("updateFixedIncome id {} couldn't find listing with securityId {}", req.getId(), fixedIncome.getId());
|
// log.error("updateFixedIncome id {} couldn't find listing with securityId {}", req.getId(), fixedIncome.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing = updateListingByFixedIncome(fixedIncome, listing);
|
// listing = updateListingByFixedIncome(fixedIncome, listing);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -180,14 +180,14 @@ public class FixedIncomeSecurityService extends QueueConsumer implements Initial
|
||||||
equity.setUpdated(updateTime);
|
equity.setUpdated(updateTime);
|
||||||
fixedIncomeSecurityImdg.update(equity);
|
fixedIncomeSecurityImdg.update(equity);
|
||||||
|
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", equity.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
// log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), equity.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
// listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
||||||
listing.setUpdated(updateTime);
|
// listing.setUpdated(updateTime);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,199 @@
|
||||||
|
package ru.spcex.clearing.securities.service.cud;
|
||||||
|
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.apache.kafka.clients.consumer.Consumer;
|
||||||
|
import org.apache.kafka.clients.producer.Producer;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.InitializingBean;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
|
||||||
|
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
|
||||||
|
import ru.clearing.classes.statics.data.misc.Listing;
|
||||||
|
import ru.clearing.classes.statics.data.security.MoneyMarketSecurity;
|
||||||
|
import ru.clearing.classes.statics.data.security.Security;
|
||||||
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.ListingNewRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.ListingUpdateRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||||
|
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||||
|
import ru.spcex.clearing.securities.validation.ValidationProvider;
|
||||||
|
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
|
import ru.spcex.clearing.validation.common.ValidationHelper;
|
||||||
|
import ru.spcex.platform.enumeration.UserRole;
|
||||||
|
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||||
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgId;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgTransaction;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class ListingService extends QueueConsumer implements InitializingBean {
|
||||||
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
private final Imdg<FixedIncomeSecurity> fixedIncomeSecurityImdg;
|
||||||
|
private final Imdg<MoneyMarketSecurity> moneyMarketSecurityImdg;
|
||||||
|
private final Imdg<EquitySecurity> equitySecurity;
|
||||||
|
|
||||||
|
private final Imdg<Listing> listingImdg;
|
||||||
|
private final ImdgProvider imdgProvider;
|
||||||
|
private final ImdgId idGenerator;
|
||||||
|
private final ValidationProvider validation;
|
||||||
|
private final UserRoleVerification userRoleVerification;
|
||||||
|
private final ValidationHelper validationHelper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public ListingService(Consumer<String, Object> kafkaQueue,
|
||||||
|
Producer<String, Object> kafkaProducer,
|
||||||
|
ImdgProvider imdgProvider,
|
||||||
|
ValidationProvider validation,
|
||||||
|
UserRoleVerification userRoleVerification,
|
||||||
|
ValidationHelper validationHelper) {
|
||||||
|
super(kafkaQueue, kafkaProducer);
|
||||||
|
this.validation = validation;
|
||||||
|
this.fixedIncomeSecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_FixedIncomeSecurity, FixedIncomeSecurity.class);
|
||||||
|
this.moneyMarketSecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class);
|
||||||
|
this.equitySecurity = imdgProvider.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class);
|
||||||
|
this.listingImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
|
this.imdgProvider = imdgProvider;
|
||||||
|
this.idGenerator = imdgProvider.getImdgIdGenerator();
|
||||||
|
this.userRoleVerification = userRoleVerification.setRoleForVerification(UserRole.Admin);
|
||||||
|
this.validationHelper = validationHelper;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void afterPropertiesSet() {
|
||||||
|
callback(ListingNewRequest.class)
|
||||||
|
.setFunction(this::newListing)
|
||||||
|
.forDestination(Consts.LISTING_NEW, callbacks::put);
|
||||||
|
callback(ListingUpdateRequest.class)
|
||||||
|
.setFunction(this::updateListing)
|
||||||
|
.forDestination(Consts.LISTING_UPDATE, callbacks::put);
|
||||||
|
callback(CommonDeleteRequest.class)
|
||||||
|
.setFunction(this::deleteListing)
|
||||||
|
.forDestination(Consts.LISTING_DELETE, callbacks::put);
|
||||||
|
imdgProvider.waitAvailable();
|
||||||
|
init();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Security selectSecurityById(Long securityId) {
|
||||||
|
Security security = fixedIncomeSecurityImdg.getSingleObjectByID(securityId);
|
||||||
|
if (security != null) return security;
|
||||||
|
security = moneyMarketSecurityImdg.getSingleObjectByID(securityId);
|
||||||
|
if (security != null) return security;
|
||||||
|
security = equitySecurity.getSingleObjectByID(securityId);
|
||||||
|
if (security != null) return security;
|
||||||
|
|
||||||
|
return security;
|
||||||
|
}
|
||||||
|
|
||||||
|
private RequestInfoUpdate newListing(BaseRequest<ListingNewRequest> userRequest) {
|
||||||
|
ImdgTransaction transaction = imdgProvider.newTransaction();
|
||||||
|
ListingNewRequest req = userRequest.getRequestPayload();
|
||||||
|
|
||||||
|
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||||
|
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
// RequestInfoUpdate requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.listingNewValidator());
|
||||||
|
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
/*
|
||||||
|
todo
|
||||||
|
3. Проверяем значения полученных параметров:
|
||||||
|
3.1. Необходимо выполнить ряд проверок, стандартных для всех методов (проверка на обязательность параметров исключена).
|
||||||
|
3.2. Проверить, что в таблице security есть инструмент, для которого нужно добавить листинг по security.id = securityId из очереди. Если такой записи нет, вернуть ошибку (1011) «Инструмент %s не найден».
|
||||||
|
3.3. Проверить, что в таблице security тип инструмента instrumentType ≠ RATE (см. справочник instrumentType). Если тип инструмента другой, вернуть ошибку (1021) «Информиция об инструментах Денежного рынка на режимах добавляется автоматически».
|
||||||
|
3.4. Проверить, что в таблице market есть режим, с которым нужно добавить листинг по market.code = market из очереди. Если такой записи нет, вернуть ошибку (1020) «Режим %s не найден».
|
||||||
|
3.5. Проверить, что еще нет такой же записи в таблице listing по ключу securityId И market И со статусом listing.workflowStatus=ACTV (см. справочник workflowStatus). Если запись существует, вернуть ошибку (1017) «Инструмент на режиме %s уже существует».
|
||||||
|
*/
|
||||||
|
|
||||||
|
log.debug("newListing received");
|
||||||
|
|
||||||
|
Security security = selectSecurityById(req.getSecurityId());
|
||||||
|
if (security == null) {
|
||||||
|
log.error("Security not found {}", req.getSecurityId());
|
||||||
|
//return validationHelper.getMessageResolver()
|
||||||
|
//todo error!
|
||||||
|
}
|
||||||
|
|
||||||
|
Listing listing = new Listing();
|
||||||
|
listing.setId(idGenerator.nextId());
|
||||||
|
listing.setCreated(Instant.now());
|
||||||
|
listing.setUpdated(listing.getCreated());
|
||||||
|
listing.setSecurityId(req.getSecurityId());
|
||||||
|
listing.setMarket(req.getMarket());
|
||||||
|
listing.setLotSize(req.getLotSize());
|
||||||
|
listing.setSymbolCode(security.getSecuritySymbol()); // listing.setSymbolCode(req.getSymbolCode());
|
||||||
|
listing.setSymbolName(security.getFullName()); // req.getSymbolName
|
||||||
|
listing.setTradingCurrency(req.getTradingCurrency());
|
||||||
|
if (StringUtils.isEmpty(req.getWorkflowStatus())) {
|
||||||
|
listing.setWorkflowStatus(WorkflowStatus.Active.getKey());
|
||||||
|
} else {
|
||||||
|
listing.setWorkflowStatus(req.getWorkflowStatus());
|
||||||
|
}
|
||||||
|
|
||||||
|
listingImdg.insert(listing);
|
||||||
|
log.debug("successfully processed, request id {}, new object id {}", userRequest.getId(), listing.getId());
|
||||||
|
return null; // default success
|
||||||
|
}
|
||||||
|
|
||||||
|
private RequestInfoUpdate updateListing(BaseRequest<ListingUpdateRequest> userRequest) {
|
||||||
|
ListingUpdateRequest req = userRequest.getRequestPayload();
|
||||||
|
log.debug("updateListing received id = {}", req.getId());
|
||||||
|
|
||||||
|
|
||||||
|
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||||
|
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
// RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||||
|
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
|
||||||
|
Listing listing = listingImdg.getSingleObjectByID(req.getId());
|
||||||
|
|
||||||
|
Security security = selectSecurityById(req.getSecurityId());
|
||||||
|
if (security == null) {
|
||||||
|
log.error("Security not found {}", req.getSecurityId());
|
||||||
|
//return validationHelper.getMessageResolver()
|
||||||
|
//todo error!
|
||||||
|
}
|
||||||
|
if (listing == null) {
|
||||||
|
log.error("listing not found {}", req.getId());
|
||||||
|
//return validationHelper.getMessageResolver()
|
||||||
|
//todo error!
|
||||||
|
}
|
||||||
|
|
||||||
|
listing.setUpdated(Instant.now());
|
||||||
|
listing.setLotSize(req.getLotSize());
|
||||||
|
//if (req.getSymbolCode()!=null) listing.setSymbolCode(req.getSymbolCode());
|
||||||
|
//if (req.getSymbolName!=null) listing.setSymbolName(req.getSymbolName);
|
||||||
|
listing.setTradingCurrency(req.getTradingCurrency());
|
||||||
|
if (StringUtils.isNotEmpty(req.getWorkflowStatus())) {
|
||||||
|
listing.setWorkflowStatus(req.getWorkflowStatus());
|
||||||
|
}
|
||||||
|
|
||||||
|
listingImdg.update(listing);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private RequestInfoUpdate deleteListing(BaseRequest<CommonDeleteRequest> userRequest) {
|
||||||
|
CommonDeleteRequest req = userRequest.getRequestPayload();
|
||||||
|
log.debug("CommonDeleteRequest received id = {}", req.getId());
|
||||||
|
|
||||||
|
RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(userRequest);
|
||||||
|
if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
// requestInfoUpdate = validationHelper.validateTillFirstError(userRequest, validation.listingDeleteValidator());
|
||||||
|
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
|
|
||||||
|
Instant updateTime = Instant.now();
|
||||||
|
Listing listing = listingImdg.getSingleObjectByID(req.getId());
|
||||||
|
listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
||||||
|
listing.setUpdated(updateTime);
|
||||||
|
|
||||||
|
listingImdg.update(listing);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -138,11 +138,9 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
|
||||||
Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
Imdg<Listing> listingMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
//одним скопом выполняем реквест
|
//одним скопом выполняем реквест
|
||||||
moneyMarketSecurityMap.insert(mms);
|
moneyMarketSecurityMap.insert(mms);
|
||||||
Listing listing = ListingBuilder.builder()
|
// Listing listing = ListingBuilder.builder()
|
||||||
.append(mms).append(req).build();
|
// .append(mms).append(req).build();
|
||||||
listingMap.insert(listing);
|
// listingMap.insert(listing);
|
||||||
//и сохраняем обновленный
|
|
||||||
// reqInfoMap.insert(reqInfo);
|
|
||||||
transaction.commitTransaction();
|
transaction.commitTransaction();
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
transaction.rollbackTransaction();
|
transaction.rollbackTransaction();
|
||||||
|
|
@ -193,13 +191,13 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
|
||||||
mms.setWorkflowStatus(req.getWorkflowStatus());
|
mms.setWorkflowStatus(req.getWorkflowStatus());
|
||||||
|
|
||||||
moneyMarketSecurityMap.update(mms);
|
moneyMarketSecurityMap.update(mms);
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
// log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing = updateListingByMms(mms, listing);
|
// listing = updateListingByMms(mms, listing);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -227,14 +225,14 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
|
||||||
mms.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
mms.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
||||||
mms.setUpdated(updateTime);
|
mms.setUpdated(updateTime);
|
||||||
moneyMarketSecurityMap.update(mms);
|
moneyMarketSecurityMap.update(mms);
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
// Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
||||||
if (listing == null) {
|
// if (listing == null) {
|
||||||
log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
// log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
// listing.setWorkflowStatus(ru.spcex.platform.enumeration.Status.Blocked.getKey());
|
||||||
listing.setUpdated(updateTime);
|
// listing.setUpdated(updateTime);
|
||||||
listingImdg.update(listing);
|
// listingImdg.update(listing);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue