Browse Source

修改获取众审答案统计结果的接口

xujiawei 5 years ago
parent
commit
b3f2049b2f

+ 2 - 2
src/main/java/edu/nju/controller/ReviewAnalyzeController.java

@@ -21,10 +21,10 @@ public class ReviewAnalyzeController {
 
     @RequestMapping(value = "/analyzeItem")
     @ResponseBody
-    public void analyzeItem(String itemId, HttpServletResponse response){
+    public void analyzeItem(String itemId,String reportId,String jobId, HttpServletResponse response){
         try {
             PrintWriter out = response.getWriter();
-            JSONObject jsonObject=reviewAnalyzeService.analyzeItem(itemId);
+            JSONObject jsonObject=reviewAnalyzeService.analyzeItem(itemId,reportId,jobId);
             out.print(jsonObject);
             out.flush();
             out.close();

+ 14 - 10
src/main/java/edu/nju/service/ReviewAnalyzeService.java

@@ -19,11 +19,11 @@ public class ReviewAnalyzeService {
     @Autowired
     ReviewItemDao reviewItemDao;
 
-    public JSONObject analyzeItem(String itemId){
+    public JSONObject analyzeItem(String itemId,String reportId,String jobId){
         JSONObject jsonObject=new JSONObject();
         ReviewItem reviewItem=reviewItemDao.findById(itemId);
         String type=reviewItem.getType();
-        List<ReviewAnswer>reviewAnswers=reviewAnswerDao.getAnswersByItem(itemId);
+        List<ReviewAnswer>reviewAnswers=reviewAnswerDao.getItemReportJobAnswers(itemId,reportId,jobId);
         if(type.equals("File")){
             Map<String,List<String>>map=new HashMap<>();
             for(int i=0;i<reviewAnswers.size();i++){
@@ -50,17 +50,21 @@ public class ReviewAnalyzeService {
             jsonObject=new JSONObject(map);
         }
         else{
-            Map<String,Integer>map=new HashMap<>();
+            Map<Integer,Integer>map=new HashMap<>();
             for(int i=0;i<reviewAnswers.size();i++){
                 ReviewAnswer reviewAnswer=reviewAnswers.get(i);
                 List<String>answers=reviewAnswer.getAnswers();
-                for(int j=0;i<answers.size();j++){
-                    String answerIndex=answers.get(j);
-                    if(map.containsKey(answerIndex)){
-                        map.replace(answerIndex,map.get(answerIndex)+1);
-                    }
-                    else{
-                        map.put(answerIndex,1);
+                for(int j=0;j<answers.size();j++){
+                    if(map.containsKey(j)){
+                        if(answers.get(j).equals("1")){
+                            map.put(j,map.get(j)+1);
+                        }
+                    }else{
+                        if(answers.get(j).equals("1")){
+                            map.put(j,1);
+                        }else {
+                            map.put(j, 0);
+                        }
                     }
                 }
             }