Merge pull request #190 from KiwiTechLLC/sprint4

add correct and attempt answer
This commit is contained in:
dilipshrivastwa-kiwi
2023-08-11 12:21:47 +05:30
committed by GitHub
2 changed files with 21 additions and 2 deletions

View File

@ -361,7 +361,7 @@ class JuniorPointsListAPIView(viewsets.ModelViewSet):
"""profile view"""
try:
update_positions_based_on_points()
queryset = JuniorTask.objects.filter(junior__auth__email=self.request.user).last()
queryset = JuniorPoints.objects.filter(junior__auth__email=self.request.user).last()
# update position of junior
serializer = JuniorPointsSerializer(queryset)
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)

View File

@ -247,6 +247,9 @@ class ArticleQuestionSerializer(serializers.ModelSerializer):
id = serializers.IntegerField(required=False)
options = SurveyOptionSerializer(many=True)
is_attempt = serializers.SerializerMethodField('get_is_attempt')
correct_answer = serializers.SerializerMethodField('get_correct_answer')
attempted_answer = serializers.SerializerMethodField('get_attempted_answer')
def get_is_attempt(self, obj):
"""attempt question or not"""
@ -256,12 +259,28 @@ class ArticleQuestionSerializer(serializers.ModelSerializer):
return junior_article_obj.is_attempt
return False
def get_correct_answer(self, obj):
"""attempt question or not"""
ans_obj = SurveyOption.objects.filter(survey=obj, is_answer=True).last()
if ans_obj:
return ans_obj.id
return str("None")
def get_attempted_answer(self, obj):
"""attempt question or not"""
context_data = self.context.get('user')
junior_article_obj = JuniorArticlePoints.objects.filter(junior__auth=context_data,
question=obj, is_answer_correct=True).last()
if junior_article_obj:
return junior_article_obj.submitted_answer.id
return None
class Meta:
"""
meta class
"""
model = ArticleSurvey
fields = ('id', 'question', 'options', 'points', 'is_attempt')
fields = ('id', 'question', 'options', 'points', 'is_attempt', 'correct_answer', 'attempted_answer')
class StartAssessmentSerializer(serializers.ModelSerializer):
"""