Skip to content

Commit

Permalink
update lose calculations
Browse files Browse the repository at this point in the history
  • Loading branch information
catgirlinspace committed Aug 2, 2023
1 parent ded9f8e commit df32a57
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions users/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def profile(request, username: str):
splashtag = latest_battles[0].splashtag if latest_battles else None

win_count = user.battles.filter(judgement='WIN').count()
lose_count = user.battles.exclude(judgement__in=['WIN', 'DRAW']).count()
lose_count = user.battles.filter(judgement__in=['LOSE', 'DEEMED_LOSE']).count()
win_rate = win_count / (win_count + lose_count) * 100 if win_count + lose_count else 0
aggregates = Player.objects.filter(team__battle__uploader=user, is_self=True).aggregate(
average_kills=models.Avg('kills'),
Expand All @@ -42,7 +42,8 @@ def profile(request, username: str):

period_ago = datetime.datetime.now() - datetime.timedelta(hours=24)
period_ago_wins = user.battles.filter(judgement='WIN', played_time__gte=period_ago).count()
period_ago_loses = user.battles.exclude(judgement__in=['WIN', 'DRAW']).filter(played_time__gte=period_ago).count()
period_ago_loses = user.battles.filter(judgement__in=['LOSE', 'DEEMED_LOSE']).filter(played_time__gte=period_ago) \
.count()
period_ago_win_rate = period_ago_wins / (period_ago_wins + period_ago_loses) * 100 if \
period_ago_wins + period_ago_loses else None

Expand Down Expand Up @@ -73,12 +74,13 @@ def profile_opengraph(request, username: str):
splashtag = latest_battles[0].splashtag if latest_battles else None

win_count = user.battles.filter(judgement='WIN').count()
lose_count = user.battles.exclude(judgement__in=['WIN', 'DRAW']).count()
lose_count = user.battles.filter(judgement__in=['LOSE', 'DEEMED_LOSE']).count()
win_rate = win_count / (win_count + lose_count) * 100 if win_count + lose_count else 0

period_ago = datetime.datetime.now() - datetime.timedelta(hours=24)
period_ago_wins = user.battles.filter(judgement='WIN', played_time__gte=period_ago).count()
period_ago_loses = user.battles.exclude(judgement__in=['WIN', 'DRAW']).filter(played_time__gte=period_ago).count()
period_ago_loses = user.battles.filter(judgement__in=['LOSE', 'DEEMED_LOSE']).filter(played_time__gte=period_ago) \
.count()
period_ago_win_rate = period_ago_wins / (period_ago_wins + period_ago_loses) * 100 if \
period_ago_wins + period_ago_loses else None

Expand Down

0 comments on commit df32a57

Please sign in to comment.