internal override void VisitAddPhysicalTransactionCommand(Commands.AddTranCommandBase command) { var addInstalmentTranCommand = (Commands.AddPhysicalInstalmentTransactionCommand)command; this.ParseCommon(addInstalmentTranCommand); command.CreateTransaction(); var factory = (AddPhysicalOrderCommandFactory)command.AddOrderCommandFactory; var addOrderCommand = factory.CreateInstalmentOrder((PhysicalTransaction)command.Result, addInstalmentTranCommand.OldOrder, addInstalmentTranCommand.Lot, addInstalmentTranCommand.IsOpen, addInstalmentTranCommand.IsBuy); addOrderCommand.Execute(); TransactionCodeGenerater.Default.FillTranAndOrderCode(command.Result); }
internal override void VisitAddPhysicalTransactionCommand(Commands.AddTranCommandBase command) { var deliveryCommand = (Commands.AddCancelDeliveryWithShortSellTranCommand)command; var constructParams = command.ConstructParams; constructParams.Id = Guid.NewGuid(); constructParams.Code = command.GenerateTransactionCode(iExchange.Common.OrderType.Risk); constructParams.InstrumentId = deliveryCommand.InstrumentId; constructParams.ConstractSize = deliveryCommand.ContractSize; constructParams.SubmitorId = Guid.Empty; constructParams.ApproveId = Guid.Empty; constructParams.Type = iExchange.Common.TransactionType.Single; constructParams.SubType = iExchange.Common.TransactionSubType.None; constructParams.Phase = iExchange.Common.TransactionPhase.Executed; constructParams.OrderType = iExchange.Common.OrderType.Risk; DateTime now = Market.MarketManager.Now; constructParams.BeginTime = now; constructParams.EndTime = now.AddMinutes(5); constructParams.SubmitTime = now; constructParams.ExecuteTime = now.AddSeconds(10); command.CreateTransaction(); }
private void ParseTransactionCommon(Commands.AddTranCommandBase command) { this.ParseCommon((Commands.AddDataRowTransactionCommandBase)command); command.CreateTransaction(); }