diff --git a/clearing-parent/fix-service/src/main/java/ru/spcex/clearing/fix/quickfix/Application.java b/clearing-parent/fix-service/src/main/java/ru/spcex/clearing/fix/quickfix/Application.java index 1e8585ddf..f2d81baf2 100644 --- a/clearing-parent/fix-service/src/main/java/ru/spcex/clearing/fix/quickfix/Application.java +++ b/clearing-parent/fix-service/src/main/java/ru/spcex/clearing/fix/quickfix/Application.java @@ -13,6 +13,9 @@ import quickfix.fix44.NewOrderSingle; import ru.clearing.classes.statics.data.misc.OrderCurrency; import ru.clearing.classes.statics.data.misc.SOrders; import ru.spcex.clearing.imdg.IMDGDistributedNames; +import ru.spcex.clearing.platform.messaging.domain.Consts; +import ru.spcex.clearing.platform.messaging.domain.cud.order.OrderCurrencyStatusUpdateRequest; +import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgTransaction; @@ -29,13 +32,20 @@ public class Application extends MessageCracker implements quickfix.Application, private final ImdgProvider imdgProvider; private final SocketInitiator initiator; + private final KafkaSender kafkaSender; private SessionID fixSessionID; private SessionID fdcSessionID; @Autowired - public Application(ImdgProvider imdgProvider, MessageStoreFactory storeFactory, SessionSettings settings, LogFactory logFactory, MessageFactory messageFactory) throws ConfigError { + public Application(ImdgProvider imdgProvider, + MessageStoreFactory storeFactory, + SessionSettings settings, + LogFactory logFactory, + MessageFactory messageFactory, + KafkaSender kafkaSender) throws ConfigError { this.imdgProvider = imdgProvider; + this.kafkaSender = kafkaSender; initiator = new SocketInitiator(this, storeFactory, settings, logFactory, messageFactory); } @@ -156,6 +166,11 @@ public class Application extends MessageCracker implements quickfix.Application, sOrdersImdg.update(sOrders); } + + //send message to df for update orderCurrency status + OrderCurrencyStatusUpdateRequest updateRequest = new OrderCurrencyStatusUpdateRequest(); + updateRequest.addId(sOrders.getId()); + kafkaSender.sendRequestToQueue(Consts.ORDER_CURRENCY_STATUS_UPDATE_FIX, updateRequest); } } transaction.commitTransaction();