public static MetaStatistics GetMetaStatistics(Statistics stats) { var metaStats = new MetaStatistics(); using (var db = Database.Open("Stats")) { int? hourDownloads = stats.TotalDownloads - (int?)db.QueryValue("Select top 1 Downloads from Stats where LogTime < DateAdd(hh, -1, GETUTCDATE()) order by LogTime desc"); int? dayPackages = stats.TotalCount - (int?)db.QueryValue("Select top 1 TotalPackages from Stats where LogTime < DateAdd(day, -1, GETUTCDATE()) order by LogTime desc"); if (dayPackages.HasValue) { metaStats.DayPackages = Math.Max(0, dayPackages.Value); } if (hourDownloads.HasValue) { metaStats.HourDownloads = Math.Max(0, hourDownloads.Value); } } return metaStats; }
public static MetaStatistics GetMetaStatistics(Statistics stats) { var metaStats = new MetaStatistics(); using (var db = Database.Open("Stats")) { int?hourDownloads = stats.TotalDownloads - (int?)db.QueryValue("Select top 1 Downloads from Stats where LogTime < DateAdd(hh, -1, GETUTCDATE()) order by LogTime desc"); int?dayPackages = stats.TotalCount - (int?)db.QueryValue("Select top 1 TotalPackages from Stats where LogTime < DateAdd(day, -1, GETUTCDATE()) order by LogTime desc"); if (dayPackages.HasValue) { metaStats.DayPackages = Math.Max(0, dayPackages.Value); } if (hourDownloads.HasValue) { metaStats.HourDownloads = Math.Max(0, hourDownloads.Value); } } return(metaStats); }