From 765af52bd938a0b509e3d01dbd79c897b906ad51 Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Sun, 30 Nov 2025 18:41:51 +0800 Subject: [PATCH] filter by class --- problemset/views/oj.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/problemset/views/oj.py b/problemset/views/oj.py index 38ebaa2..9cd0ac1 100644 --- a/problemset/views/oj.py +++ b/problemset/views/oj.py @@ -307,7 +307,15 @@ class ProblemSetUserProgressAPI(APIView): return self.error("题单不存在") # 获取所有参与该题单的用户进度 - progresses = ProblemSetProgress.objects.filter(problemset=problem_set).order_by( + progresses = ProblemSetProgress.objects.filter(problemset=problem_set) + + # 班级过滤 + class_name = request.GET.get("class_name", "").strip() + if class_name: + progresses = progresses.filter(user__class_name=class_name) + + # 排序 + progresses = progresses.order_by( "-is_completed", "-progress_percentage", "join_time" )