From b8ce4ac078fc387716961a6b22b501d45b982f9a Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Mon, 2 Mar 2026 19:08:24 -0500 Subject: [PATCH] Add get_powerball_object function --- util/drawing.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/util/drawing.py b/util/drawing.py index 23df89f..bfd6a83 100644 --- a/util/drawing.py +++ b/util/drawing.py @@ -5,6 +5,8 @@ """ 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: """ @@ -43,3 +45,22 @@ def get_next_draw_date(game: str | None, from_date: str | None = None) -> str | return_date += timedelta(days=1) 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)