Add get_powerball_object function

This commit is contained in:
chris committed 2026-03-02 19:08:24 -05:00
1 parent a0c22807f3
commit b8ce4ac078
1 file changed
+21
+21
View File
@@ -5,6 +5,8 @@
""" """
from datetime import datetime, timedelta from datetime import datetime, timedelta
from data.database import PowerballDraw
def get_next_draw_date(game: str | None, from_date: str | None = None) -> str | None: def get_next_draw_date(game: str | None, from_date: str | None = None) -> str | None:
""" """
@@ -43,3 +45,22 @@ def get_next_draw_date(game: str | None, from_date: str | None = None) -> str |
return_date += timedelta(days=1) return_date += timedelta(days=1)
return return_date.strftime(return_date_format) return return_date.strftime(return_date_format)
def get_powerball_object(draw_date: str, draw_result: dict) -> PowerballDraw:
"""
:param draw_date: date for the drawing data
:param draw_result: drawing results for the draw_date
:return: PowerballDraw object
Examples:
>>> get_powerball_object(draw_date='2026-02-28', draw_result={'main_balls': [6, 20, 35, 54, 65], 'powerball': 10, 'multiplier': 4})
PowerballDraw(draw_date='2026-02-28', main_ball1=6, main_ball2=20, main_ball3=35, main_ball4=54, main_ball5=65, powerball=10, power_play=4)
"""
draw_date = datetime.strptime(draw_date, '%Y-%m-%d').date()
mb1, mb2, mb3, mb4, mb5 = draw_result['main_balls']
pb = draw_result['powerball']
power_play = draw_result['multiplier']
return PowerballDraw(draw_date=draw_date,main_ball1=mb1, main_ball2=mb2, main_ball3=mb3, main_ball4=mb4,
main_ball5=mb5, powerball=pb, power_play=power_play)