diff --git a/exam/urls/admin.py b/exam/urls/admin.py index d8702d7..9290949 100644 --- a/exam/urls/admin.py +++ b/exam/urls/admin.py @@ -12,6 +12,8 @@ from exam.views.statistics import GetNowCourseExamAPI from exam.views.statistics import GetLastCourseExamAPI from exam.views.statistics import GetAllProblemAPI +from exam.views.admin import GetExamProblemAPI +from exam.views.admin import GetExamByIdAPI urlpatterns = [ url(r"get-allcontent/?$", GetAllContentAPI.as_view(), name="get-allcontent"), @@ -26,4 +28,6 @@ url(r"get-nowexam/?$",GetNowCourseExamAPI.as_view(), name="get-nowexam"), url(r"get-lastexam/?$",GetLastCourseExamAPI.as_view(), name="get-lastexam"), url(r"get-allproblem/?$", GetAllProblemAPI.as_view(), name="get-allproblem"), + url(r"get-examproblem/?$", GetExamProblemAPI.as_view(), name="get-examproblem"), + url(r"get-exambyid/?$", GetExamByIdAPI.as_view(), name="get-exambyid"), ] \ No newline at end of file diff --git a/exam/views/admin.py b/exam/views/admin.py index 48291f0..9d327d8 100644 --- a/exam/views/admin.py +++ b/exam/views/admin.py @@ -163,3 +163,27 @@ def post(self, request): except Exception as e: # not found return self.error(msg=str(e), err=e.args) + + +class GetExamProblemAPI(APIview): +response_class = JSONResponse + def get(self, request): + + exam_id=request.GET.get('exam_id') + type=request.GET.get('type') + try: + problem_list = ExamProblem.objects.get(exam_id =exam_id,type = type ) + return self.success(problem_list) + except Exception as e: + return self.error(msg=str(e), err=e.args) + +class GetExamByIdAP(APIview): +response_class = JSONResponse + def get(self, request): + + exam_id=request.GET.get('exam_id') + try: + exam = Exam.objects.get(exam_id =exam_id) + return self.success(exam) + except Exception as e: + return self.error(msg=str(e), err=e.args) \ No newline at end of file diff --git a/oj/urls.py b/oj/urls.py index 70c0424..c3871a0 100644 --- a/oj/urls.py +++ b/oj/urls.py @@ -42,4 +42,5 @@ url(r"^teacher/submission/statistics/", include("submission.urls.statistics")), url(r"^distribution/", include("submission.urls.statistics")), + url(r"^teacher/exam/", include("exam.urls.admin")), ]