public IEnumerable <ServiceRateModel> GetRateData(TimeStep timeStep, string serviceName = "ryan") { var data = _rateRepository.Where(d => d.ServiceName == serviceName); IList <ServiceRate> list = new List <ServiceRate>(); switch (timeStep) { case TimeStep.Second: list = data.Where(d => d.TimeStamp > DateTime.Now.AddSeconds(-10)).ToList(); break; case TimeStep.Minute: var endTime = DateTime.UtcNow.ToDateTime(); var ag = data.Where(d => d.TimeStamp > DateTime.Now.AddMinutes(-10) && d.TimeStamp < endTime).ToList(); list = ag.GroupBy( d => d.TimeStamp.ToDateTime()).ToList() .Select( d => { var m = d.FirstOrDefault(); return(new ServiceRate(m.ServiceName, m.RateTimeStep, d.Key, d.Sum(i => i.Rate))); }).ToList(); break; } return(list.Select(d => d.ToServiceRateModel())); }
public IEnumerable<ServiceRateModel> GetRateData(TimeStep timeStep, string serviceName = "ryan") { var data = _rateRepository.Where(d => d.ServiceName == serviceName); IList<ServiceRate> list = new List<ServiceRate>(); switch (timeStep) { case TimeStep.Second: list = data.Where(d => d.TimeStamp > DateTime.Now.AddSeconds(-10)).ToList(); break; case TimeStep.Minute: var endTime = DateTime.UtcNow.ToDateTime(); var ag = data.Where(d => d.TimeStamp > DateTime.Now.AddMinutes(-10)&&d.TimeStamp < endTime).ToList(); list =ag.GroupBy( d => d.TimeStamp.ToDateTime()).ToList() .Select( d => { var m = d.FirstOrDefault(); return new ServiceRate(m.ServiceName, m.RateTimeStep, d.Key, d.Sum(i => i.Rate)); }).ToList(); break; } return list.Select(d=>d.ToServiceRateModel()); }
public ServiceRateModel GetRecentData(TimeStep timeStep, string serviceName = "ryan") { var data = _rateRepository.Where(d => d.ServiceName == serviceName); switch (timeStep) { case TimeStep.Second: return data.Last(d => d.TimeStamp < DateTime.Now).ToServiceRateModel(); case TimeStep.Minute: var endTime = DateTime.UtcNow.ToDateTime(); return data.Where(d => d.TimeStamp >= endTime.AddMinutes(-1) && d.TimeStamp < endTime) .ToList() .GroupBy(d => d.TimeStamp.ToDateTime()) .Select( d => { var m = d.FirstOrDefault(); return new ServiceRate(m.ServiceName, m.RateTimeStep, d.Key, d.Sum(i => i.Rate)); }).FirstOrDefault().ToServiceRateModel(); } return null; }
public ServiceRateModel GetRecentData(TimeStep timeStep, string serviceName = "ryan") { var data = _rateRepository.Where(d => d.ServiceName == serviceName); switch (timeStep) { case TimeStep.Second: return(data.Last(d => d.TimeStamp < DateTime.Now).ToServiceRateModel()); case TimeStep.Minute: var endTime = DateTime.UtcNow.ToDateTime(); return (data.Where(d => d.TimeStamp >= endTime.AddMinutes(-1) && d.TimeStamp < endTime) .ToList() .GroupBy(d => d.TimeStamp.ToDateTime()) .Select( d => { var m = d.FirstOrDefault(); return new ServiceRate(m.ServiceName, m.RateTimeStep, d.Key, d.Sum(i => i.Rate)); }).FirstOrDefault().ToServiceRateModel()); } return(null); }