From cd52f32662e7f2b415c627eadc4106b8a8e26424 Mon Sep 17 00:00:00 2001
From: agrt56 <andreas.gaertner@mni.thm.de>
Date: Wed, 20 May 2015 19:59:20 +0200
Subject: [PATCH] Task #15866: Add answercount retrieval for all pi rounds.

---
 .../controller/LecturerQuestionController.java        |  8 ++++++++
 .../de/thm/arsnova/services/IQuestionService.java     |  2 ++
 .../java/de/thm/arsnova/services/QuestionService.java | 11 +++++++++++
 3 files changed, 21 insertions(+)

diff --git a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
index fce69373..aeabcb51 100644
--- a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
+++ b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
@@ -428,6 +428,14 @@ public class LecturerQuestionController extends AbstractController {
 		return questionService.getAnswerCount(questionId);
 	}
 
+	@RequestMapping(value = "/{questionId}/allroundanswercount", method = RequestMethod.GET)
+	public List<Integer> getAllAnswerCount(@PathVariable final String questionId) {
+		return Arrays.asList(
+			questionService.getAnswerCount(questionId, 1),
+			questionService.getAnswerCount(questionId, 2)
+		);
+	}
+
 	@RequestMapping(value = "/{questionId}/totalanswercount", method = RequestMethod.GET)
 	public int getTotalAnswerCountByQuestion(@PathVariable final String questionId) {
 		return questionService.getTotalAnswerCountByQuestion(questionId);
diff --git a/src/main/java/de/thm/arsnova/services/IQuestionService.java b/src/main/java/de/thm/arsnova/services/IQuestionService.java
index fdd78b3b..c6fe40ef 100644
--- a/src/main/java/de/thm/arsnova/services/IQuestionService.java
+++ b/src/main/java/de/thm/arsnova/services/IQuestionService.java
@@ -64,6 +64,8 @@ public interface IQuestionService {
 
 	int getAnswerCount(String questionId);
 
+	int getAnswerCount(String questionId, int piRound);
+
 	List<Answer> getFreetextAnswers(String questionId);
 
 	List<Answer> getMyAnswers(String sessionKey);
diff --git a/src/main/java/de/thm/arsnova/services/QuestionService.java b/src/main/java/de/thm/arsnova/services/QuestionService.java
index c7eb0851..6c5dca9d 100644
--- a/src/main/java/de/thm/arsnova/services/QuestionService.java
+++ b/src/main/java/de/thm/arsnova/services/QuestionService.java
@@ -466,6 +466,17 @@ public class QuestionService implements IQuestionService, ApplicationEventPublis
 		return databaseDao.getAnswerCount(question, question.getPiRound());
 	}
 
+	@Override
+	@PreAuthorize("isAuthenticated()")
+	public int getAnswerCount(final String questionId, final int piRound) {
+		final Question question = getQuestion(questionId);
+		if (question == null) {
+			return 0;
+		}
+
+		return databaseDao.getAnswerCount(question, piRound);
+	}
+
 	@Override
 	@PreAuthorize("isAuthenticated()")
 	public int getAbstentionAnswerCount(final String questionId) {
-- 
GitLab