Cleanup
This commit is contained in:
17
src/crud.py
17
src/crud.py
@@ -1,7 +1,7 @@
|
||||
from fastapi import HTTPException
|
||||
from sqlalchemy import desc
|
||||
from sqlalchemy.dialects.postgresql import array
|
||||
from sqlalchemy.orm import Session
|
||||
from fastapi import HTTPException
|
||||
|
||||
from enums import MinigameEnum
|
||||
from models import CourseProgress, HighScore, User
|
||||
@@ -31,11 +31,11 @@ def create_user(db: Session, user: UserCreate):
|
||||
return db_user
|
||||
|
||||
|
||||
def get_high_scores(db: Session, minigame: MinigameEnum, n_highest: int):
|
||||
def get_high_scores(db: Session, minigame: MinigameEnum, nr_highest: int):
|
||||
user_high_scores = []
|
||||
|
||||
if not n_highest:
|
||||
n_highest = DEFAULT_NR_HIGH_SCORES
|
||||
if not nr_highest:
|
||||
nr_highest = DEFAULT_NR_HIGH_SCORES
|
||||
|
||||
if not minigame:
|
||||
minigame = MinigameEnum.SpellingBee
|
||||
@@ -44,7 +44,7 @@ def get_high_scores(db: Session, minigame: MinigameEnum, n_highest: int):
|
||||
db.query(HighScore)
|
||||
.filter(HighScore.minigame == minigame)
|
||||
.order_by(desc(HighScore.score_value))
|
||||
.limit(n_highest)
|
||||
.limit(nr_highest)
|
||||
.all()
|
||||
)
|
||||
for high_score in high_scores:
|
||||
@@ -56,7 +56,7 @@ def get_high_scores(db: Session, minigame: MinigameEnum, n_highest: int):
|
||||
|
||||
|
||||
def create_high_score(db: Session, high_score: HighScoreCreate):
|
||||
owner = db.query(User).filter(User.user_id == high_score.owner_id).first()
|
||||
owner = db.query(User).filter(User.user_id == high_score.owner_id).first()
|
||||
if not owner:
|
||||
raise HTTPException(status_code=400, detail="User does not exist")
|
||||
old_high_score = (
|
||||
@@ -68,10 +68,7 @@ def create_high_score(db: Session, high_score: HighScoreCreate):
|
||||
.first()
|
||||
)
|
||||
if old_high_score:
|
||||
print("Older high score found")
|
||||
print(old_high_score.minigame)
|
||||
if old_high_score.score_value < high_score.score_value:
|
||||
print("Older score is lower")
|
||||
db_high_score = HighScore(
|
||||
score_value=high_score.score_value,
|
||||
minigame=high_score.minigame,
|
||||
@@ -83,7 +80,6 @@ def create_high_score(db: Session, high_score: HighScoreCreate):
|
||||
db.refresh(db_high_score)
|
||||
return db_high_score
|
||||
else:
|
||||
print("Older score is higher")
|
||||
return old_high_score
|
||||
else:
|
||||
db_high_score = HighScore(
|
||||
@@ -95,4 +91,3 @@ def create_high_score(db: Session, high_score: HighScoreCreate):
|
||||
db.commit()
|
||||
db.refresh(db_high_score)
|
||||
return db_high_score
|
||||
|
||||
|
||||
@@ -28,4 +28,8 @@ class MinigameEnum(StrEnum):
|
||||
|
||||
class CourseEnum(StrEnum):
|
||||
Fingerspelling = "Fingerspelling"
|
||||
Basics = "Basics"
|
||||
Hobbies = "Hobbies"
|
||||
Animals = "Animals"
|
||||
Colors = "Colors"
|
||||
FruitsVegetables = "FruitsVegetables"
|
||||
|
||||
Reference in New Issue
Block a user