浏览代码

1. 对新出现的人如果不在任何组则将加入默认组,将所有的report分给他
2。uploadJobByJson时如果有相关job则进行更新,否则添加

MengyangDuan 5 年之前
父节点
当前提交
30ed857501

+ 8 - 1
src/main/java/edu/nju/service/ReviewJobService.java

@@ -163,7 +163,14 @@ public class ReviewJobService {
             for(int i=0;i<reports.size();i++){
                 reportIds.add(reports.get(i).getId());
             }
-            JSONObject jsonObject=uploadJob("",examId,caseId,jobName,jobDescription,paperId,startTime,endTime,0,0,workerList,"",0);
+            ReviewJob reviewJob=findJobByExamCase(examId,caseId);
+            JSONObject jsonObject=new JSONObject();
+            if(reviewJob==null) {
+                jsonObject = uploadJob("", examId, caseId, jobName, jobDescription, paperId, startTime, endTime, 0, 0, workerList, "", 0);
+            }
+            else {
+                jsonObject = updateJob(reviewJob.getId(), jobName,jobDescription,paperId,startTime,endTime,0, 0, workerList, "", 0);
+            }
             // groupDao.save(new ReviewGroup("default","",workerList,jobId,reportIds));
             if(jsonObject.getString("status").equals("success")) {
                 messageVO.setStatus("200");

+ 14 - 4
src/main/java/edu/nju/service/ReviewPaperService.java

@@ -378,10 +378,20 @@ public class ReviewPaperService {
             String url="http://47.99.140.117:"+port+"/report/review/job/"+jobId+"/"+workerId+"/0";
             return url;
         }
-        String workerId=reviewWorkerDao.save(new ReviewWorker(workerIndex,paperId,examId,jobId));
-        String url="http://47.99.140.117:"+port+"/report/review/job/"+jobId+"/"+workerId+"/0";
-        return url;
-        // TODO: 2019/12/13 对reviewWorker为null的情况返回错误提示 
+        else {
+            String workerId = reviewWorkerDao.save(new ReviewWorker(workerIndex, paperId, examId, jobId));
+            List<ReviewReport> reviewReports = getReportsByPaperId(paperId);
+            List<String> reportIds = new ArrayList<>();
+            for (int i = 0; i < reviewReports.size(); i++)
+                reportIds.add(reviewReports.get(i).getId());
+            ReviewGroup reviewGroup = reviewGroupDao.getGroupByReports(reportIds);
+            List<String> workerIds = reviewGroup.getWorkers_id();
+            workerIds.add(workerId);
+            reviewGroup.setWorkers_id(workerIds);
+            reviewGroupDao.save(reviewGroup);
+            String url = "http://47.99.140.117:" + port + "/report/review/job/" + jobId + "/" + workerId + "/0";
+            return url;
+        }
     }