public StandingsViewModel GetStandingsForSeries(Series currentSeries) { var model = new StandingsViewModel(); foreach (var seriesClass in currentSeries.SeriesClasses) { var seriesClassResults = _resultService.GetResultsForClassBySeriesId(currentSeries.SeriesId, seriesClass.ClassId); var standingsGroup = new StandingsGroupViewModel(); standingsGroup.ClassId = seriesClass.ClassId; standingsGroup.ClassName = seriesClass.Class.Name; foreach(var result in seriesClassResults) { var item = new StandingsItemViewModel(); item.Driver = result.Driver; item.TotalPoints = seriesClassResults.Where(r => r.DriverId == result.DriverId).Sum(p => p.PointsEarned).GetValueOrDefault(0); if(standingsGroup.StandingsItems == null) { standingsGroup.StandingsItems = new List<StandingsItemViewModel>(); } StandingsItemViewModel existingItem = null; if (standingsGroup.StandingsItems.Where(i => i.Driver == item.Driver).Count() > 0) { existingItem = standingsGroup.StandingsItems.Single(i => i.Driver == item.Driver); } if(existingItem == null) { standingsGroup.StandingsItems.Add(item); //existingItem.TotalPoints += item.TotalPoints; } //else //{ // standingsGroup.StandingsItems.Add(item); //} } if(model.Standings == null) { model.Standings = new List<StandingsGroupViewModel>(); } model.Standings.Add(standingsGroup); } model.SelectedSeriesId = currentSeries.SeriesId; return model; }
public Series SaveNewSeries(Series series) { using (var connection = new EntityConnection("name=CoreContainer")) { _core = new CoreContainer(connection); _core.Series.AddObject(series); _core.SaveChanges(); } return series; }
public Series DeleteAllSeriesClasses(Series series) { foreach (var seriesClass in series.SeriesClasses) { using (var connection = new EntityConnection("name=CoreContainer")) { _core = new CoreContainer(connection); string query = string.Format("delete from SeriesClass where SeriesClassId = {0}", seriesClass.SeriesClassId); _core.ExecuteStoreCommand(query); } } return series; }
public Series GetSeriesById(int seriesId) { var series = new Series(); using (var connection = new EntityConnection("name=CoreContainer")) { _core = new CoreContainer(connection); series = _core.Series .Include("Club") .Include("SeriesClasses") .Where(s => s.SeriesId == seriesId) .FirstOrDefault(); } return series; }
public Series UpdateSeries(Series series, IList<SeriesClass> newClasses) { using (var connection = new EntityConnection("name=CoreContainer")) { _core = new CoreContainer(connection); _core.Series.Attach(_core.Series.Include("SeriesClasses").Single(s => s.SeriesId == series.SeriesId)); _core.Series.ApplyCurrentValues(series); if (series.SeriesClasses != null && series.SeriesClasses.Count > 0) { foreach (var oldClass in series.SeriesClasses) { string query = string.Format("delete from SeriesClass where SeriesClassId = {0}", oldClass.SeriesClassId); _core.ExecuteStoreCommand(query); } } var saveSeries = _core.Series.Single(s => s.SeriesId == series.SeriesId); foreach (var selectedClass in newClasses) { saveSeries.SeriesClasses.Add(new SeriesClass{ClassId = selectedClass.ClassId, SeriesId = selectedClass.SeriesId}); } _core.SaveChanges(); } return series; }
/// <summary> /// Deprecated Method for adding a new object to the Series EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToSeries(Series series) { base.AddObject("Series", series); }
/// <summary> /// Create a new Series object. /// </summary> /// <param name="seriesId">Initial value of the SeriesId property.</param> /// <param name="clubId">Initial value of the ClubId property.</param> /// <param name="name">Initial value of the Name property.</param> /// <param name="dateCreated">Initial value of the DateCreated property.</param> /// <param name="beginDate">Initial value of the BeginDate property.</param> public static Series CreateSeries(global::System.Int32 seriesId, global::System.Int32 clubId, global::System.String name, global::System.DateTime dateCreated, global::System.DateTime beginDate) { Series series = new Series(); series.SeriesId = seriesId; series.ClubId = clubId; series.Name = name; series.DateCreated = dateCreated; series.BeginDate = beginDate; return series; }
public SeriesViewModel SaveNewSeries(SeriesViewModel model) { var series = new Series { Name = model.Name, BeginDate = model.BeginDate, ClubId = model.Club.ClubId, DateCreated = DateTime.Now }; if (model.SelectedClasses != null && model.SelectedClasses.Length > 0) { foreach (var classId in model.SelectedClasses) { var classInSeries = new SeriesClass {SeriesId = model.SeriesId, ClassId = classId}; if (series.SeriesClasses == null) { series.SeriesClasses = new EntityCollection<SeriesClass>(); } series.SeriesClasses.Add(classInSeries); } } _seriesRepository.SaveNewSeries(series); model.SeriesId = series.SeriesId; return model; }