| 
					
				 | 
			
			
				@@ -55,6 +55,7 @@ public class CrowdReportServiceImpl implements CrowdReportService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new BaseException("当前阶段无法创建报告"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CrowdTestReport report = command.toCrowdTestReport(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String reportCode = GenerateFlowCodeUtil.generateFlowCode("REPORT"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        report.setScope(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         report.setDependencyCode(taskCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         report.setCode(reportCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         task.get().getCrowdTestReportList().add(report); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -78,10 +79,60 @@ public class CrowdReportServiceImpl implements CrowdReportService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CrowdTestReport updatedReport = command.toCrowdTestReport(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         updatedReport.setId(report.get().getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         updatedReport.setCode(report.get().getCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updatedReport.setScope(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         updatedReport.setDependencyCode(report.get().getDependencyCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         task.get().getCrowdTestReportList().remove(report.get()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         task.get().getCrowdTestReportList().add(updatedReport); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         projectRepo.saveCrowdTestProject(project); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return getTaskReport(projectCode, taskCode, reportCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void deleteTaskReport(String projectCode, String taskCode, String reportCode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestProject project = projectRepo.getByProjectCode(projectCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        project.getTaskReport(taskCode, reportCode).setIsDeleted(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        projectRepo.saveCrowdTestProject(project); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReportDetailsDTO getProjectReport(String projectCode, String reportCode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestProject project = projectRepo.getByProjectCode(projectCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestReport report = project.getCrowdTestReportForProject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (report==null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            throw new CrowdTestReportNotExistException(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ReportDetailsDTO reportDetailsDTO  = new ReportDetailsDTO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        reportDetailsDTO.setCrowdReportVO(new CrowdReportVO(report)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return reportDetailsDTO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReportDetailsDTO createProjectReport(String projectCode, CrowdTestReportCommand command) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestProject project = projectRepo.getByProjectCode(projectCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (project.getStatus() != CrowdTestProjectStatus.HAS_RELEASED) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            throw new BaseException("当前阶段无法创建报告"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestReport report = command.toCrowdTestReport(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String reportCode = GenerateFlowCodeUtil.generateFlowCode("REPORT"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        report.setDependencyCode(projectCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        report.setCode(reportCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        project.setCrowdTestReportForProject(report); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        projectRepo.saveCrowdTestProject(project); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return getProjectReport(projectCode, reportCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReportDetailsDTO updatePorjctReport(String projectCode, String reportCode, CrowdTestReportCommand command) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestProject project = projectRepo.getByProjectCode(projectCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (project.getStatus() == CrowdTestProjectStatus.HAS_FINISHED) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            throw new BaseException("当前阶段无法修改报告"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestReport report = project.getCrowdTestReportForProject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (report==null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            throw new CrowdTestReportNotExistException(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CrowdTestReport updatedReport = command.toCrowdTestReport(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updatedReport.setId(report.getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updatedReport.setCode(report.getCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        updatedReport.setDependencyCode(report.getDependencyCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        project.setCrowdTestReportForProject(updatedReport); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        projectRepo.saveCrowdTestProject(project); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return getProjectReport(projectCode, reportCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |