Ver Fonte

在众测报告转paperJson的时候不存paper而是在uploadJob的时候存

MengyangDuan há 5 anos atrás
pai
commit
1f67aa1184

+ 16 - 16
src/main/java/edu/nju/service/ExtraService.java

@@ -185,10 +185,10 @@ public class ExtraService {
 
 	public String reportsToReviewPaper(String case_take_id){
 		int[]options={0,1,2,3,4,5,6,7,8,9,10};
+		String url="http://mooctest-site.oss-cn-shanghai.aliyuncs.com/paperjson/"+case_take_id+".json";
 		try {
-			CrowdSourceToReviewPaper crowdSourceToReviewPaper=crowdSourceToReviewPaperDao.getByCaseTakeId(case_take_id);
-			if(crowdSourceToReviewPaper!=null){
-				String url=crowdSourceToReviewPaper.getUrl();
+			boolean isExist=OssAliyun.existFile("paperjson/"+case_take_id+".json");
+			if(isExist){
 				return url;
 			}
 			JSONObject result=new JSONObject();
@@ -210,14 +210,17 @@ public class ExtraService {
 				description+=bug.getSeverity()+"\n";
 				description+=bug.getRecurrent()+"\n";
 				description+=bug.getCreate_time_millis()+"\n";
-				description+=mirror.getGood().size()+"\n";
-				description+=mirror.getBad().size();
+				if(mirror==null){
+					description+="0\n";
+					description+="0\n";
+				}
+				else {
+					description += mirror.getGood().size() + "\n";
+					description += mirror.getBad().size();
+				}
 				jsonObject.put("description",description);
-				//JSONArray urlArray=new JSONArray();
 				String[]urlArray=new String[1];
 				urlArray[0]=bug.getImg_url();
-				//JSONObject temp=new JSONObject(bug.getImg_url());
-				//urlArray.put(temp);
 				jsonObject.put("img_url",urlArray);
 				JSONArray fileArray=new JSONArray();
 				jsonObject.put("file_url",fileArray);
@@ -244,19 +247,16 @@ public class ExtraService {
 			itemGroupObject.put("item_list",itemArray);
 			itemGroupArray.put(itemGroupObject);
 			result.put("item_group_list",itemGroupArray);
-			String jsonString = FormatJson.formatJson(result.toString());
-			// 将格式化后的字符串写入文件
 			String fileName=case_take_id+".json";
 			File file=new File(fileName);
 			Writer write = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
-			write.write(jsonString);
+			write.write(result.toString());
 			write.flush();
 			write.close();
-			//OssAliyun.uploadFile("paperjson/"+case_take_id,file);
-			JSONObject jsonObject=reviewPaperService.uploadPaper(result.toString());
-			String paperId=jsonObject.getString("paperId");
-			String url="http://mooctest-site.oss-cn-shanghai.aliyuncs.com/paperjson/"+case_take_id;
-			crowdSourceToReviewPaperDao.save(new CrowdSourceToReviewPaper(paperId,case_take_id,url));
+			OssAliyun.uploadFile("paperjson/"+case_take_id+".json",file);
+			//JSONObject jsonObject=reviewPaperService.uploadPaper(result.toString());
+			//String paperId=jsonObject.getString("paperId");
+			//crowdSourceToReviewPaperDao.save(new CrowdSourceToReviewPaper(paperId,case_take_id,url));
 			return url;
 		} catch (Exception e) {
 			e.printStackTrace();

+ 6 - 0
src/main/java/edu/nju/service/ReviewJobService.java

@@ -31,6 +31,8 @@ public class ReviewJobService {
     ReviewWorkerDao reviewWorkerDao;
     @Autowired
     ReviewPaperService reviewPaperService;
+    @Autowired
+    CrowdSourceToReviewPaperDao crowdSourceToReviewPaperDao;
 
     public ReviewJob getJob(String job_id){
         return jobDao.findJob(job_id);
@@ -147,6 +149,10 @@ public class ReviewJobService {
                 return messageVO;
             }
             String paperId=paperResult.getString("paperId");
+            //是众测考试的话存对应的众测考试id
+            if (examId!=null&&(!examId.equals(""))){
+                crowdSourceToReviewPaperDao.save(new CrowdSourceToReviewPaper(paperId,examId+"-"+caseId,paperUrl));
+            }
             List<ReviewReport>reports=reviewPaperService.getReportsByPaperId(paperId);
             List<String>reportIds=new ArrayList<>();
             for(int i=0;i<reports.size();i++){

+ 2 - 4
src/main/java/edu/nju/util/OssAliyun.java

@@ -67,7 +67,6 @@ public class OssAliyun {
                 /*
                  * Create a new OSS bucket
                  */
-                System.out.println("Creating bucket " + bucketName + "\n");
                 ossClient.createBucket(bucketName);
                 CreateBucketRequest createBucketRequest= new CreateBucketRequest(bucketName);
                 createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead);
@@ -134,7 +133,7 @@ public class OssAliyun {
         }
     }
 
-    public static boolean existFile(String objectName,File file) throws IOException {
+    public static boolean existFile(String objectName) throws IOException {
         /*
          * Constructs a client instance with your account for accessing OSS
          */
@@ -147,7 +146,6 @@ public class OssAliyun {
                 /*
                  * Create a new OSS bucket
                  */
-                System.out.println("Creating bucket " + bucketName + "\n");
                 ossClient.createBucket(bucketName);
                 CreateBucketRequest createBucketRequest= new CreateBucketRequest(bucketName);
                 createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead);
@@ -157,7 +155,6 @@ public class OssAliyun {
              * Determine whether an object residents in your bucket
              */
             boolean exists = ossClient.doesObjectExist(bucketName,objectName);
-            System.out.println("Does object " + bucketName + " exist? " + exists + "\n");
             return exists;
 
         } catch (OSSException oe) {
@@ -179,6 +176,7 @@ public class OssAliyun {
     }
 
 
+
     private static void displayTextInputStream(InputStream input) throws IOException {
         BufferedReader reader = new BufferedReader(new InputStreamReader(input));
         while (true) {