diff --git a/backend/voting/views.py b/backend/voting/views.py index b1d2c31..16167dc 100644 --- a/backend/voting/views.py +++ b/backend/voting/views.py @@ -1,4 +1,5 @@ from django.shortcuts import render +from django.db.models import Avg from rest_framework.views import APIView from rest_framework.response import Response from playlist.models import Session, Profile, Track, Vote @@ -37,4 +38,5 @@ class SessionInfoView(APIView): def get(self, request, session_id): track_count = len(Track.objects.all()) vote_count = len(Vote.objects.all()) - return Response({'track_count': track_count, 'vote_count': vote_count}) + average_vote = Vote.objects.all().aggregate(Avg("points", default=0))['points__avg'] + return Response({'track_count': track_count, 'vote_count': vote_count, 'average_vote': average_vote}) diff --git a/frontend/src/app/post-game/page.tsx b/frontend/src/app/post-game/page.tsx index 0b30bbb..1ea991c 100644 --- a/frontend/src/app/post-game/page.tsx +++ b/frontend/src/app/post-game/page.tsx @@ -7,12 +7,14 @@ export default function PostGame() { const { sessionId, setSessionId } = useSession(); const [trackCount, setTrackCount] = useState(0); const [voteCount, setVoteCount] = useState(0); + const [averageVote, setAverageVote] = useState(0); async function getInfo() { const { data: info } = await api.sessions.info({ session_id: sessionId }); console.log(info); setTrackCount(info["track_count"]); setVoteCount(info["vote_count"]); + setAverageVote(info["average_vote"]); } useEffect(() => { getInfo(); @@ -21,11 +23,9 @@ export default function PostGame() { return (

Post-game

-

Bedankt voor het stemmen!

-

;)

-

Piemels

{trackCount} tracks

{voteCount} votes

+

{averageVote} average vote

); }