From a9d7bbf367755915e66aefb2e3e3ecce2055bb58 Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Mon, 14 Apr 2025 12:13:35 +0800 Subject: [PATCH] fix --- problem/views/oj.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/problem/views/oj.py b/problem/views/oj.py index 86acded..43808d9 100644 --- a/problem/views/oj.py +++ b/problem/views/oj.py @@ -165,11 +165,14 @@ class ProblemSolvedPeopleCount(APIView): if submission_count == 0: return self.success("0%") today = datetime.today() - total_count = Submission.objects.filter( - create_time__gte=datetime(today.year - 1, today.month, today.day, 0, 0) - ).aggregate(user_count=Count("user_id", distinct=True))["user_count"] + oneYearAge = datetime(today.year - 1, today.month, today.day, 0, 0) + total_count = User.objects.filter( + is_disabled=False, last_login__gte=oneYearAge + ).count() accepted_count = Submission.objects.filter( - problem_id=problem_id, result=JudgeStatus.ACCEPTED + problem_id=problem_id, + result=JudgeStatus.ACCEPTED, + create_time__gte=oneYearAge, ).aggregate(user_count=Count("user_id", distinct=True))["user_count"] if accepted_count < total_count: rate = "%.2f" % ((total_count - accepted_count) / total_count * 100)