Przeglądaj źródła

解决调试中的bug

MengyangDuan 4 lat temu
rodzic
commit
746eff1d92

+ 0 - 1
src/main/java/edu/nju/dao/ReportDao.java

@@ -65,5 +65,4 @@ public class ReportDao {
 		query.addCriteria(Criteria.where("worker_id").is(worker_id));
 		return mongoOperations.find(query, Report.class);
 	}
-	
 }

+ 3 - 4
src/main/java/edu/nju/dao/TestCaseDao.java

@@ -23,7 +23,7 @@ public class TestCaseDao {
 	
 	public TestCase findById(String id) {
 		Query query = new Query();
-		query.addCriteria(Criteria.where("id").is(id));
+		query.addCriteria(Criteria.where("_id").is(id));
 		List<TestCase> list = mongoOperations.find(query, TestCase.class);
 		if(list == null || list.size() == 0) { return null; }
 		else { return list.get(0); }
@@ -33,8 +33,7 @@ public class TestCaseDao {
 		Query query = new Query();
 		query.addCriteria(Criteria.where("report_id").is(report_id));
 		List<TestCase> list = mongoOperations.find(query, TestCase.class);
-		if(list == null || list.size() == 0) { return null; }
-		else { return list; }
+		return list;
 	}
 
 	public List<TestCase> findByReports(List<String>report_ids) {
@@ -46,7 +45,7 @@ public class TestCaseDao {
 	
 	public void updateTestCase(String id, String report_id, String name, String front, String behind, String description) {
 		Query query = new Query();
-		query.addCriteria(Criteria.where("id").is(id));
+		query.addCriteria(Criteria.where("_id").is(id));
 		List<TestCase> list = mongoOperations.find(query, TestCase.class);
 		if(list != null && list.size() != 0) {
 			TestCase testCase = list.get(0);

+ 1 - 2
src/main/java/edu/nju/entities/Bug.java

@@ -6,8 +6,7 @@ import org.springframework.data.mongodb.core.index.Indexed;
 import org.springframework.data.mongodb.core.mapping.Document;
 
 @Document
-public class
-Bug implements java.io.Serializable{
+public class Bug implements java.io.Serializable{
 	/**
 	 * 
 	 */

+ 19 - 15
src/main/java/edu/nju/service/AnalyzeService.java

@@ -786,40 +786,44 @@ public class AnalyzeService {
 		}
 		List<TestCase>testCases=testCaseDao.findByReports(reportIds);
 		testCaseNum+=testCases.size();
-		List<ThumsUp>thumsUps=thumsUpDao.findByReports(reportIds);
+		List<BugMirror>bugMirrors=mdao.findByCase(caseTakeId);
 		int likeNum=0;
 		int dislikeNum=0;
-		for(ThumsUp thumsUp:thumsUps){
-			if(thumsUp.getThums()!=null){
-				likeNum+=thumsUp.getThums().size();
+		for(BugMirror bugMirror:bugMirrors){
+			if(bugMirror.getGood()!=null){
+				likeNum+=bugMirror.getGood().size();
 			}
-			if(thumsUp.getDiss()!=null){
-				dislikeNum+=thumsUp.getDiss().size();
+			if(bugMirror.getBad()!=null){
+				dislikeNum+=bugMirror.getBad().size();
 			}
 		}
 
-		Map<String,Integer>workerDistribution=new HashMap<>();
 		List<String>bugIds=new ArrayList<>();
+		Map<String,String>bugWorkerMap=new HashMap<>();
 		for(Bug bug:bugs){
 			bugIds.add(bug.getId());
 			String reportId=bug.getReport_id();
 			if(reportId!=null) {
 				String workerId=reportWorkerMap.get(reportId);
 				if (workerId!=null) {
-					int grade=0;
-					if (workerDistribution.containsKey(workerId)) {
-						workerDistribution.replace(workerId, workerDistribution.get(workerId) + grade);
-					} else {
-						workerDistribution.put(workerId, grade);
-					}
+					bugWorkerMap.put(bug.getId(),workerId);
 				}
 			}
 		}
 
 		Map<Integer,Integer>gradeDistribution=new HashMap<>();
+		Map<String,Integer>workerDistribution=new HashMap<>();
 		List<BugScore>bugScores=bsdao.findByIds(bugIds);
 		for(BugScore bugScore:bugScores){
 			int grade = bugScore.getGrade();
+			String workerId=bugWorkerMap.get(bugScore.getId());
+			if(workerId!=null){
+				if (workerDistribution.containsKey(workerId)) {
+					workerDistribution.replace(workerId, workerDistribution.get(workerId) + grade);
+				} else {
+					workerDistribution.put(workerId, grade);
+				}
+			}
 			if (gradeDistribution.containsKey(grade)) {
 				gradeDistribution.replace(grade, gradeDistribution.get(grade) + 1);
 			} else {
@@ -873,9 +877,9 @@ public class AnalyzeService {
 						provinceDistribute.put(province, 1);
 					}
 				}
+				WorkerVO workerVO=new WorkerVO(workerId,name,school,grade);
+				workerRank.add(workerVO);
 			}
-			WorkerVO workerVO=new WorkerVO(workerId,name,school,grade);
-			workerRank.add(workerVO);
 		}
 		JSONArray workerDistribute=new JSONArray();
 		for(Map.Entry<String, Integer> entry : provinceDistribute.entrySet()){