| 
					
				 | 
			
			
				@@ -828,6 +828,22 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         StudentCourseHomework studentCourseHomework = studentCourseHomeworkByCourse.get(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<StudentLessonTrainingDetailWrapper.StudentLessonTrainingDetail> studentLessonTrainingDetails = studentCourseHomeworkDao 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             .findByStudentIdsAndCourseScheduleId(studentIds, studentCourseHomework.getCourseHomeworkId(),studentCourseHomework.getType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date expireDate = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Integer fileExpireDay = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (studentCourseHomework.getType() == ELessonTrainingType.HOMEWORK) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            CourseHomework courseHomework = courseHomeworkDao.get(studentCourseHomework.getCourseHomeworkId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (courseHomework != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                expireDate = courseHomework.getExpiryDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                fileExpireDay = courseHomework.getFileExpireDay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ExtracurricularExercises extracurricularExercises = extracurricularExercisesDao.get(studentCourseHomework.getCourseHomeworkId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (extracurricularExercises != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                expireDate = extracurricularExercises.getExpireDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                fileExpireDay = extracurricularExercises.getFileExpireDay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        studentLessonTrainingDetailFileJsonFormat(studentLessonTrainingDetails,expireDate,fileExpireDay); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (CollectionUtils.isNotEmpty(studentLessonTrainingDetails)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //设置曲目名称 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -851,6 +867,28 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void studentLessonTrainingDetailFileJsonFormat(List<StudentLessonTrainingDetailWrapper.StudentLessonTrainingDetail> studentLessonTrainingDetails, Date expireDate, Integer fileExpireDay) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        boolean expireFlag = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (fileExpireDay != null && fileExpireDay >0 && expireDate != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            expireFlag = DateUtil.addDays(expireDate, fileExpireDay).before(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (StudentLessonTrainingDetailWrapper.StudentLessonTrainingDetail studentLessonTrainingDetail : studentLessonTrainingDetails) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (StringUtils.isNotBlank(studentLessonTrainingDetail.getFileJsons())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                List<CourseHomeworkWrapper.FileJson> fileJsons = JSON.parseArray(studentLessonTrainingDetail.getFileJsons(), CourseHomeworkWrapper.FileJson.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                studentLessonTrainingDetail.setFileJson(fileJsons); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (!CollectionUtils.isEmpty(studentLessonTrainingDetail.getFileJson())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (CourseHomeworkWrapper.FileJson fileJson : studentLessonTrainingDetail.getFileJson()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    fileJson.setExpireFlag(expireFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public List<StudentCourseHomework> findExtraExerciseStudentsV2(StudentLessonTrainingDetailWrapper.StudentLessonTrainingQuery query) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<StudentCourseHomework> extraExerciseStudents = extracurricularExercisesReplyService.findExtraExerciseStudents(query); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1060,7 +1098,6 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public StudentLessonTrainingDetailWrapper.StudentLessonTraining findCourseHomeworkStudentDetailPublicV2(Long courseScheduleId, Long userId, ELessonTrainingType type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        StudentLessonTrainingDetailWrapper.StudentLessonTraining studentLessonTraining = getUserInfo(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 作业信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CourseHomeworkStudentDetailDto courseHomeworkStudentDetail = studentCourseHomeworkDao.findCourseHomeworkStudentDetail( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1068,13 +1105,20 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (courseHomeworkStudentDetail == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new BizException("作业不存在"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        studentLessonTraining.setStandardFlag(courseHomeworkStudentDetail.getStandardFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return getStudentLessonTrainingDetails(courseHomeworkStudentDetail.getCourseHomeworkId(), userId, type, courseHomeworkStudentDetail.getStandardFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private StudentLessonTrainingDetailWrapper.StudentLessonTraining getStudentLessonTrainingDetails(Long homeworkId, Long userId, ELessonTrainingType type, StandardEnum standardFlag) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        StudentLessonTrainingDetailWrapper.StudentLessonTraining studentLessonTraining = getUserInfo(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        studentLessonTraining.setStandardFlag(standardFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 作业完成情况 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (courseHomeworkStudentDetail.getStandardFlag() == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (standardFlag == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             studentLessonTraining.setFinishFlag(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if( courseHomeworkStudentDetail.getStandardFlag().equals(StandardEnum.STANDARD) || courseHomeworkStudentDetail.getStandardFlag().equals(StandardEnum.EXCELLENT)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if( standardFlag.equals(StandardEnum.STANDARD) || standardFlag.equals(StandardEnum.EXCELLENT)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             studentLessonTraining.setFinishFlag(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             studentLessonTraining.setFinishFlag(false); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1082,16 +1126,32 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 练习内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<StudentLessonTrainingDetailWrapper.StudentLessonTrainingDetail> studentLessonTrainingDetails = studentCourseHomeworkDao 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .findByStudentIdsAndCourseScheduleId(Collections.singletonList(userId.intValue()), courseHomeworkStudentDetail.getCourseHomeworkId(),type); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            .findByStudentIdsAndCourseScheduleId(Collections.singletonList(userId.intValue()), homeworkId, type); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date expireDate = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Integer fileExpireDay = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (type == ELessonTrainingType.HOMEWORK) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            CourseHomework courseHomework = courseHomeworkDao.get(homeworkId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (courseHomework != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                expireDate = courseHomework.getExpiryDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                fileExpireDay = courseHomework.getFileExpireDay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ExtracurricularExercises extracurricularExercises = extracurricularExercisesDao.get(homeworkId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (extracurricularExercises != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                expireDate = extracurricularExercises.getExpireDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                fileExpireDay = extracurricularExercises.getFileExpireDay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        studentLessonTrainingDetailFileJsonFormat(studentLessonTrainingDetails,expireDate,fileExpireDay); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         studentLessonTraining.setStudentLessonTrainingDetail(studentLessonTrainingDetails); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return studentLessonTraining; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public StudentLessonTrainingDetailWrapper.StudentLessonTraining findExtracurricularExercisesDetailPublicV2(Long courseScheduleId, Long userId, ELessonTrainingType type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        StudentLessonTrainingDetailWrapper.StudentLessonTraining studentLessonTraining = getUserInfo(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 作业信息 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1100,23 +1160,8 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (exercisesReply == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new BizException("作业不存在"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        studentLessonTraining.setStandardFlag(exercisesReply.getStandardFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 作业完成情况 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (exercisesReply.getStandardFlag() == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            studentLessonTraining.setFinishFlag(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else if( exercisesReply.getStandardFlag().equals(StandardEnum.STANDARD) || exercisesReply.getStandardFlag().equals(StandardEnum.EXCELLENT)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            studentLessonTraining.setFinishFlag(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            studentLessonTraining.setFinishFlag(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // 练习内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<StudentLessonTrainingDetailWrapper.StudentLessonTrainingDetail> studentLessonTrainingDetails = studentCourseHomeworkDao 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            .findByStudentIdsAndCourseScheduleId(Collections.singletonList(userId.intValue()), exercisesReply.getExtracurricularExercisesId(),type); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        studentLessonTraining.setStudentLessonTrainingDetail(studentLessonTrainingDetails); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return studentLessonTraining; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return getStudentLessonTrainingDetails(exercisesReply.getExtracurricularExercisesId(), userId, type, exercisesReply.getStandardFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |