Example #1
0
 public void AddFlatSeries(FlatSeries flatSeries)
 {
     using (var context = contextMaker.Invoke())
     {
         context.FlatSeries.Add(flatSeries);
         context.SaveChanges();
     }
 }
Example #2
0
        private void SaveFlatSeries(IEnumerable <Flat> flats)
        {
            var flatSeries = new FlatSeries();

            flatSeries.Amount           = flats.Count();
            flatSeries.AvgPrice         = flats.Average(x => x.TotalPrice);
            flatSeries.AvgPricePerMeter = flats.Average(x => x.Surface) == 0 ? 0 : flatSeries.AvgPrice / flats.Average(x => x.Surface);

            flatSeries.BestValueId = flats.MinBy(x => x.Surface == 0 ? 0 : (x.TotalPrice / x.Surface)).FirstOrDefault()?.Id;

            flatSeries.BiggestId       = flats.MaxBy(x => x.Surface).FirstOrDefault()?.Id;
            flatSeries.MostExpensiveId = flats.MaxBy(x => x.TotalPrice).FirstOrDefault()?.Id;

            flatSeries.SmallestId = flats.MinBy(x => x.Surface).FirstOrDefault()?.Id;
            flatSeries.CheapestId = flats.MinBy(x => x.TotalPrice).FirstOrDefault()?.Id;

            flatSeries.DateFetched = DateTime.Now.Date;

            _otoDomRepository.AddFlatSeries(flatSeries);
        }