예제 #1
0
 public Fitness(IReadOnlyList <Metric> metrics, ProcedureResults results)
 {
     Metrics = metrics;
     if (results != null)
     {
         Results = results;
     }
 }
예제 #2
0
        public ActionResult Charts(ProcedureResults procedureResults)
        {
            var analytics = Analytics.FromSession();

            analytics.ProcedureResults.ViewType = procedureResults.ViewType;

            return(View("Results", analytics.ProcedureResults));
        }
 public SimulationResultViewModel(SimulationHistory history)
 {
     Duration         = history.Duration;
     WaitingTime      = history.WaitingTime;
     TotalCost        = history.TotalCost;
     SimulationName   = history.SimulationName.Name;
     AuthorName       = history.AuthorName;
     Complexity       = history.Complexity;
     Step             = history.Step;
     DateTime         = history.DateTime;
     IsSuccess        = true;
     ProcedureResults = history.Procedures.Select(x => new ProcedureResultViewModel
     {
         ProcedureAlias = x.ProcedureAlias,
         StartTime      = x.StartTime,
         EndTime        = x.EndTime,
         Duration       = x.EndTime - x.StartTime,
         WaitingTime    = x.WaitingTime,
         RandomEvents   = x.RandomEvents.Select(e => new RandomEventResultViewModel
         {
             EventName = e.EventAlias,
             TimeStart = e.StartTime,
             TimeEnd   = e.EndTime,
             Duration  = e.EndTime - e.StartTime,
         }).ToList()
     }).ToList();
     ResourceResults = history.Resources.Select(x => new ResourceResultViewModel
     {
         ResourceName = x.ResourceName,
         Cost         = x.Cost,
         Downtime     = x.Downtime,
         UseTime      = x.UseTime,
         ActiveTime   = x.UseHistory.Select(t => new ActiveTimeItem
         {
             From = t.StartTime,
             To   = t.EndTime
         }).ToList(),
     }).ToList();
     RandomEventsDuration = ProcedureResults.SelectMany(x => x.RandomEvents).Sum(x => x.Duration);
 }