public float CalculateTotalEffortForActivity(List <TrainingSession> allSessionInTimespan, Types.TrainingType trainingType) { return((float)allSessionInTimespan.Sum(si => { double totalEffort = 0; if (si.TrainingEnumTypeId == trainingType) { double effort = GetEffordLevel(si); totalEffort = totalEffort + effort; } return totalEffort; })); }
private Dictionary <Types.TrainingType, List <TrainingDataTainingDetailsModel.TrainingDataValue> > GetActivityInfoSummary(DateTime now, int numberOfRecordsToDisplay, PeriodTrainingDataStrategy periodTrainingDataStrategy, NumericCalculationTypeStrategy numericCalculationTypeStrategy, IEnumerable <Types.TrainingType> selectedActivityTypes, List <TrainingSession> sessions) { var activityTypesDic = new Dictionary <Types.TrainingType, List <TrainingDataTainingDetailsModel.TrainingDataValue> >(); foreach (var type in selectedActivityTypes) { var timeSpans = periodTrainingDataStrategy.GetTimeSpans(now, numberOfRecordsToDisplay); Types.TrainingType type1 = type; var summaries = CollectDataFromromSessions( timeSpans, sessions.ToList(), s => numericCalculationTypeStrategy.CalculateTotalEffortForActivity( periodTrainingDataStrategy.FilterLessThanHourActivities(s), type1)); //summaries.Reverse(); activityTypesDic.Add(type, summaries); } return(activityTypesDic); }