public async void NewTweetPublished(string[] hashtags, DateTime d) { d = d.ToUniversalTime(); DayStats ds = await _repository.GetDayStat(new DateTime(d.Year, d.Month, d.Day, 0, 0, 0)); if (ds == null) { int[][] count = new int[24][]; for (int i = 0; i < 24; i++) { count[i] = new int[60]; } count[d.Hour][d.Minute] = 1; DayStats new_ds = new DayStats() { Date = new DateTime(d.Year, d.Month, d.Day, 0, 0, 0), TotalSamples = d.Hour * 60 + d.Minute, TotalTweets = 1, Counters = count }; await _repository.AddDayStat(new_ds); } else { await _repository.UpdateDayStat(d); } return; }
public static async Task <IEnumerable <DayStats> > GetWeeklyData() { var response = await http.GetAsync("api/ShopSensor/ByDay"); var content = await response.Content.ReadAsStringAsync(); return(DayStats.FromJson(content)); }
public async Task AddDayStat(DayStats item) { try { await _context.DayStats.InsertOneAsync(item); } catch (Exception ex) { // log or manage the exception throw ex; } }
public void AddWorkRecord(WorkRecord record) { // Note: this method doesn't handle case when EndTime is next day var date = record.StarTime.Date; DayStats dayStats; if (!_days.TryGetValue(date, out dayStats)) { dayStats = new DayStats(); _days.Add(date, dayStats); } dayStats.AddWorkRecord(record); }
public async Task <ReplaceOneResult> UpdateDayStat(string id, DayStats item) { try { return(await _context.DayStats .ReplaceOneAsync(n => n.Id.Equals(id) , item , new UpdateOptions { IsUpsert = true })); } catch (Exception ex) { // log or manage the exception throw ex; } }
public Stats() { var json = Input.GetInput(Input.InputMode.Embedded, "LeaderBoard.txt"); var model = JsonConvert.DeserializeObject <LeaderBoardModel>(json); lastDay = 0; personalStats = new List <PersonalStats>(); foreach (var member in model.Members) { var memberDayStats = new List <DayStats>(); foreach (var cdl in member.Value.completion_day_level) { var dayStats = new DayStats() { Day = int.Parse(cdl.Key) }; if (dayStats.Day > lastDay) { lastDay = dayStats.Day; } StarModel sm; cdl.Value.TryGetValue("1", out sm); if (sm != default(StarModel)) { dayStats.finish1 = sm.get_star_ts; } cdl.Value.TryGetValue("2", out sm); if (sm != default(StarModel)) { dayStats.finish2 = sm.get_star_ts; } memberDayStats.Add(dayStats); } personalStats.Add(new PersonalStats() { Name = member.Value.Name, DayStats = memberDayStats }); } Print(); Print2(); }
public void CalculateStatistics() { // calculates the total GDP of the nation for that day float consumerGoods = Chocolates * CHOC_NEEDED + Phones * PHONE_NEEDED + Shirts * SHIRT_NEEDED; // CONSUMPTION float govSpending = 0f; // FISCAL POLICY AND GOVERNMENT SPENDING float capitalGoods = Factories * FACTORY_NEEDED + Trucks * TRUCK_NEEDED + Tools * TOOL_NEEDED; // INVESTMENT float exports = 0f; // IMPLEMENT TRADING float imports = 0f; // IMPLEMENT IMPORTS float GDP = consumerGoods + govSpending + capitalGoods + exports + imports; DayStats.Add(new DayInfo(Shirts, Chocolates, Phones, Factories, Trucks, Tools, Production, Population, Chocolates, Shirts, Phones, Factories, Trucks, Tools, TradeChocolates, TradeShirts, TradePhones, BoughtChocolates, BoughtShirts, BoughtPhones)); Console.WriteLine(Population); }
public void Base() { var WEEKLY = new Table(); WEEKLY.Children.Add(getHeader("Date")); var DAILY = new Table(); DAILY.Children.Add(getHeader("Time")); var folderPath = Path.Combine(Program.BASE_PATH, "internet"); var directory = new DirectoryInfo(folderPath); var files = directory.GetFiles("*.csv"); int mustSkip = files.Length - 7; int i = 0; string today = DateTime.Now.ToString("yy-MM-dd"); foreach (var file in files) { string date = file.Name.Replace(file.Extension, ""); if (today == date) { var diff = DateTime.UtcNow - file.LastWriteTimeUtc; int remainders = (int)diff.TotalMinutes % 60; if (remainders >= 58) { var errPage = getPage(new Paragraph("Speed test is in progress, cannot load data; please check back in 5 minutes")); RespondRaw(errPage, System.Net.HttpStatusCode.Conflict); return; } } var lines = File.ReadAllLines(file.FullName).Skip(1).ToList(); var STATS = new DayStats(date); foreach (var line in lines) { var array = line.Split(','); double dl = double.Parse(array[1]) / 1024; double ul = double.Parse(array[2]) / 1024; double pg = double.Parse(array[3]); if (date == today) { var row = new TableRow(); row.Children.Add(new TableHeader(DateTime.Parse(array[0]).ToShortTimeString())); row.Children.Add(new TableData(dl.ToString("00.00"))); row.Children.Add(new TableData(ul.ToString("00.00"))); row.Children.Add(new TableData(pg.ToString("00"))); DAILY.Children.Add(row); } STATS.Add(dl, ul, pg); } if (i++ < mustSkip) { continue; } WEEKLY.Children.Add(STATS.Row); } var page = getPage(new Paragraph("Average speeds across days."), WEEKLY, new Paragraph("Recorded speeds today"), DAILY); RespondRaw(page.ToString(), 200); }