Add sorting to draftpicks

This commit is contained in:
Cal Corum 2023-07-17 23:08:37 -05:00
parent 8b202fad1a
commit 1f007c654c

View File

@ -31,7 +31,7 @@ async def get_picks(
owner_team_id: list = Query(default=None), orig_team_id: list = Query(default=None),
pick_round_start: Optional[int] = None, pick_round_end: Optional[int] = None, traded: Optional[bool] = None,
overall: Optional[int] = None, overall_start: Optional[int] = None, overall_end: Optional[int] = None,
short_output: Optional[bool] = True):
short_output: Optional[bool] = True, sort: Optional[str] = None, limit: Optional[int] = None):
all_picks = DraftPick.select().where(DraftPick.season == season)
if owner_team_abbrev is not None:
@ -75,6 +75,14 @@ async def get_picks(
all_picks = all_picks.where(DraftPick.overall >= overall_start)
if overall_end is not None:
all_picks = all_picks.where(DraftPick.overall <= overall_end)
if limit is not None:
all_picks = all_picks.limit(limit)
if sort is not None:
if sort == 'order-asc':
all_picks = all_picks.order_by(DraftPick.overall)
elif sort == 'order-desc':
all_picks = all_picks.order_by(-DraftPick.overall)
return_picks = {'count': all_picks.count(), 'picks': []}
for line in all_picks: