Add support for exhibition games

This commit is contained in:
Cal Corum 2024-07-14 13:23:15 -05:00
parent 18a6ed2ebd
commit a265b83c63
3 changed files with 8 additions and 6 deletions

View File

@ -86,7 +86,8 @@ class BattingCardRatingsModel(pydantic.BaseModel):
values['groundout_b'] + values['groundout_c'])
if round(total_chances) != 108:
raise ValueError("Must have exactly 108 chances on the card")
raise ValueError(f'BC {values["battingcard_id"]} must have exactly 108 chances on the card '
f'{values["vs_hand"]}; {round(total_chances)} listed')
return values
@ -99,7 +100,7 @@ class RatingsList(pydantic.BaseModel):
ratings: List[BattingCardRatingsModel]
@router.get('', response_model=RatingsReturnList)
@router.get('')
async def get_card_ratings(
team_id: int, ts: str, battingcard_id: list = Query(default=None), cardset_id: list = Query(default=None),
vs_hand: Literal['R', 'L', 'vR', 'vL'] = None, short_output: bool = False, csv: bool = False):
@ -475,7 +476,7 @@ async def post_calc_basic(token: str = Depends(oauth2_scheme)):
return Response(content=csv_file, media_type='text/csv')
@router.get('/{ratings_id}', response_model=BattingCardRatingsModel)
@router.get('/{ratings_id}')
async def get_one_rating(ratings_id: int, token: str = Depends(oauth2_scheme)):
if not valid_token(token):
logging.warning(f'Bad Token: {token}')
@ -495,7 +496,7 @@ async def get_one_rating(ratings_id: int, token: str = Depends(oauth2_scheme)):
return r_data
@router.get('/player/{player_id}', response_model=BattingCardRatingsModel)
@router.get('/player/{player_id}')
async def get_player_ratings(
player_id: int, variant: list = Query(default=None), short_output: bool = False,
token: str = Depends(oauth2_scheme)):

View File

@ -38,7 +38,7 @@ class BattingCardList(pydantic.BaseModel):
cards: List[BattingCardModel]
@router.get('', response_model=BattingCardList)
@router.get('')
async def get_batting_cards(
player_id: list = Query(default=None), player_name: list = Query(default=None),
cardset_id: list = Query(default=None), short_output: bool = False, limit: Optional[int] = None,

View File

@ -753,7 +753,8 @@ async def get_team_record(team_id: int, season: int):
'hall-of-fame': copy.deepcopy(template),
'flashback': copy.deepcopy(template),
'unlimited': copy.deepcopy(template),
'ranked': copy.deepcopy(template)
'ranked': copy.deepcopy(template),
'exhibition': copy.deepcopy(template)
}
for game in all_games: