public void DumpTownStats(TownPreciseViewContainer container)
        {
            var stats = Mapper.Map <IEnumerable <TownPreciseView>, IEnumerable <TownPreciseCoverage4GStat> >(container.Views);

            foreach (var stat in from stat in stats
                     let item = _regionRepository.GetByTown(stat.TownId, stat.StatTime)
                                where item == null select stat)
            {
                _regionRepository.Insert(stat);
            }
        }
예제 #2
0
        public async Task DumpTownStats(TownPreciseViewContainer container)
        {
            var stats = Mapper.Map <IEnumerable <TownPreciseView>, IEnumerable <TownPreciseStat> >(
                container.Views.Concat(container.Views800)
                .Concat(container.Views1800).Concat(container.Views2100));
            await _regionRepository.UpdateMany(stats);

            if (container.CollegeStats.Any())
            {
                await _regionRepository.UpdateMany(container.CollegeStats);
            }
            if (container.MarketStats.Any())
            {
                await _regionRepository.UpdateMany(container.MarketStats);
            }
            if (container.TransportationStats.Any())
            {
                await _regionRepository.UpdateMany(container.TransportationStats);
            }
        }
예제 #3
0
        public void DumpTownStats(TownPreciseViewContainer container)
        {
            var stats = Mapper.Map <IEnumerable <TownPreciseView>, IEnumerable <TownPreciseCoverage4GStat> >(container.Views);

            foreach (var stat in stats)
            {
                var endTime = stat.StatTime.AddDays(1);
                var item    =
                    _regionRepository.FirstOrDefault(
                        x => x.TownId == stat.TownId && x.StatTime >= stat.StatTime && x.StatTime < endTime);
                if (item == null)
                {
                    _regionRepository.Insert(stat);
                }
                else
                {
                    stat.MapTo(item);
                }
            }
            _regionRepository.SaveChanges();
        }
예제 #4
0
 public async Task Post(TownPreciseViewContainer container)
 {
     await _service.DumpTownStats(container);
 }
 public void Post(TownPreciseViewContainer container)
 {
     _service.DumpTownStats(container);
     PreciseImportService.TownPreciseViews.Clear();
 }
예제 #6
0
 public void Post(TownPreciseViewContainer container)
 {
     _service.DumpTownStats(container);
 }
예제 #7
0
 public void DumpTownStats(TownPreciseViewContainer container)
 {
     var stats = Mapper.Map<IEnumerable<TownPreciseView>, IEnumerable<TownPreciseCoverage4GStat>>(container.Views);
     foreach (var stat in from stat in stats
                          let item = _regionRepository.GetByTown(stat.TownId, stat.StatTime)
                          where item == null select stat)
     {
         _regionRepository.Insert(stat);
     }
     _regionRepository.SaveChanges();
 }
 public void Post(TownPreciseViewContainer container)
 {
     _service.DumpTownStats(container);
     PreciseImportService.TownPreciseViews.Clear();
 }