2015-08-12 06:01:34 +00:00
|
|
|
# coding=utf-8
|
|
|
|
from rest_framework import serializers
|
|
|
|
|
2015-08-17 08:33:26 +00:00
|
|
|
from account.models import User
|
|
|
|
from .models import Submission
|
2015-08-12 06:01:34 +00:00
|
|
|
|
|
|
|
|
|
|
|
class CreateSubmissionSerializer(serializers.Serializer):
|
|
|
|
problem_id = serializers.IntegerField()
|
|
|
|
language = serializers.IntegerField()
|
2015-11-02 12:48:11 +00:00
|
|
|
code = serializers.CharField(max_length=20000)
|
2015-08-12 06:01:34 +00:00
|
|
|
|
2015-08-17 08:33:26 +00:00
|
|
|
|
2016-02-17 10:58:12 +00:00
|
|
|
class OpenAPICreateSubmissionSerializer(serializers.Serializer):
|
|
|
|
appkey = serializers.CharField(max_length=35)
|
|
|
|
problem_id = serializers.IntegerField()
|
|
|
|
language = serializers.IntegerField()
|
|
|
|
code = serializers.CharField(max_length=20000)
|
|
|
|
|
|
|
|
|
2015-08-17 08:33:26 +00:00
|
|
|
class SubmissionSerializer(serializers.ModelSerializer):
|
|
|
|
user = serializers.SerializerMethodField("_get_submission_user")
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
model = Submission
|
|
|
|
fields = ["id", "result", "create_time", "language", "user"]
|
|
|
|
|
|
|
|
def _get_submission_user(self, obj):
|
2015-08-23 10:28:30 +00:00
|
|
|
return User.objects.get(id=obj.user_id).username
|
|
|
|
|
|
|
|
|
2015-09-10 01:11:14 +00:00
|
|
|
class SubmissionhareSerializer(serializers.Serializer):
|
|
|
|
submission_id = serializers.CharField(max_length=40)
|
|
|
|
|
|
|
|
|
2015-09-21 05:56:54 +00:00
|
|
|
class SubmissionRejudgeSerializer(serializers.Serializer):
|
|
|
|
submission_id = serializers.CharField(max_length=40)
|
|
|
|
|
|
|
|
|
2015-10-18 03:45:06 +00:00
|
|
|
class CreateContestSubmissionSerializer(serializers.Serializer):
|
|
|
|
contest_id = serializers.IntegerField()
|
|
|
|
problem_id = serializers.IntegerField()
|
|
|
|
language = serializers.IntegerField()
|
2015-11-02 12:48:11 +00:00
|
|
|
code = serializers.CharField(max_length=20000)
|
2015-10-18 03:45:06 +00:00
|
|
|
|
|
|
|
|