public async void AddMegamillionNumber(Megamillion number) { number.created_on = DateTime.Now; number.modified_on = DateTime.Now; number.megaball = number.megaball.Trim(); number.megaplier = number.megaplier.Trim(); number.jackpot = number.jackpot.Trim(); var latestMegamillion = _ctx.Megamillions.LastOrDefault(); if (latestMegamillion != null) { if (number.draw_date > latestMegamillion.draw_date) { _ctx.Megamillions.Add(number); if (this.env.IsProduction()) { var htmlEmail = $"A new Megamillions Number has been drawn: {number.ball1} - {number.ball2} - {number.ball3} - {number.ball4} - {number.ball5} Megaball: {number.megaball} Megaplier: {number.megaplier}"; await _emailSender.SendEmailAsync("*****@*****.**", "New Megamillions Draw", htmlEmail); } } } }
public async Task <Megamillion> GetLastMegamillion() { Megamillion megamillion = null; HttpClient client = new HttpClient(); client.BaseAddress = new Uri(this.configuration.GetSection("BaseUrl").Value); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = await client.GetAsync("/api/megamillion/GetLatestMegamillion"); if (response.IsSuccessStatusCode) { megamillion = await response.Content.ReadAsAsync <Megamillion>(); return(megamillion); } return(null); }
public void GetMegamillionDetails() { string megaUrl = "http://www.lotteryusa.com/mega-millions/"; HtmlWeb megaWeb = new HtmlWeb(); HtmlDocument megaDoc = megaWeb.Load(megaUrl); IEnumerable <string> megaList = megaDoc.DocumentNode.SelectNodes(@"//ul[@class='draw-result list-unstyled list-inline']/li") .Select(li => li.InnerText); var megaDate = megaDoc.DocumentNode.SelectSingleNode(@"//span[@class='date']/time"); var mDate = megaDate.Attributes["datetime"].Value; var megaJackpot = megaDoc.DocumentNode.SelectSingleNode(@"//span[@class='jackpot-amount']").InnerText; var mNextJackpot = megaDoc.DocumentNode.SelectSingleNode(@"//span[@class='next-jackpot-amount']") .FirstChild.InnerText; var mNextJackpotDate = megaDoc.DocumentNode.SelectSingleNode(@"//span[@class='next-draw-date']").InnerText; foreach (string megaItem in megaList) { Console.WriteLine(megaItem); } Console.WriteLine(mDate.ToString()); Console.WriteLine(megaJackpot); Megamillion mBall = new Megamillion() { ball1 = megaList.ElementAt(0).PadLeft(2, '0'), ball2 = megaList.ElementAt(1).PadLeft(2, '0'), ball3 = megaList.ElementAt(2).PadLeft(2, '0'), ball4 = megaList.ElementAt(3).PadLeft(2, '0'), ball5 = megaList.ElementAt(4).PadLeft(2, '0'), megaball = megaList.ElementAt(5).Replace(" MB", string.Empty).TrimEnd().PadLeft(2, '0'), megaplier = megaList.ElementAt(6).Replace("Megaplier: ", string.Empty).PadRight(2, 'X'), draw_date = Convert.ToDateTime(mDate), jackpot = megaJackpot }; AddMegamillionNumber(mBall); UpdateMegaPrizeJackpot(mBall.jackpot); AddNextMegamillionsJackpot(mNextJackpot, Convert.ToDateTime(mNextJackpotDate)); UpdateMegamillionWinners(); }