--- ExecutionRegisterServiceTest fix up related to new technical requirement
This commit is contained in:
parent
846a364164
commit
e4c362db00
2 changed files with 83 additions and 83 deletions
|
|
@ -15,7 +15,6 @@ import ru.clearing.classes.statics.data.execution.ExecutionFond;
|
|||
import ru.clearing.classes.statics.data.register.ExecutionRegister;
|
||||
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
|
||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.registry.ExecutionRegisterOnSaveRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||
import ru.spcex.clearing.registry.util.PreClearMap;
|
||||
|
|
@ -249,79 +248,79 @@ public class ExecutionRegisterService extends QueueConsumer implements Initializ
|
|||
|
||||
|
||||
// TODO возможно deprecated
|
||||
public void executionRegisterOnSavingOfTrade(BaseRequest<ExecutionRegisterOnSaveRequest> userRequest) {
|
||||
ExecutionRegisterOnSaveRequest request = userRequest.getRequestPayload();
|
||||
ExecutionCommon common = setUpExecutionCommon(request);
|
||||
boolean isFond = request.isExecutionFond();
|
||||
Optional<ExecutionRegister> optionalDuplicate = isDuplicateInMap(common);
|
||||
if (optionalDuplicate.isEmpty()) {
|
||||
insertExecutionRegister(isFond, common);
|
||||
} else {
|
||||
updateExecutionRegister(isFond, common, optionalDuplicate.get());
|
||||
}
|
||||
}
|
||||
//public void executionRegisterOnSavingOfTrade(BaseRequest<ExecutionRegisterOnSaveRequest> userRequest) {
|
||||
// ExecutionRegisterOnSaveRequest request = userRequest.getRequestPayload();
|
||||
// ExecutionCommon common = setUpExecutionCommon(request);
|
||||
// boolean isFond = request.isExecutionFond();
|
||||
// Optional<ExecutionRegister> optionalDuplicate = isDuplicateInMap(common);
|
||||
// if (optionalDuplicate.isEmpty()) {
|
||||
// insertExecutionRegister(isFond, common);
|
||||
// } else {
|
||||
// updateExecutionRegister(isFond, common, optionalDuplicate.get());
|
||||
// }
|
||||
//}
|
||||
|
||||
// TODO возможно deprecated
|
||||
private void updateExecutionRegister(boolean isFond, ExecutionCommon common, ExecutionRegister registerToUpdate) {
|
||||
log.trace("Started updating ExecutionRegister entity...");
|
||||
registerToUpdate.setSecurityId(common.getSecurityId());
|
||||
registerToUpdate.setExchangeExecutionTime(common.getExchangeExecutionTime());
|
||||
registerToUpdate.setAmount(isFond ? ((ExecutionFond) common).getSettlementAmount() : ((ExecutionDeposit) common).getFirstLegAmount());
|
||||
registerToUpdate.setQuantity(isFond ? common.getQuantity() : null);
|
||||
registerToUpdate.setUpdated(Instant.now());
|
||||
executionRegisterMap.update(registerToUpdate);
|
||||
log.debug("Updated successfully ExecutionRegister entity with id: {}", registerToUpdate.getId());
|
||||
}
|
||||
//private void updateExecutionRegister(boolean isFond, ExecutionCommon common, ExecutionRegister registerToUpdate) {
|
||||
// log.trace("Started updating ExecutionRegister entity...");
|
||||
// registerToUpdate.setSecurityId(common.getSecurityId());
|
||||
// registerToUpdate.setExchangeExecutionTime(common.getExchangeExecutionTime());
|
||||
// registerToUpdate.setAmount(isFond ? ((ExecutionFond) common).getSettlementAmount() : ((ExecutionDeposit) common).getFirstLegAmount());
|
||||
// registerToUpdate.setQuantity(isFond ? common.getQuantity() : null);
|
||||
// registerToUpdate.setUpdated(Instant.now());
|
||||
// executionRegisterMap.update(registerToUpdate);
|
||||
// log.debug("Updated successfully ExecutionRegister entity with id: {}", registerToUpdate.getId());
|
||||
//}
|
||||
|
||||
|
||||
// todo возможно deprecated
|
||||
private ExecutionCommon setUpExecutionCommon(ExecutionRegisterOnSaveRequest request) {
|
||||
ExecutionFond fond = null;
|
||||
ExecutionDeposit deposit = null;
|
||||
if (request.isExecutionFond()) {
|
||||
fond = new ExecutionFond();
|
||||
fond.setExchangeOrderId(request.getExchangeOrderId());
|
||||
fond.setSettlementAmount(request.getSettlementAmount());
|
||||
fond.setComment(request.getComment());
|
||||
fond.setClientCodeId(request.getClientCodeId());
|
||||
fond.setSettlementCode(request.getSettlementCode());
|
||||
fond.setSettlementDate(request.getSettlementDate());
|
||||
fond.setExchangeExecutionMicroseconds(request.getExchangeExecutionMicroseconds());
|
||||
} else {
|
||||
deposit = new ExecutionDeposit();
|
||||
deposit.setFirstLegAmount(request.getFirstLegAmount());
|
||||
deposit.setSecondLegAmount(request.getSecondLegAmount());
|
||||
deposit.setFirstLegSettlementDate(request.getFirstLegSettlementDate());
|
||||
deposit.setSecondLegSettlementDate(request.getSecondLegSettlementDate());
|
||||
deposit.setFirstLegSettlementCode(request.getFirstLegSettlementCode());
|
||||
deposit.setSecondLegSettlementCode(request.getSecondLegSettlementCode());
|
||||
deposit.setContract(request.getContract());
|
||||
deposit.setSecurityCode(request.getSecurityCode());
|
||||
}
|
||||
boolean isFond = fond != null;
|
||||
ExecutionCommon common = isFond ? fond : deposit;
|
||||
common.setExchangeExecutionId(request.getExchangeExecutionId());
|
||||
common.setExchangeExecutionTime(request.getExchangeExecutionTime());
|
||||
common.setTradingDate(request.getTradingDate());
|
||||
common.setTradingClearingRegistryId(request.getTradingClearingRegistryId());
|
||||
common.setMarket(request.getMarket());
|
||||
common.setPrice(request.getPrice());
|
||||
common.setLots(request.getLots());
|
||||
common.setQuantity(request.getQuantity());
|
||||
common.setInterestAmount(request.getInterestAmount());
|
||||
common.setSide(request.getSide());
|
||||
common.setSettlementCurrency(request.getSettlementCurrency());
|
||||
common.setCompanyId(request.getCompanyId());
|
||||
common.setDuration(request.getDuration());
|
||||
common.setSecurityFullName(request.getSecurityFullName());
|
||||
common.setSecuritySymbol(request.getSecuritySymbol());
|
||||
common.setSecurityId(request.getSecurityId());
|
||||
common.setCounterPartyId(request.getCounterPartyId());
|
||||
common.setCoverageStatus(request.getCoverageStatus());
|
||||
common.setSessionId(request.getSessionId());
|
||||
common.setClearingDate(request.getClearingDate());
|
||||
return common;
|
||||
}
|
||||
//private ExecutionCommon setUpExecutionCommon(ExecutionRegisterOnSaveRequest request) {
|
||||
// ExecutionFond fond = null;
|
||||
// ExecutionDeposit deposit = null;
|
||||
// if (request.isExecutionFond()) {
|
||||
// fond = new ExecutionFond();
|
||||
// fond.setExchangeOrderId(request.getExchangeOrderId());
|
||||
// fond.setSettlementAmount(request.getSettlementAmount());
|
||||
// fond.setComment(request.getComment());
|
||||
// fond.setClientCodeId(request.getClientCodeId());
|
||||
// fond.setSettlementCode(request.getSettlementCode());
|
||||
// fond.setSettlementDate(request.getSettlementDate());
|
||||
// fond.setExchangeExecutionMicroseconds(request.getExchangeExecutionMicroseconds());
|
||||
// } else {
|
||||
// deposit = new ExecutionDeposit();
|
||||
// deposit.setFirstLegAmount(request.getFirstLegAmount());
|
||||
// deposit.setSecondLegAmount(request.getSecondLegAmount());
|
||||
// deposit.setFirstLegSettlementDate(request.getFirstLegSettlementDate());
|
||||
// deposit.setSecondLegSettlementDate(request.getSecondLegSettlementDate());
|
||||
// deposit.setFirstLegSettlementCode(request.getFirstLegSettlementCode());
|
||||
// deposit.setSecondLegSettlementCode(request.getSecondLegSettlementCode());
|
||||
// deposit.setContract(request.getContract());
|
||||
// deposit.setSecurityCode(request.getSecurityCode());
|
||||
// }
|
||||
// boolean isFond = fond != null;
|
||||
// ExecutionCommon common = isFond ? fond : deposit;
|
||||
// common.setExchangeExecutionId(request.getExchangeExecutionId());
|
||||
// common.setExchangeExecutionTime(request.getExchangeExecutionTime());
|
||||
// common.setTradingDate(request.getTradingDate());
|
||||
// common.setTradingClearingRegistryId(request.getTradingClearingRegistryId());
|
||||
// common.setMarket(request.getMarket());
|
||||
// common.setPrice(request.getPrice());
|
||||
// common.setLots(request.getLots());
|
||||
// common.setQuantity(request.getQuantity());
|
||||
// common.setInterestAmount(request.getInterestAmount());
|
||||
// common.setSide(request.getSide());
|
||||
// common.setSettlementCurrency(request.getSettlementCurrency());
|
||||
// common.setCompanyId(request.getCompanyId());
|
||||
// common.setDuration(request.getDuration());
|
||||
// common.setSecurityFullName(request.getSecurityFullName());
|
||||
// common.setSecuritySymbol(request.getSecuritySymbol());
|
||||
// common.setSecurityId(request.getSecurityId());
|
||||
// common.setCounterPartyId(request.getCounterPartyId());
|
||||
// common.setCoverageStatus(request.getCoverageStatus());
|
||||
// common.setSessionId(request.getSessionId());
|
||||
// common.setClearingDate(request.getClearingDate());
|
||||
// return common;
|
||||
//}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ import ru.spcex.clearing.test.TestUtils;
|
|||
import ru.spcex.clearing.test.config.ImdgTestConfig;
|
||||
import ru.spcex.clearing.test.config.KafkaTestConfig;
|
||||
import ru.spcex.platform.enumeration.CompanySymbol;
|
||||
import ru.spcex.platform.enumeration.MoneyFlowSide;
|
||||
import ru.spcex.platform.enumeration.Side;
|
||||
import ru.spcex.platform.enumeration.Task;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
|
|
@ -147,7 +148,7 @@ class ExecutionRegisterServiceTest {
|
|||
}
|
||||
|
||||
@Test
|
||||
@Order(1)
|
||||
@Order(2)
|
||||
void executionRegisterNewForClearingDate() {
|
||||
|
||||
ExecutionFond executionFond = new ExecutionFond();
|
||||
|
|
@ -162,7 +163,7 @@ class ExecutionRegisterServiceTest {
|
|||
executionFond.setTradingClearingRegistryId(TKR_FOR_TKR_ID);
|
||||
executionFond.setCompanyId(COMPANY_ID);
|
||||
executionFond.setCounterPartyId(COUNTER_PARTY_ID);
|
||||
executionFond.setSide(Side.BUY.getKey());
|
||||
executionFond.setSide(Side.SELL.getKey());
|
||||
executionFond.setCounterPartyTradingClearingRegistry(COUNTER_PARTY_TKR);
|
||||
executionFond.setPartyTradingClearingRegistry(PARTY_TKR);
|
||||
executionFondImdg.insert(executionFond);
|
||||
|
|
@ -185,16 +186,16 @@ class ExecutionRegisterServiceTest {
|
|||
assertEquals(executionRegister.getExchangeExecutionId(), EXCHANGE_EXECUTION_ID);
|
||||
assertEquals(executionRegister.getExchangeExecutionTime(), EXCHANGE_EXECUTION_TIME);
|
||||
assertEquals(executionRegister.getSecurityId(), SECURITY_ID);
|
||||
assertEquals(executionRegister.getSellerId(), COUNTER_PARTY_ID);
|
||||
assertEquals(executionRegister.getSellerClearingCode(), COMPANY_SYMBOL_VALUE_FOR_COUNTER_PARTY_ID);
|
||||
assertEquals(executionRegister.getSellerTradingClearingRegister(), COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getSellerMoneyAccount(), MONEY_ACCOUNT_FOR_COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getSellerDepoAccount(), DEPO_ACCOUNT_FOR_COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getBuyerId(), COMPANY_ID);
|
||||
assertEquals(executionRegister.getBuyerClearingCode(), COMPANY_SYMBOL_VALUE_FOR_COMPANY_ID);
|
||||
assertEquals(executionRegister.getBuyerTradingClearingRegister(), PARTY_TKR);
|
||||
assertEquals(executionRegister.getBuyerMoneyAccount(), MONEY_ACCOUNT_FOR_TKR);
|
||||
assertEquals(executionRegister.getBuyerDepoAccount(), DEPO_ACCOUNT_FOR_TKR);
|
||||
assertEquals(executionRegister.getSellerId(), COMPANY_ID);
|
||||
assertEquals(executionRegister.getSellerClearingCode(), COMPANY_SYMBOL_VALUE_FOR_COMPANY_ID);
|
||||
assertEquals(executionRegister.getSellerTradingClearingRegister(), PARTY_TKR);
|
||||
assertEquals(executionRegister.getSellerMoneyAccount(), MONEY_ACCOUNT_FOR_TKR);
|
||||
assertEquals(executionRegister.getSellerDepoAccount(), DEPO_ACCOUNT_FOR_TKR);
|
||||
assertEquals(executionRegister.getBuyerId(), COUNTER_PARTY_ID);
|
||||
assertEquals(executionRegister.getBuyerClearingCode(), COMPANY_SYMBOL_VALUE_FOR_COUNTER_PARTY_ID);
|
||||
assertEquals(executionRegister.getBuyerTradingClearingRegister(), COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getBuyerMoneyAccount(), MONEY_ACCOUNT_FOR_COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getBuyerDepoAccount(), DEPO_ACCOUNT_FOR_COUNTER_PARTY_TKR);
|
||||
assertEquals(executionRegister.getAmount(), SETTLEMENT_AMOUNT);
|
||||
assertEquals(executionRegister.getQuantity(), QUANTITY);
|
||||
assertEquals(executionRegister.getClearingDate(), LocalDate.now());
|
||||
|
|
@ -203,7 +204,7 @@ class ExecutionRegisterServiceTest {
|
|||
}
|
||||
|
||||
@Test
|
||||
@Order(2)
|
||||
@Order(1)
|
||||
void executionRegisterNewFromRequest() {
|
||||
ExecutionDeposit executionDeposit = new ExecutionDeposit();
|
||||
executionDeposit.setClearingDate(LocalDate.now());
|
||||
|
|
@ -217,7 +218,7 @@ class ExecutionRegisterServiceTest {
|
|||
executionDeposit.setTradingClearingRegistryId(TKR_FOR_TKR_ID);
|
||||
executionDeposit.setCompanyId(COMPANY_ID);
|
||||
executionDeposit.setCounterPartyId(COUNTER_PARTY_ID);
|
||||
executionDeposit.setSide(Side.SELL.getKey());
|
||||
executionDeposit.setSide(MoneyFlowSide.SELL.getKey());
|
||||
executionDeposit.setCounterPartyTradingClearingRegistry(COUNTER_PARTY_TKR);
|
||||
executionDeposit.setPartyTradingClearingRegistry(PARTY_TKR);
|
||||
executionDepositImdg.insert(executionDeposit);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue