gateway-api securities-service http://jira.mfd.msk:8088/browse/CLS-663 CURR(currency-pair)
This commit is contained in:
parent
0e5f2ed054
commit
53df6b6b62
9 changed files with 759 additions and 66 deletions
|
|
@ -7,7 +7,6 @@ import ru.spcex.clearing.gatewayapi.controller.inbound.request.WithSecurityId;
|
|||
import ru.spcex.clearing.gatewayapi.controller.inbound.request.listing.fond.*;
|
||||
import ru.spcex.clearing.gatewayapi.service.adapter.SecurityRequestAdapter;
|
||||
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.CurrencyPairSecurityGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.EquitySecurityGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.FixedIncomeGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.SecurityFondGatewayRequest;
|
||||
|
|
|
|||
|
|
@ -15,17 +15,21 @@ public class CurrencyPairSecurityRequestAdapter {
|
|||
CurrencyPairSecurityNewRequest securityNewRequest = new CurrencyPairSecurityNewRequest();
|
||||
securityNewRequest.setInstrumentType(InstrumentType.CRNC.getKey());
|
||||
securityNewRequest.setSecuritySymbol(currencyInstrument.getTicker());
|
||||
securityNewRequest.setShortName(currencyInstrument.getTicker());
|
||||
securityNewRequest.setFullName(currencyInstrument.getName());
|
||||
securityNewRequest.setBaseUnitSize(currencyInstrument.getNumberOfLotCurrency());
|
||||
securityNewRequest.setSettlementType(currencyInstrument.getSettleCode());
|
||||
securityNewRequest.setClearingOrganization(currencyInstrument.getClearingOrganization());
|
||||
securityNewRequest.setWorkflowStatus(currencyInstrument.getWorkflowStatus());
|
||||
|
||||
//to listing
|
||||
securityNewRequest.setMinStep(currencyInstrument.getMinStep());
|
||||
securityNewRequest.setPrecision(currencyInstrument.getPrecision());
|
||||
securityNewRequest.setLotSize(currencyInstrument.getLotSize());
|
||||
|
||||
// для currencyPairId
|
||||
req.setLotCurrencyLetterCode(currencyInstrument.getLotCurrencyLetterCode());
|
||||
req.setMatchedCurrencyLetterCode(currencyInstrument.getMatchedCurrencyLetterCode());
|
||||
|
||||
req.setCurrencySecurityNewRequest(securityNewRequest);
|
||||
// req.setUuid(currencyInstrument.getInitiatorId() != null ? currencyInstrument.getInitiatorId().toString() : null);
|
||||
return req;
|
||||
|
|
|
|||
|
|
@ -432,9 +432,12 @@ class GatewayControllerTest extends AbstractControllerTest{
|
|||
]
|
||||
}
|
||||
""";
|
||||
CurrListingsRequest cudReqObj = JsonUtil.readValue(CURR_REQ, CurrListingsRequest.class);
|
||||
Assertions.assertEquals("CNY", cudReqObj.getCurrencyInstrumentList().get(0).getLotCurrencyLetterCode());
|
||||
Assertions.assertEquals("RUB", cudReqObj.getCurrencyInstrumentList().get(0).getMatchedCurrencyLetterCode());
|
||||
|
||||
//ACT
|
||||
MvcResult mvcResult = perform(MockMvcRequestBuilders.post(LISTING_FOND_URL)
|
||||
MvcResult mvcResult = perform(MockMvcRequestBuilders.post(LISTING_CURR_URL)
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
.content(CURR_REQ))
|
||||
.andDo(print())//output to the log request and response
|
||||
|
|
|
|||
|
|
@ -0,0 +1,629 @@
|
|||
{
|
||||
"id": "5ae29407-834a-460d-bf1e-612dda694527",
|
||||
"type": "DAY_START",
|
||||
"section": "CURR",
|
||||
"datetime": "26.04.2024 09:30:00:065",
|
||||
"currency_specification": [
|
||||
{
|
||||
"id": "617f3172-20a9-4f83-b008-db4548a4de44",
|
||||
"ticker": "CNYRUB_TOD_N",
|
||||
"name": "Спот-инструмент китайский юань с расчетами сегодня без клиринга и расчетов в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "N",
|
||||
"lot_currency_letter_code": "CNY",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "NVAD",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "3c0fb45e-2d6c-4ece-9444-13acd7426f5c",
|
||||
"ticker": "ARSRUB_TOD_C",
|
||||
"name": "тест",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 2,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ARS",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "13.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "c019b97e-7480-4b8a-83b9-742afc0f8789",
|
||||
"ticker": "ALLCVE_TOD_C",
|
||||
"name": "а",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 5,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "CVE",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 2,
|
||||
"clearing_organization": "в",
|
||||
"settlement_organization": "а",
|
||||
"matched_settlement_organization": "п",
|
||||
"number_of_lot_currency": 2,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "4",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "e3577cd1-4d36-4691-91ae-72536896fc64",
|
||||
"ticker": "EURRUB_TOD_C",
|
||||
"name": "Спот-инструмент казахстанский тенге с расчетами сегодня с клирингом в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "EUR",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 10000,
|
||||
"clearing_organization": "НКО АО ПРЦ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "СПВБ",
|
||||
"number_of_lot_currency": 1000,
|
||||
"start_trading_date": "15.03.2024",
|
||||
"specification_approval_date": "13.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "45c8205e-14d9-4e0f-9a25-4f07702a8ae5",
|
||||
"ticker": "KZTRUB_TOD_N",
|
||||
"name": "Спот-инструмент казахстанский тенге с расчетами сегодня без клиринга и расчетов в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "N",
|
||||
"lot_currency_letter_code": "KZT",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "NVAD",
|
||||
"lot_size": 10000,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 100,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "3f30841f-b138-444d-bd5f-2bfc9cc3a6f7",
|
||||
"ticker": "CADRUB_TOD_C",
|
||||
"name": "Канадский доллар Рубль РФ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "CAD",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 100000,
|
||||
"start_trading_date": "22.03.2024",
|
||||
"specification_approval_date": "20.03.2024",
|
||||
"specification_approval_number": "566",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "31518ec5-244e-4082-9f9c-29a8e4b6d955",
|
||||
"ticker": "KZTRUB_TOD_C",
|
||||
"name": "Спот-инструмент казахстанский тенге с расчетами сегодня с клирингом в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 25,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "KZT",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 10000,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 100,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "0742d050-96e7-444b-9e87-66eb875b5776",
|
||||
"ticker": "EURRUB_TOD_N",
|
||||
"name": "тестовый инструмент",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 2,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "N",
|
||||
"lot_currency_letter_code": "EUR",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "NVAD",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 10,
|
||||
"start_trading_date": "21.03.2024",
|
||||
"specification_approval_date": "20.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "115ece73-b658-4f7e-b608-d5f50005ccba",
|
||||
"ticker": "CNYRUB_TOD_C",
|
||||
"name": "Спот-инструмент китайский юань с расчетами сегодня с клирингом в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 5,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "CNY",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "c20c7b3d-750b-438c-b2c8-06bd49d02642",
|
||||
"ticker": "EURUSD_TOD_C",
|
||||
"name": "тест импорт",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "EUR",
|
||||
"matched_currency_letter_code": "USD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "12.03.2024",
|
||||
"specification_approval_date": "11.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "bf158264-7b03-40d2-a3fe-c404f8f87150",
|
||||
"ticker": "ALLDZD_TOD_C",
|
||||
"name": "аааааа",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "B0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "DZD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 5,
|
||||
"clearing_organization": "ррр",
|
||||
"settlement_organization": "рррр",
|
||||
"matched_settlement_organization": "рррр",
|
||||
"number_of_lot_currency": 1111,
|
||||
"start_trading_date": "08.04.2024",
|
||||
"specification_approval_date": "03.04.2024",
|
||||
"specification_approval_number": "аааа",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "ff2c0881-220a-496e-b7f0-fa4487b9457f",
|
||||
"ticker": "CNYRUB_TOD_R",
|
||||
"name": "Спот-инструмент китайский юань с расчетами сегодня с клирингом в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "R",
|
||||
"lot_currency_letter_code": "CNY",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "NVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "4f41bcc3-d66a-4f56-94d8-4c7c2834a834",
|
||||
"ticker": "ALLBND_TOD_R",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "R",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "BND",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "a",
|
||||
"settlement_organization": "b",
|
||||
"matched_settlement_organization": "c",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "31.03.2024",
|
||||
"specification_approval_date": "07.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "093de51b-5d80-4362-b942-ede93dca9cd7",
|
||||
"ticker": "ALLDZD_TOD_R",
|
||||
"name": "Тестовый инструмент АЛЛ-ДЗД",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 2,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "R",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "DZD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "13.03.2024",
|
||||
"specification_approval_number": "12345",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "a0be959e-f2f2-4c9e-9230-1a28167d20aa",
|
||||
"ticker": "ALLBWP_TOD_C",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "BWP",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "a",
|
||||
"settlement_organization": "b",
|
||||
"matched_settlement_organization": "c",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "05.03.2024",
|
||||
"specification_approval_date": "05.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "d49ce1ea-52d7-49e2-a636-dc791270d32d",
|
||||
"ticker": "DZDALL_TOD_C",
|
||||
"name": "проверка удаления",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "DZD",
|
||||
"matched_currency_letter_code": "ALL",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "0417fd5d-080e-4135-8b26-5c0d61116fe0",
|
||||
"ticker": "ALLALL_TOD_C",
|
||||
"name": "тест создание",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 2,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "ALL",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1000,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "13.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "3fecd8e4-4f61-4ba4-8494-3c09b84386c4",
|
||||
"ticker": "ALLCVE_TOD_C",
|
||||
"name": "проверка ап",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "CVE",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 2,
|
||||
"clearing_organization": "авы",
|
||||
"settlement_organization": "ыва",
|
||||
"matched_settlement_organization": "авы",
|
||||
"number_of_lot_currency": 3,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "34",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "b1f864a0-df55-4061-b1c1-3f569d4cea03",
|
||||
"ticker": "ALLDZD_TOD_C",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "DZD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "ко",
|
||||
"settlement_organization": "ро",
|
||||
"matched_settlement_organization": "рос",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "53440d91-633b-4171-9820-a280a8f8cd32",
|
||||
"ticker": "ALLKHR_TOD_C",
|
||||
"name": "абвгд",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "KHR",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "цц",
|
||||
"settlement_organization": "цц",
|
||||
"matched_settlement_organization": "цц",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "515d5ae1-185d-4d04-b353-7fb6f119b2b8",
|
||||
"ticker": "ALLBTN_TOD_C",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "BTN",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "a",
|
||||
"settlement_organization": "b",
|
||||
"matched_settlement_organization": "c",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "23.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "f73d20ad-77a7-48f2-8a69-816d72755c55",
|
||||
"ticker": "BSDARS_TOD_C",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "B0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "BSD",
|
||||
"matched_currency_letter_code": "ARS",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "a",
|
||||
"settlement_organization": "b",
|
||||
"matched_settlement_organization": "c",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "30.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "aa9c44e0-6808-4b75-883f-421243e1433f",
|
||||
"ticker": "ALLARS_TOD_C",
|
||||
"name": "абырвалг",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 2,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "ARS",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 123,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "13.03.2024",
|
||||
"specification_approval_number": "123",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "dce81fd0-7773-4e7e-bd1a-212bdfa1c9d1",
|
||||
"ticker": "ALLAUD_TOD_C",
|
||||
"name": "проверка пр",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "AUD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "кк",
|
||||
"settlement_organization": "уу",
|
||||
"matched_settlement_organization": "тт",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "3",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "712a96d1-3076-4130-a0a1-31a500c13753",
|
||||
"ticker": "KZTRUB_TOD_R",
|
||||
"name": "Спот-инструмент казахстанский тенге с расчетами сегодня с клирингом в АО СПВБ",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "R",
|
||||
"lot_currency_letter_code": "KZT",
|
||||
"matched_currency_letter_code": "RUB",
|
||||
"trading_mode": "NVAV",
|
||||
"lot_size": 10000,
|
||||
"clearing_organization": "АО СПВБ",
|
||||
"settlement_organization": "НКО АО ПРЦ",
|
||||
"matched_settlement_organization": "НКО АО ПРЦ",
|
||||
"number_of_lot_currency": 100,
|
||||
"start_trading_date": "06.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "2",
|
||||
"workflow_status": "ACTV"
|
||||
},
|
||||
{
|
||||
"id": "1faf9210-3d59-4686-9bc1-fd720e4cb240",
|
||||
"ticker": "ALLARS_TOD_C",
|
||||
"name": "абвгд",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "ARS",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 1,
|
||||
"clearing_organization": "1",
|
||||
"settlement_organization": "1",
|
||||
"matched_settlement_organization": "1",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "14.03.2024",
|
||||
"specification_approval_date": "14.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
},
|
||||
{
|
||||
"id": "3a32922a-ee15-47f3-b14c-539cb0ac410f",
|
||||
"ticker": "ALLBBD_TOD_C",
|
||||
"name": "проверка",
|
||||
"exchange_offexchange": "EXCHANGE",
|
||||
"min_step": 1,
|
||||
"precision": 4,
|
||||
"settle_code": "T0",
|
||||
"value_date": "TOD",
|
||||
"symbol_trading_mode": "C",
|
||||
"lot_currency_letter_code": "ALL",
|
||||
"matched_currency_letter_code": "BBD",
|
||||
"trading_mode": "UVAV",
|
||||
"lot_size": 2,
|
||||
"clearing_organization": "а",
|
||||
"settlement_organization": "б",
|
||||
"matched_settlement_organization": "в",
|
||||
"number_of_lot_currency": 1,
|
||||
"start_trading_date": "08.03.2024",
|
||||
"specification_approval_date": "06.03.2024",
|
||||
"specification_approval_number": "1",
|
||||
"workflow_status": "BLKD"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -74,10 +74,6 @@ public class CurrencyPairSecurityService extends QueueConsumer implements Initia
|
|||
callback(CommonDeleteRequest.class)
|
||||
.setFunction(this::deleteCurrencyPairSecurity)
|
||||
.forDestination(Consts.DESTINATION_CURRENCY_PAIR_SECURITIES_DELETE, callbacks::put);
|
||||
//todo DESTINATION_GATEWAY_CURRENCY_PAIR_SECURITY see CLS-612, CLS-663
|
||||
// callback(CurrencyPairSecurityNewGatewayRequest.class)
|
||||
// .setFunction(this::newCurrencyPairSecurity)
|
||||
// .forDestination(Consts.DESTINATION_GATEWAY_CURRENCY_PAIR_SECURITY, callbacks::put);
|
||||
imdgProvider.waitAvailable();
|
||||
init();
|
||||
}
|
||||
|
|
@ -113,6 +109,7 @@ public class CurrencyPairSecurityService extends QueueConsumer implements Initia
|
|||
currencyPairSecurity.setBaseUnitSize(req.getBaseUnitSize());
|
||||
currencyPairSecurity.setCurrencyPairId(req.getCurrencyPairId());
|
||||
//todo currencyPairSecurity.setCode(req.getCode());
|
||||
//req.getPrecision()
|
||||
currencyPairSecurity.setSettlementType(req.getSettlementType());
|
||||
currencyPairSecurity.setClearingOrganization(req.getClearingOrganization());
|
||||
//todo currencyPairSecurity.setSettlementOrganization(req.getSettlementOrganization());
|
||||
|
|
|
|||
|
|
@ -16,17 +16,20 @@ import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
|
|||
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
|
||||
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
|
||||
import ru.clearing.classes.statics.data.misc.Listing;
|
||||
import ru.clearing.classes.statics.data.security.CurrencyPairSecurity;
|
||||
import ru.clearing.classes.statics.data.security.MoneyMarketSecurity;
|
||||
import ru.clearing.classes.statics.data.security.Security;
|
||||
import ru.clearing.platform.dictionary.CurrencyPairDictionary;
|
||||
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.company.CurrencyPairSecurityGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.EquitySecurityGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.FixedIncomeGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.company.SecurityFondGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.*;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.security.CurrencyPairSecurityNewGatewayRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.security.CurrencyPairSecurityNewRequest;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.security.CurrencyPairSecurityUpdateRequest;
|
||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||
import ru.spcex.clearing.securities.validation.ValidationProvider;
|
||||
|
|
@ -53,11 +56,13 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
private final Imdg<FixedIncomeSecurity> fixedIncomeSecurityImdg;
|
||||
private final Imdg<EquitySecurity> equitySecurityImdg;
|
||||
private final Imdg<MoneyMarketSecurity> moneyMarketSecurityImdg;
|
||||
private final Imdg<CurrencyPairSecurity> currencyPairSecurityImdg;
|
||||
private final Imdg<Listing> listingImdg;
|
||||
private final Imdg<CouponPeriod> couponPeriodImdg;
|
||||
private final Imdg<FixedIncomeCashFlow> fixedIncomeCashFlowImdg;
|
||||
private final Imdg<CompanySymbols> companySymbolsImdg;
|
||||
private final Imdg<Company> companyImdg;
|
||||
private final Imdg<CurrencyPairDictionary> currencyPairDictionaryImdg;
|
||||
private final ImdgProvider imdgProvider;
|
||||
private final ImdgId idGenerator;
|
||||
|
||||
|
|
@ -97,6 +102,8 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
this.fixedIncomeSecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_FixedIncomeSecurity, FixedIncomeSecurity.class);
|
||||
this.equitySecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class);
|
||||
this.moneyMarketSecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class);
|
||||
this.currencyPairSecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CurrencyPairSecurity, CurrencyPairSecurity.class);
|
||||
this.currencyPairDictionaryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CurrencyPairDictionary, CurrencyPairDictionary.class);
|
||||
this.currencyPairSecurityService = currencyPairSecurityService;
|
||||
this.listingImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||
this.couponPeriodImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CouponPeriod, CouponPeriod.class);
|
||||
|
|
@ -129,9 +136,9 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
callback(MoneyMarketSecurityNewGatewayRequest.class)
|
||||
.setFunction(this::newMoneyMarketSecurity)
|
||||
.forDestination(Consts.DESTINATION_GATEWAY_MONEY_MARKET_SECURITY, callbacks::put);
|
||||
callback(CurrencyPairSecurityGatewayRequest.class)
|
||||
.setFunction(this::newSecurities)
|
||||
.forDestination(Consts.DESTINATION_SECURITY_CURRENCY_GATEWAY, callbacks::put);
|
||||
callback(CurrencyPairSecurityNewGatewayRequest.class)
|
||||
.setFunction(this::newSecuritiesCurrencyPair)
|
||||
.forDestination(Consts.DESTINATION_GATEWAY_CURRENCY_PAIR_SECURITY, callbacks::put);
|
||||
|
||||
imdgProvider.waitAvailable();
|
||||
init();
|
||||
|
|
@ -183,6 +190,74 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
}
|
||||
}
|
||||
|
||||
private RequestInfoUpdate newSecuritiesCurrencyPair(BaseRequest<?> baseRequest) {
|
||||
log.debug("CurrencyPairSecurityGatewayRequest id={} received", baseRequest.getId());
|
||||
CurrencyPairSecurityNewGatewayRequest req = (CurrencyPairSecurityNewGatewayRequest) baseRequest.getRequestPayload();
|
||||
|
||||
Security security = null;
|
||||
|
||||
try {
|
||||
CurrencyPairSecurityNewRequest currencyPairRequest = req.getCurrencySecurityNewRequest();
|
||||
if (currencyPairRequest != null) {
|
||||
if (StringUtils.isEmpty(currencyPairRequest.getSecuritySymbol())) {
|
||||
log.warn("Skip creating CurrencyPairSecurity without securityId");
|
||||
return null;
|
||||
}
|
||||
log.debug("Processed request with securitySymbol: {}", currencyPairRequest.getSecuritySymbol());
|
||||
if (req.getLotCurrencyLetterCode() == null || req.getMatchedCurrencyLetterCode() == null) {
|
||||
log.warn("Required field was empty: LotCurrencyLetterCode={}, MatchedCurrencyLetterCode={}",
|
||||
req.getLotCurrencyLetterCode(), req.getMatchedCurrencyLetterCode());
|
||||
} else {
|
||||
CurrencyPairDictionary currencyPairD = currencyPairDictionaryImdg.getFirstObjectByFieldValues(Map.of(
|
||||
"baseCurrency", req.getLotCurrencyLetterCode(),
|
||||
"quoteCurrency", req.getMatchedCurrencyLetterCode()
|
||||
));
|
||||
if (currencyPairD == null) {
|
||||
log.warn("CurrencyPairDictionary not found by {}/{}",
|
||||
req.getLotCurrencyLetterCode(), req.getMatchedCurrencyLetterCode());
|
||||
} else {
|
||||
log.trace("CurrencyPairId={} by {}/{}", currencyPairD.getId(),
|
||||
req.getLotCurrencyLetterCode(), req.getMatchedCurrencyLetterCode());
|
||||
currencyPairRequest.setCurrencyPairId(currencyPairD.getId());
|
||||
}
|
||||
}
|
||||
|
||||
String securitySymbol = currencyPairRequest.getSecuritySymbol();
|
||||
security = findSecurityBySecuritySymbol(currencyPairSecurityImdg, securitySymbol);
|
||||
|
||||
if (security == null) {
|
||||
security = currencyPairSecurityService.newCurrencyPairSecurity0(currencyPairRequest);
|
||||
} else {
|
||||
CurrencyPairSecurityUpdateRequest updateRequest = toUpdateRequest(security, currencyPairRequest);
|
||||
security = currencyPairSecurityService.updateCurrencyPairSecurity0(updateRequest);
|
||||
}
|
||||
} else {
|
||||
log.warn("currencyPairSecurityGatewayRequest is null");
|
||||
}
|
||||
} catch (ValidationException expected) {
|
||||
if (security == null) {
|
||||
log.error("Error create or update issue: {}", messageResolver.resolve(expected.getEnumMsg()));
|
||||
return requestHelper.makeErrorResponse(baseRequest, expected.getEnumMsg());
|
||||
} else {
|
||||
log.warn("Error create or update issue: {}. But issue id={} found, try continue...",
|
||||
messageResolver.resolve(expected.getEnumMsg()), security.getId());
|
||||
}
|
||||
}
|
||||
|
||||
Long securityId;
|
||||
if (security == null) {
|
||||
log.error("No new or update security.");
|
||||
securityId = null;
|
||||
} else {
|
||||
securityId = security.getId();
|
||||
log.debug("Use security {}.id={} ({} {})", security.getClass().getSimpleName(), securityId, security.getInstrumentType(), security.getShortName());
|
||||
}
|
||||
|
||||
log.debug("successfully processed, request id {}, currencyPairId={}",
|
||||
baseRequest.getId(), securityId);
|
||||
return null; // default success
|
||||
}
|
||||
|
||||
private RequestInfoUpdate newSecurities(BaseRequest<?> baseRequest) {
|
||||
log.debug("SecurityFondGatewayRequest id={} received", baseRequest.getId());
|
||||
SecurityFondGatewayRequest req = (SecurityFondGatewayRequest) baseRequest.getRequestPayload();
|
||||
|
|
@ -237,26 +312,7 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
}
|
||||
}
|
||||
if (InstrumentType.CRNC.equalsByKey(req.getSecurityType())) {
|
||||
// CurrencyPairSecurityGatewayRequest currencyPairSecurityGatewayRequest = (CurrencyPairSecurityGatewayRequest) req;
|
||||
// CurrencyPairSecurityNewRequest currencyPairRequest = currencyPairSecurityGatewayRequest.getSecurity();
|
||||
// if (StringUtils.isEmpty(currencyPairRequest.getSecuritySymbol())) {
|
||||
// log.warn("Skip creating CurrencyPairSecurity without securityId: uuid: {}", req.getUuid());
|
||||
// return null;
|
||||
// }
|
||||
// log.debug("Processed request with securitySymbol: {}", currencyPairRequest.getSecuritySymbol());
|
||||
// currencyPairRequest.setIssuerId(companyId);
|
||||
// log.trace("EquitySecurityNewRequest - FOND");
|
||||
// String securitySymbol = currencyPairRequest.getSecuritySymbol();
|
||||
// security = findSecurityBySecuritySymbol(currencyPairSecurityImdg, securitySymbol);
|
||||
//
|
||||
// if (security == null) {
|
||||
// security = currencyPairSecurityService.newEquity0(currencyPairRequest);
|
||||
// } else {
|
||||
// EquitySecurityUpdateRequest updateRequest = toUpdateRequest(security, currencyPairRequest);
|
||||
// security = currencyPairSecurityService.updateEquity0(updateRequest);
|
||||
// }
|
||||
// //fixme currencypair будет отдельная задача
|
||||
throw new IllegalStateException("todo CRNC");
|
||||
throw new IllegalStateException("CRNC support in other function"); // см. другой метод.
|
||||
}
|
||||
} catch (ValidationException expected) {
|
||||
if (security == null) {
|
||||
|
|
@ -536,4 +592,22 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
|||
return updateRequest;
|
||||
}
|
||||
|
||||
CurrencyPairSecurityUpdateRequest toUpdateRequest(Security currencyPairSecurity, CurrencyPairSecurityNewRequest newRequest) {
|
||||
var updateRequest = new CurrencyPairSecurityUpdateRequest();
|
||||
updateRequest.setId(currencyPairSecurity.getId());
|
||||
|
||||
updateRequest.setInstrumentType(newRequest.getInstrumentType());
|
||||
updateRequest.setSecuritySymbol(newRequest.getSecuritySymbol());
|
||||
updateRequest.setShortName(newRequest.getShortName());
|
||||
updateRequest.setFullName(newRequest.getFullName());
|
||||
updateRequest.setCurrencyPairId(newRequest.getCurrencyPairId());
|
||||
updateRequest.setLotSize(newRequest.getLotSize());
|
||||
updateRequest.setMinStep(newRequest.getMinStep());
|
||||
// updateRequest.setPrecision(newRequest.getPrecision());
|
||||
updateRequest.setBaseUnitSize(newRequest.getBaseUnitSize());
|
||||
updateRequest.setSettlementType(newRequest.getSettlementType());
|
||||
updateRequest.setWorkflowStatus(newRequest.getWorkflowStatus());
|
||||
updateRequest.setClearingOrganization(newRequest.getClearingOrganization());
|
||||
return updateRequest;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ public interface Consts {
|
|||
|
||||
String DESTINATION_SECURITY_BOND_GATEWAY = "security-bond-gateway-request-new";
|
||||
String DESTINATION_SECURITY_EQTY_GATEWAY = "security-eqty-gateway-request-new";
|
||||
String DESTINATION_SECURITY_CURRENCY_GATEWAY = "security-currency-pair-gateway-request-new";
|
||||
String DESTINATION_GATEWAY_CURRENCY_PAIR_SECURITY = "currency-pair-securities-gateway-new"; // "security-currency-pair-gateway-request-new"
|
||||
|
||||
String DESTINATION_FIXED_INCOME_CASH_FLOW_NEW = "fixed-income-cash-flow-new";
|
||||
String DESTINATION_FIXED_INCOME_CASH_FLOW_UPDATE = "fixed-income-cash-flow-update";
|
||||
|
|
@ -188,7 +188,6 @@ public interface Consts {
|
|||
String DESTINATION_TRADING_CLEARING_REGISTRY_ON_TCRLIST_NEW = "registry-on-trading_clearing_registry_list-new";
|
||||
|
||||
|
||||
String DESTINATION_GATEWAY_CURRENCY_PAIR_SECURITY = "currency-pair-securities-gateway-new";
|
||||
String DESTINATION_CURRENCY_PAIR_SECURITIES_NEW = "currency-pair-securities-new";
|
||||
String DESTINATION_CURRENCY_PAIR_SECURITIES_UPDATE = "currency-pair-securities-update";
|
||||
String DESTINATION_CURRENCY_PAIR_SECURITIES_DELETE = "currency-pair-securities-delete";
|
||||
|
|
|
|||
|
|
@ -1,24 +0,0 @@
|
|||
package ru.spcex.clearing.platform.messaging.domain.cud.company;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import ru.spcex.clearing.platform.messaging.domain.cud.security.CurrencyPairSecurityNewRequest;
|
||||
|
||||
public class CurrencyPairSecurityGatewayRequest extends SecurityFondGatewayRequest {
|
||||
@JsonProperty
|
||||
private CurrencyPairSecurityNewRequest security;
|
||||
|
||||
public CurrencyPairSecurityGatewayRequest() {
|
||||
}
|
||||
|
||||
public CurrencyPairSecurityGatewayRequest(CurrencyPairSecurityNewRequest security) {
|
||||
this.security = security;
|
||||
}
|
||||
|
||||
public CurrencyPairSecurityNewRequest getSecurity() {
|
||||
return security;
|
||||
}
|
||||
|
||||
public void setSecurity(CurrencyPairSecurityNewRequest security) {
|
||||
this.security = security;
|
||||
}
|
||||
}
|
||||
|
|
@ -3,18 +3,14 @@ package ru.spcex.clearing.platform.messaging.domain.cud.security;
|
|||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public class CurrencyPairSecurityNewGatewayRequest {
|
||||
@JsonProperty
|
||||
private String uuid;
|
||||
@JsonProperty
|
||||
private CurrencyPairSecurityNewRequest currencySecurityNewRequest;
|
||||
|
||||
public String getUuid() {
|
||||
return uuid;
|
||||
}
|
||||
|
||||
public void setUuid(String uuid) {
|
||||
this.uuid = uuid;
|
||||
}
|
||||
// in currencySecurityNewRequest:
|
||||
@JsonProperty
|
||||
private String lotCurrencyLetterCode;
|
||||
@JsonProperty
|
||||
private String matchedCurrencyLetterCode;
|
||||
|
||||
public CurrencyPairSecurityNewRequest getCurrencySecurityNewRequest() {
|
||||
return currencySecurityNewRequest;
|
||||
|
|
@ -23,4 +19,20 @@ public class CurrencyPairSecurityNewGatewayRequest {
|
|||
public void setCurrencySecurityNewRequest(CurrencyPairSecurityNewRequest currencySecurityNewRequest) {
|
||||
this.currencySecurityNewRequest = currencySecurityNewRequest;
|
||||
}
|
||||
|
||||
public String getLotCurrencyLetterCode() {
|
||||
return lotCurrencyLetterCode;
|
||||
}
|
||||
|
||||
public void setLotCurrencyLetterCode(String lotCurrencyLetterCode) {
|
||||
this.lotCurrencyLetterCode = lotCurrencyLetterCode;
|
||||
}
|
||||
|
||||
public String getMatchedCurrencyLetterCode() {
|
||||
return matchedCurrencyLetterCode;
|
||||
}
|
||||
|
||||
public void setMatchedCurrencyLetterCode(String matchedCurrencyLetterCode) {
|
||||
this.matchedCurrencyLetterCode = matchedCurrencyLetterCode;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue