Pārlūkot izejas kodu

1. 对report的originalId部分修改,修改分配信息的时候实际上是用originalId进行对应
2. 添加BugRevurrent和BugSeverity对数据库属性进行包装
3。添加uploadJob和uploadPaper的提示信息

MengyangDuan 5 gadi atpakaļ
vecāks
revīzija
84ae3f96e7

+ 1 - 1
src/main/java/edu/nju/entities/ReviewGroup.java

@@ -22,9 +22,9 @@ public class ReviewGroup implements java.io.Serializable{
 
     private String job_id;
 
-    //此处的report_id实际上是paper_id+original_id
     private List<String> report_id;
 
+    //实际上是paper_id-original_id
     private List<String>paper_original_id;
 
     private List<String>original_id;

+ 23 - 0
src/main/java/edu/nju/model/BugRecurrent.java

@@ -0,0 +1,23 @@
+package edu.nju.model;
+
+public enum BugRecurrent {
+    其他(0),无规律浮现(1),小概率浮现(2),大概率复现(3),必现(4);
+    private int id;
+
+    BugRecurrent(int id) {
+        this.id=id;
+    }
+
+    public int getId(){
+        return this.id;
+    }
+
+    public static BugRecurrent getValue(int code){
+        for(BugRecurrent bugRecurrent:values()){
+            if(bugRecurrent.getId()==code){
+                return bugRecurrent;
+            }
+        }
+        return null;
+    }
+}

+ 23 - 0
src/main/java/edu/nju/model/BugSeverity.java

@@ -0,0 +1,23 @@
+package edu.nju.model;
+
+public enum BugSeverity {
+    待定(0),较轻(1),一般(2),严重(3),紧急(4);
+    private int id;
+
+    BugSeverity(int i) {
+        this.id=id;
+    }
+
+    public int getId(){
+        return this.id;
+    }
+
+    public static BugSeverity getValue(int code){
+        for(BugSeverity bugSeverity:values()){
+            if(bugSeverity.getId()==code){
+                return bugSeverity;
+            }
+        }
+        return null;
+    }
+}

+ 12 - 5
src/main/java/edu/nju/service/ExtraService.java

@@ -4,10 +4,13 @@ import java.io.File;
 import java.io.FileOutputStream;
 import java.io.OutputStreamWriter;
 import java.io.Writer;
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 import edu.nju.dao.*;
 import edu.nju.entities.*;
+import edu.nju.model.BugRecurrent;
+import edu.nju.model.BugSeverity;
 import edu.nju.util.FormatJson;
 import edu.nju.util.HTTP;
 import edu.nju.util.OssAliyun;
@@ -207,16 +210,20 @@ public class ExtraService {
 				description+=bug.getDescription()+"\n";
 				description+=bug.getBug_page()+"\n";
 				description+=bug.getBug_category()+"\n";
-				description+=bug.getSeverity()+"\n";
-				description+=bug.getRecurrent()+"\n";
-				description+=bug.getCreate_time_millis()+"\n";
+				BugSeverity bugSeverity=BugSeverity.getValue(bug.getSeverity());
+				description+=bugSeverity+"\n";
+				BugRecurrent bugRecurrent=BugRecurrent.getValue(bug.getRecurrent());
+				description+=bugRecurrent+"\n";
+				SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+				String dateStr = dateformat.format(bug.getCreate_time_millis());
+				description+=dateStr+"\n";
 				if(mirror==null){
 					description+="0\n";
 					description+="0\n";
 				}
 				else {
-					description += mirror.getGood().size() + "\n";
-					description += mirror.getBad().size();
+					description += "good: "+mirror.getGood().size() + "\n";
+					description += "bad: "+mirror.getBad().size();
 				}
 				jsonObject.put("description",description);
 				String[]urlArray=new String[1];

+ 4 - 4
src/main/java/edu/nju/service/ReviewJobService.java

@@ -55,7 +55,7 @@ public class ReviewJobService {
             ReviewJob newReviewJob = new ReviewJob(examId, caseId, name, description, Long.toString(System.currentTimeMillis()), paperId,reviewPaper.getId(), startTime, endTime, "", isCrossValidation, validationNum,maxWorker);
             jobId = jobDao.save(newReviewJob);
         }
-        if(workerDistribution.equals("")){
+        if(workerDistribution.equals("")||workerDistribution.equals("[]")){
             List<String>workerIds=new ArrayList<>();
             for(int i=0;i<workerList.size();i++){
                 String workerIndex=workerList.get(i);
@@ -93,7 +93,7 @@ public class ReviewJobService {
                 JSONArray jsonArray2=jsonObject.getJSONArray("report");
             }
         }catch (Exception e){
-            return e.getMessage();
+            return "分配信息不正确:"+e.getMessage();
         }
         return "success";
     }
@@ -116,7 +116,7 @@ public class ReviewJobService {
             List<String>originalIds=new ArrayList<>();
             for(int j=0;j<jsonArray2.length();j++){
                 String originalId=String.valueOf(jsonArray2.get(j));
-                String paperOriginalId=paperId+"_"+originalId;
+                String paperOriginalId=paperId+"-"+originalId;
                 String reportId=reportDao.findReportByPaperOriginalId(paperId,originalId).getId();
                 paperOriginalIds.add(paperOriginalId);
                 reportIds.add(reportId);
@@ -212,7 +212,7 @@ public class ReviewJobService {
             jsonObject.put("name",reviewGroup.getName());
             jsonObject.put("description",reviewGroup.getDescription());
             jsonObject.put("worker",reviewGroup.getWorkers_id());
-            jsonObject.put("report",reviewGroup.getPaper_original_id());
+            jsonObject.put("report",reviewGroup.getOriginal_id());
             jsonArray.put(jsonObject);
         }
         return jsonArray;

+ 1 - 28
src/main/java/edu/nju/service/ReviewPaperService.java

@@ -288,8 +288,6 @@ public class ReviewPaperService {
                 String reportName=report.getString("name");
                 String originalId=report.getString("original_id");
                 String reportDescription=report.getString("description");
-//                JSONArray imgUrls=report.getJSONArray("img_url");
-//                JSONArray fileUrls=report.getJSONArray("file_url");
 
             }
 
@@ -329,33 +327,8 @@ public class ReviewPaperService {
                     JSONArray options=item.getJSONArray("options");
                 }
             }
-
-
-//			JSONArray groupList=jsonObject.getJSONArray("group_list");
-//			Set<String>workers=new HashSet<>();
-//			for(int i=0;i<groupList.length();i++){
-//				JSONObject groupObject=groupList.getJSONObject(i);
-//				String groupName=groupObject.getString("name");
-//				String groupDescription=groupObject.getString("description");
-//				JSONArray workerList=groupObject.getJSONArray("worker_list");
-//				for(int j=0;j<workerList.length();j++){
-//					String workerId=String.valueOf(workerList.get(j));
-//					if(workers.contains(workerId)){
-//						throw new Exception("同一个worker不能属于不同的group");
-//					}else{
-//						workers.add(workerId);
-//					}
-//				}
-//				JSONArray workerReportList=groupObject.getJSONArray("report_list");
-//				for(int j=0;j<workerReportList.length();j++){
-//					int reportIndex= Integer.parseInt(String.valueOf(workerReportList.get(j)));
-//					if(!reportIndexs.contains(reportIndex)){
-//						throw new Exception("group_report_list中包含不存在的report ");
-//					}
-//				}
-//			}
         }catch (Exception e){
-            return e.getMessage();
+            return "paperJson格式不正确:"+e.getMessage();
         }
         return result;
     }