From 1315bc42254f6f8b9652de9d514f3cc9da8047e6 Mon Sep 17 00:00:00 2001 From: Xeniac Date: Fri, 24 Nov 2017 19:47:28 +0100 Subject: [PATCH] Fixed Hanchan count and filter from last merge. --- src/mahjong_ranking/managers.py | 6 +++--- src/mahjong_ranking/models.py | 7 ++++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/mahjong_ranking/managers.py b/src/mahjong_ranking/managers.py index 674f734..07a911b 100644 --- a/src/mahjong_ranking/managers.py +++ b/src/mahjong_ranking/managers.py @@ -23,8 +23,8 @@ class HanchanManager(models.Manager): :return: QuerySet Object """ if user: - return self.user_hanchans(user, confirmed=True, until=until, - **filter_args) + return self.user_hanchans( + user, confirmed=True, since=since, until=until, **filter_args) hanchans = self.filter(confirmed=True, **filter_args) if since: hanchans = hanchans.filter(start__gt=since) @@ -101,7 +101,7 @@ class HanchanManager(models.Manager): ) queryset = queryset.filter(**filter_args) if since: - queryset = queryset.filter(start__gte=since) + queryset = queryset.filter(start__gt=since) if until: queryset = queryset.filter(start__lte=until) queryset = queryset.select_related().order_by('-start') diff --git a/src/mahjong_ranking/models.py b/src/mahjong_ranking/models.py index 8ea23f2..3caf08d 100644 --- a/src/mahjong_ranking/models.py +++ b/src/mahjong_ranking/models.py @@ -475,6 +475,11 @@ class KyuDanRanking(models.Model): "recalculating Kyu/Dan points for %(user)s since %(since)s...", {'user': self.user, 'since': str(since)} ) + if since: + valid_hanchans = valid_hanchans.filter(start__gt=since) + if until: + valid_hanchans = valid_hanchans.filter(start__lte=until) + self.hanchan_count += valid_hanchans.count() for hanchan in valid_hanchans: hanchan.get_playerdata(self.user) @@ -583,7 +588,7 @@ class KyuDanRanking(models.Model): self.kyu = 10 elif self.kyu_points > 50: self.dan = 1 - self.kyu = None + self.kyu = 0 self.dan_points = 0 self.kyu_points = 0 else: