Add Logic for EuroMillions Draw Machine.

This commit is contained in:
2024-02-13 13:17:33 +00:00
parent 0ab60324fd
commit e265958434

View File

@@ -0,0 +1,41 @@
using HtmlAgilityPack;
using lottery_co_uk_scraper.core.Models;
using lottery_co_uk_scraper.Utilities;
namespace lottery_co_uk_scraper.EuroMillions
{
internal class DrawMachine
{
public static string ProcessMachineUsed(HtmlDocument doc, EurosResult eurosResult)
{
try
{
var machineName = doc.DocumentNode.Descendants("td")
.Where(x => x.InnerHtml.Contains("<strong>Ball Machine Used:</strong>"))
.Select(x => x.InnerText.Split(':')[1].Trim())
.FirstOrDefault();
if (machineName != null)
{
AssignDrawMachineToModelProperty(nameof(eurosResult.MachineUsed), machineName, eurosResult);
return machineName;
}
else
{
return null;
}
}
catch (Exception ex)
{
// ToDo: Logger
return ex.Message;
}
}
public static void AssignDrawMachineToModelProperty(string propertyName, string machineName, EurosResult eurosResult)
{
PropertyManager.SetProperty(propertyName, eurosResult, machineName);
}
}
}