Ejemplo n.º 1
0
 protected void Map(ExecutionSummary summary, execution_summaries summaryDB)
 {
     summaryDB.date           = summary.Date;
     summaryDB.symbol         = summary.Symbol;
     summaryDB.avg_px         = summary.AvgPx;
     summaryDB.cum_qty        = summary.CumQty;
     summaryDB.leaves_qty     = summary.LeavesQty;
     summaryDB.commission     = summary.Commission;
     summaryDB.text           = summary.Text;
     summaryDB.console        = summary.Console;
     summaryDB.account_number = summary.AccountNumber;
 }
Ejemplo n.º 2
0
        public void Insert(ExecutionSummary summary)
        {
            execution_summaries execSummaryDB = GetById(summary.Id);

            if (execSummaryDB == null)
            {
                execution_summaries summaries = new execution_summaries();
                Map(summary, summaries);

                summaries.positions = new positions();
                Map(summary.Position, summaries.positions);

                foreach (Order order in summary.Position.Orders)
                {
                    orders orderBD = new orders();
                    Map(order, orderBD);
                    summaries.positions.orders.Add(orderBD);
                }

                foreach (ExecutionReport report in summary.Position.ExecutionReports)
                {
                    execution_reports reportsDB = new execution_reports();
                    Map(report, reportsDB);
                    summaries.positions.execution_reports.Add(reportsDB);
                }
                ctx.execution_summaries.AddObject(summaries);
                ctx.SaveChanges();

                summary.Id = summaries.id;

                int i = 0;
                foreach (orders orderDB in summaries.positions.orders)
                {
                    summary.Position.Orders[i].Id = orderDB.id;
                    i++;
                }
            }
            else
            {
                Map(summary, execSummaryDB);

                Map(summary.Position, execSummaryDB.positions);

                foreach (Order order in summary.Position.Orders)
                {
                    if (!execSummaryDB.positions.orders.Any(x => x.id == order.Id))
                    {
                        orders orderBD = new orders();
                        Map(order, orderBD);
                        execSummaryDB.positions.orders.Add(orderBD);
                    }
                }

                foreach (ExecutionReport report in summary.Position.ExecutionReports)
                {
                    if (report.TransactTime.HasValue && !execSummaryDB.positions.execution_reports.Any(x => x.transact_time.HasValue && DateTime.Compare(x.transact_time.Value, report.TransactTime.Value) == 0))
                    {
                        execution_reports reportsDB = new execution_reports();
                        Map(report, reportsDB);
                        execSummaryDB.positions.execution_reports.Add(reportsDB);
                    }
                }
                ctx.SaveChanges();
            }
        }
Ejemplo n.º 3
0
 public static ExecutionSummary Map(this execution_summaries source)
 {
     return(Mapper.Map <execution_summaries, ExecutionSummary>(source));
 }