|
@@ -667,67 +667,71 @@ public class StudentServeServiceImpl implements StudentServeService {
|
|
|
if(!CollectionUtils.isEmpty(studentAllHomeworks)&&weekServiceWithStudent.getServeType().equals("HOMEWORK")){
|
|
|
Set<String> courseIds = Arrays.stream(weekServiceWithStudent.getCourseIds().split(",")).collect(Collectors.toSet());
|
|
|
List<StudentServeCourseHomeworkDto> studentHomeworks = studentAllHomeworks.stream().filter(s -> courseIds.contains(s.getCourseScheduleId())).collect(Collectors.toList());
|
|
|
- weekServiceWithStudent.setActualExercisesNum(1);
|
|
|
- long replyNum = studentHomeworks.stream().filter(e -> YesOrNoEnum.YES.equals(e.getStatus())).count();
|
|
|
- weekServiceWithStudent.setExercisesReplyNum(replyNum>0?1:0);
|
|
|
- long haveSubmitTimes = studentHomeworks.stream().filter(e -> Objects.nonNull(e.getSubmitTime())).count();
|
|
|
- if(replyNum>0&&haveSubmitTimes>0){
|
|
|
- Date lastSubmitTime = studentHomeworks.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(StudentServeCourseHomeworkDto::getSubmitTime)).get().getSubmitTime();
|
|
|
- weekServiceWithStudent.setLastSubmitTime(lastSubmitTime);
|
|
|
- }
|
|
|
- int exercisesMessageNum=0;
|
|
|
- int exercisesMessageTimelyNum=0;
|
|
|
- for (StudentServeCourseHomeworkDto studentHomework : studentHomeworks) {
|
|
|
- if(!YesOrNoEnum.YES.equals(studentHomework.getStatus())){
|
|
|
- continue;
|
|
|
- }
|
|
|
- if(!YesOrNoEnum.YES.equals(studentHomework.getIsReplied())){
|
|
|
- continue;
|
|
|
+ if(!CollectionUtils.isEmpty(studentHomeworks)){
|
|
|
+ weekServiceWithStudent.setActualExercisesNum(1);
|
|
|
+ long replyNum = studentHomeworks.stream().filter(e -> YesOrNoEnum.YES.equals(e.getStatus())).count();
|
|
|
+ weekServiceWithStudent.setExercisesReplyNum(replyNum>0?1:0);
|
|
|
+ long haveSubmitTimes = studentHomeworks.stream().filter(e -> Objects.nonNull(e.getSubmitTime())).count();
|
|
|
+ if(replyNum>0&&haveSubmitTimes>0){
|
|
|
+ Date lastSubmitTime = studentHomeworks.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(StudentServeCourseHomeworkDto::getSubmitTime)).get().getSubmitTime();
|
|
|
+ weekServiceWithStudent.setLastSubmitTime(lastSubmitTime);
|
|
|
}
|
|
|
- exercisesMessageNum+=1;
|
|
|
- if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
|
|
|
- exercisesMessageTimelyNum+=1;
|
|
|
+ int exercisesMessageNum=0;
|
|
|
+ int exercisesMessageTimelyNum=0;
|
|
|
+ for (StudentServeCourseHomeworkDto studentHomework : studentHomeworks) {
|
|
|
+ if(!YesOrNoEnum.YES.equals(studentHomework.getStatus())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if(!YesOrNoEnum.YES.equals(studentHomework.getIsReplied())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ exercisesMessageNum+=1;
|
|
|
+ if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
|
|
|
+ exercisesMessageTimelyNum+=1;
|
|
|
+ }
|
|
|
}
|
|
|
+ weekServiceWithStudent.setExercisesMessageNum(exercisesMessageNum>0?1:0);
|
|
|
+ weekServiceWithStudent.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
|
|
|
}
|
|
|
- weekServiceWithStudent.setExercisesMessageNum(exercisesMessageNum>0?1:0);
|
|
|
- weekServiceWithStudent.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
|
|
|
}
|
|
|
|
|
|
List<ExtracurricularExercisesReply> studentAllExercises = studentExercisesMap.get(weekServiceWithStudent.getStudentId());
|
|
|
if(!CollectionUtils.isEmpty(studentAllExercises)&&weekServiceWithStudent.getServeType().equals("EXERCISE")){
|
|
|
List<ExtracurricularExercisesReply> studentExercises = studentAllExercises.stream().filter(s -> weekServiceWithStudent.getTeacherId().equals(s.getExtracurricularExercises().getTeacherId())).collect(Collectors.toList());
|
|
|
- weekServiceWithStudent.setActualExercisesNum(1);
|
|
|
- long replyNum = studentExercises.stream().filter(e -> e.getStatus()==1).count();
|
|
|
- if(weekServiceWithStudent.getExercisesReplyNum()<=0){
|
|
|
- weekServiceWithStudent.setExercisesReplyNum(replyNum>0?1:0);
|
|
|
- }
|
|
|
- long haveSubmitTimes = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).count();
|
|
|
- if(replyNum>0&&haveSubmitTimes>0){
|
|
|
- Date lastSubmitTime = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(ExtracurricularExercisesReply::getSubmitTime)).get().getSubmitTime();
|
|
|
- if(Objects.isNull(weekServiceWithStudent.getLastSubmitTime())||lastSubmitTime.after(weekServiceWithStudent.getLastSubmitTime())){
|
|
|
- weekServiceWithStudent.setLastSubmitTime(lastSubmitTime);
|
|
|
+ if(!CollectionUtils.isEmpty(studentExercises)){
|
|
|
+ weekServiceWithStudent.setActualExercisesNum(1);
|
|
|
+ long replyNum = studentExercises.stream().filter(e -> e.getStatus()==1).count();
|
|
|
+ if(weekServiceWithStudent.getExercisesReplyNum()<=0){
|
|
|
+ weekServiceWithStudent.setExercisesReplyNum(replyNum>0?1:0);
|
|
|
}
|
|
|
- }
|
|
|
- int exercisesMessageNum=0;
|
|
|
- int exercisesMessageTimelyNum=0;
|
|
|
- for (ExtracurricularExercisesReply studentHomework : studentExercises) {
|
|
|
- if(!new Integer(1).equals(studentHomework.getStatus())){
|
|
|
- continue;
|
|
|
+ long haveSubmitTimes = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).count();
|
|
|
+ if(replyNum>0&&haveSubmitTimes>0){
|
|
|
+ Date lastSubmitTime = studentExercises.stream().filter(e->Objects.nonNull(e.getSubmitTime())).max(Comparator.comparing(ExtracurricularExercisesReply::getSubmitTime)).get().getSubmitTime();
|
|
|
+ if(Objects.isNull(weekServiceWithStudent.getLastSubmitTime())||lastSubmitTime.after(weekServiceWithStudent.getLastSubmitTime())){
|
|
|
+ weekServiceWithStudent.setLastSubmitTime(lastSubmitTime);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ int exercisesMessageNum=0;
|
|
|
+ int exercisesMessageTimelyNum=0;
|
|
|
+ for (ExtracurricularExercisesReply studentHomework : studentExercises) {
|
|
|
+ if(!new Integer(1).equals(studentHomework.getStatus())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if(!new Integer(1).equals(studentHomework.getIsReplied())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ exercisesMessageNum+=1;
|
|
|
+ if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
|
|
|
+ exercisesMessageTimelyNum+=1;
|
|
|
+ }
|
|
|
}
|
|
|
- if(!new Integer(1).equals(studentHomework.getIsReplied())){
|
|
|
- continue;
|
|
|
+ if(weekServiceWithStudent.getExercisesMessageNum()<=0){
|
|
|
+ weekServiceWithStudent.setExercisesMessageNum(exercisesMessageNum>0?1:0);
|
|
|
}
|
|
|
- exercisesMessageNum+=1;
|
|
|
- if(new Integer(1).equals(studentHomework.getIsRepliedTimely())){
|
|
|
- exercisesMessageTimelyNum+=1;
|
|
|
+ if(weekServiceWithStudent.getExercisesMessageTimelyNum()<=0){
|
|
|
+ weekServiceWithStudent.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
|
|
|
}
|
|
|
}
|
|
|
- if(weekServiceWithStudent.getExercisesMessageNum()<=0){
|
|
|
- weekServiceWithStudent.setExercisesMessageNum(exercisesMessageNum>0?1:0);
|
|
|
- }
|
|
|
- if(weekServiceWithStudent.getExercisesMessageTimelyNum()<=0){
|
|
|
- weekServiceWithStudent.setExercisesMessageTimelyNum(exercisesMessageTimelyNum>0?1:0);
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
studentExtracurricularExercisesSituationDao.batchUpdate(weekServiceWithStudents);
|