public int GenerateTownStats(DateTime statDate) { var end = statDate.AddDays(1); var count = _townRepository.Count(x => x.StatDate >= statDate && x.StatDate < end); if (count == 0) { var townStatList = _statRepository.GetAllList(x => x.StatDate >= statDate && x.StatDate < end) .GetTownStats <CoverageStat, TownCoverageStat>(_eNodebRepository); foreach (var townStat in townStatList.GetDateMergeStats(statDate)) { _townRepository.Insert(townStat); } count = _townRepository.SaveChanges(); } return(count); }
public IEnumerable <AlarmHistory> GetAlarmHistories(DateTime begin, DateTime end) { var results = new List <AlarmHistory>(); while (begin < end.AddDays(1)) { var beginDate = begin.Date; var endDate = begin.Date.AddDays(1); results.Add(new AlarmHistory { DateString = beginDate.ToShortDateString(), Alarms = _repository.Count(x => x.HappenTime >= beginDate && x.HappenTime < endDate), CoverageStats = _coverageStatRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate), TownCoverageStats = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate) }); begin = begin.AddDays(1); } return(results); }
public IEnumerable <CoverageHistory> GetCoverageHistories(DateTime begin, DateTime end) { var results = new List <CoverageHistory>(); while (begin < end.AddDays(1)) { var beginDate = begin.Date; var endDate = begin.Date.AddDays(1); results.Add(new CoverageHistory { DateString = beginDate.ToShortDateString(), CoverageStats = _coverageStatRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate), TownCoverageStats = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.All), TownCoverage800 = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.Band800VoLte), TownCoverage1800 = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.Band1800), TownCoverage2100 = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.Band2100), CollegeCoverageStats = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.College), MarketCoverageStats = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.Market), TransportationCoverageStats = _townCoverageRepository.Count(x => x.StatDate >= beginDate && x.StatDate < endDate && x.FrequencyBandType == FrequencyBandType.Transportation) }); begin = begin.AddDays(1); } return(results); }
public async Task <int> GenerateTownStats(DateTime statDate, FrequencyBandType bandType) { var end = statDate.AddDays(1); var count = _townRepository.Count(x => x.StatDate >= statDate && x.StatDate < end && x.FrequencyBandType == bandType); if (count != 0) { return(count); } var townStatList = _statRepository.GetAllList(x => x.StatDate >= statDate && x.StatDate < end) .GetTownFrequencyQueryStats <CoverageStat, TownCoverageStat>(bandType, _cellRepository, _eNodebRepository); var statList = townStatList.GetDateMergeStats(statDate).ToList(); statList.ForEach(townStat => { townStat.FrequencyBandType = bandType; }); return(await _townRepository.UpdateMany(statList)); }