submission exists api

This commit is contained in:
zema1
2017-11-23 19:11:12 +08:00
parent 2b4fb4f368
commit 45953b8f80
6 changed files with 17 additions and 7 deletions

View File

@@ -1,9 +1,10 @@
from django.conf.urls import url
from ..views.oj import SubmissionAPI, SubmissionListAPI, ContestSubmissionListAPI
from ..views.oj import SubmissionAPI, SubmissionListAPI, ContestSubmissionListAPI, SubmissionExistsAPI
urlpatterns = [
url(r"^submission/?$", SubmissionAPI.as_view(), name="submission_api"),
url(r"^submissions/?$", SubmissionListAPI.as_view(), name="submission_list_api"),
url(r"^submission_exists/?$", SubmissionExistsAPI.as_view(), name="submission_exists"),
url(r"^contest_submissions/?$", ContestSubmissionListAPI.as_view(), name="contest_submission_list_api"),
]

View File

@@ -200,3 +200,12 @@ class ContestSubmissionListAPI(APIView):
data = self.paginate_data(request, submissions)
data["results"] = SubmissionListSerializer(data["results"], many=True, user=request.user).data
return self.success(data)
class SubmissionExistsAPI(APIView):
def get(self, request):
if not request.GET.get("problem_id"):
return self.error("Parameter error, problem_id is required")
return self.success(request.user.is_authenticated and
Submission.objects.filter(problem_id=request.GET["problem_id"],
user_id=request.user.id).exists())