|
@@ -71,7 +71,7 @@ class StaffExamLogSerializer(serializers.ModelSerializer):
|
|
|
|
|
|
class Meta:
|
|
|
model = ExamLog
|
|
|
- fields = ('type', 'exampaper', 'user', 'exam_time', 'exampaper_name', 'exam_time', 'submit_time',
|
|
|
+ fields = ('id', 'type', 'exampaper', 'user', 'exam_time', 'exampaper_name', 'exam_time', 'submit_time',
|
|
|
'scores', 'right_count','wrong_count',)
|
|
|
|
|
|
def get_right_count(self, obj):
|
|
@@ -80,6 +80,31 @@ class StaffExamLogSerializer(serializers.ModelSerializer):
|
|
|
def get_wrong_count(self, obj):
|
|
|
return obj.exampaper.question_total_count - (obj.single_answer_count + obj.multiple_answer_count + obj.fill_answer_count + obj.judgment_answer_count)
|
|
|
|
|
|
+class StaffExamLogRetrieveSerializer(serializers.ModelSerializer):
|
|
|
+ exampaper_name = serializers.CharField(source='exampaper.name', read_only=True)
|
|
|
+ question_total_count = serializers.CharField(source='exampaper.question_total_count', read_only=True)
|
|
|
+ question_total_scores = serializers.CharField(source='exampaper.question_total_scores', read_only=True)
|
|
|
+
|
|
|
+ single_total_count = serializers.CharField(source='exampaper.single_total_count', read_only=True)
|
|
|
+ multiple_total_count = serializers.CharField(source='exampaper.multiple_total_count', read_only=True)
|
|
|
+ fill_total_count = serializers.CharField(source='exampaper.fill_total_count', read_only=True)
|
|
|
+ judgment_total_count = serializers.CharField(source='exampaper.judgment_total_count', read_only=True)
|
|
|
+
|
|
|
+ single_total_scores = serializers.CharField(source='exampaper.single_total_scores', read_only=True)
|
|
|
+ multiple_total_scores = serializers.CharField(source='exampaper.multiple_total_scores', read_only=True)
|
|
|
+ fill_total_scores = serializers.CharField(source='exampaper.fill_total_scores', read_only=True)
|
|
|
+ judgment_total_scores = serializers.CharField(source='exampaper.judgment_total_scores', read_only=True)
|
|
|
+
|
|
|
+ total_right_count = serializers.SerializerMethodField()
|
|
|
+
|
|
|
+ class Meta:
|
|
|
+ model = ExamLog
|
|
|
+ fields = "__all__"
|
|
|
+
|
|
|
+ def get_total_right_count(self, obj):
|
|
|
+ return obj.single_answer_count + obj.multiple_answer_count + obj.fill_answer_count + obj.judgment_answer_count
|
|
|
+
|
|
|
+
|
|
|
class ExamAnswerLogSerializer(serializers.ModelSerializer):
|
|
|
item = serializers.SerializerMethodField()
|
|
|
|