|  | @@ -777,18 +777,20 @@ public class ExportController extends BaseController {
 | 
	
		
			
				|  |  |              return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          Set<Integer> studentIds = practiceGroupExports.stream().map(CourseGroupExportDto::getStudentId).collect(Collectors.toSet());
 | 
	
		
			
				|  |  | -        List<CourseScheduleDto> studentCourseSchedules = courseScheduleDao.getStudentCourseSchedules(studentIds, GroupType.PRACTICE);
 | 
	
		
			
				|  |  | -        Map<Integer, List<CourseScheduleDto>> studentCourseSchedulesMap = studentCourseSchedules.stream().collect(Collectors.groupingBy(CourseScheduleDto::getStudentId));
 | 
	
		
			
				|  |  | +        List<CourseGroupExportDto> studentCourseInfos = courseScheduleDao.getStudentCourseInfo(studentIds, GroupType.PRACTICE);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          List<CourseGroupExportDto> totalClassTimes = courseScheduleDao.getStudentCourseScheduleNum(studentIds, GroupType.PRACTICE, null);
 | 
	
		
			
				|  |  |          List<CourseGroupExportDto> noStartClassTimes = courseScheduleDao.getStudentCourseScheduleNum(studentIds, GroupType.PRACTICE, CourseStatusEnum.NOT_START);
 | 
	
		
			
				|  |  |          for (CourseGroupExportDto practiceGroupExport : practiceGroupExports) {
 | 
	
		
			
				|  |  | -            List<CourseScheduleDto> courseScheduleDtos = studentCourseSchedulesMap.get(practiceGroupExport.getStudentId());
 | 
	
		
			
				|  |  | -            if (courseScheduleDtos != null && courseScheduleDtos.size() > 0) {
 | 
	
		
			
				|  |  | -                CourseScheduleDto courseScheduleDto = courseScheduleDtos.get(0);
 | 
	
		
			
				|  |  | -                practiceGroupExport.setTeacherId(courseScheduleDto.getActualTeacherId());
 | 
	
		
			
				|  |  | -                practiceGroupExport.setTeacherName(courseScheduleDto.getTeacherName());
 | 
	
		
			
				|  |  | -                practiceGroupExport.setClassEndDate(courseScheduleDto.getStartClassTime());
 | 
	
		
			
				|  |  | +            for (CourseGroupExportDto studentCourseInfo : studentCourseInfos) {
 | 
	
		
			
				|  |  | +                if (studentCourseInfo.getStudentId().equals(practiceGroupExport.getStudentId())) {
 | 
	
		
			
				|  |  | +                    practiceGroupExport.setTeacherIds(studentCourseInfo.getTeacherIds());
 | 
	
		
			
				|  |  | +                    practiceGroupExport.setTeacherName(studentCourseInfo.getTeacherName());
 | 
	
		
			
				|  |  | +                    practiceGroupExport.setClassEndDate(studentCourseInfo.getClassEndDate());
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              for (CourseGroupExportDto studentTotalClassTimes : totalClassTimes) {
 | 
	
		
			
				|  |  |                  if (studentTotalClassTimes.getStudentId().equals(practiceGroupExport.getStudentId())) {
 | 
	
		
			
				|  |  |                      practiceGroupExport.setTotalClassTimes(studentTotalClassTimes.getTotalClassTimes());
 | 
	
	
		
			
				|  | @@ -805,7 +807,7 @@ public class ExportController extends BaseController {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          try {
 | 
	
		
			
				|  |  |              String[] header = {"分部", "学生编号", "学生姓名", "网管课老师id", "网管课老师", "有效期截止时间", "课程截止时间", "总课时", "剩余课时"};
 | 
	
		
			
				|  |  | -            String[] body = {"organName", "studentId", "studentName", "teacherId", "teacherName", "expireDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
 | 
	
		
			
				|  |  | +            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "expireDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
 | 
	
		
			
				|  |  |              HSSFWorkbook workbook = POIUtil.exportExcel(header, body, practiceGroupExports);
 | 
	
		
			
				|  |  |              response.setContentType("application/octet-stream");
 | 
	
		
			
				|  |  |              response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
 | 
	
	
		
			
				|  | @@ -837,25 +839,19 @@ public class ExportController extends BaseController {
 | 
	
		
			
				|  |  |              return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          Set<Integer> studentIds = vipGroupExports.stream().map(CourseGroupExportDto::getStudentId).collect(Collectors.toSet());
 | 
	
		
			
				|  |  | -        List<CourseScheduleDto> studentCourseSchedules = courseScheduleDao.getStudentCourseSchedules(studentIds, GroupType.VIP);
 | 
	
		
			
				|  |  | -        Map<Integer, List<CourseScheduleDto>> studentCourseSchedulesMap = studentCourseSchedules.stream().collect(Collectors.groupingBy(CourseScheduleDto::getStudentId));
 | 
	
		
			
				|  |  | +        List<CourseGroupExportDto> studentCourseInfos = courseScheduleDao.getStudentCourseInfo(studentIds, GroupType.VIP);
 | 
	
		
			
				|  |  |          List<CourseGroupExportDto> totalClassTimes = courseScheduleDao.getStudentCourseScheduleNum(studentIds, GroupType.VIP, null);
 | 
	
		
			
				|  |  |          List<CourseGroupExportDto> noStartClassTimes = courseScheduleDao.getStudentCourseScheduleNum(studentIds, GroupType.VIP, CourseStatusEnum.NOT_START);
 | 
	
		
			
				|  |  |          for (CourseGroupExportDto vipGroupExport : vipGroupExports) {
 | 
	
		
			
				|  |  | -            List<CourseScheduleDto> courseSchedules4Student = studentCourseSchedulesMap.get(vipGroupExport.getStudentId());
 | 
	
		
			
				|  |  | -            CourseScheduleDto endCourseScheduleDto = null;
 | 
	
		
			
				|  |  | -            CourseScheduleDto firstCourseSchedule = null;
 | 
	
		
			
				|  |  | -            if (courseSchedules4Student != null) {
 | 
	
		
			
				|  |  | -                endCourseScheduleDto = courseSchedules4Student.get(0);
 | 
	
		
			
				|  |  | -                firstCourseSchedule = courseSchedules4Student.get(courseSchedules4Student.size() - 1);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            if (firstCourseSchedule != null) {
 | 
	
		
			
				|  |  | -                vipGroupExport.setClassStartDate(firstCourseSchedule.getStartClassTime());
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            if (endCourseScheduleDto != null) {
 | 
	
		
			
				|  |  | -                vipGroupExport.setTeacherId(endCourseScheduleDto.getActualTeacherId());
 | 
	
		
			
				|  |  | -                vipGroupExport.setTeacherName(endCourseScheduleDto.getTeacherName());
 | 
	
		
			
				|  |  | -                vipGroupExport.setClassEndDate(endCourseScheduleDto.getStartClassTime());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            for (CourseGroupExportDto studentCourseInfo : studentCourseInfos) {
 | 
	
		
			
				|  |  | +                if (studentCourseInfo.getStudentId().equals(vipGroupExport.getStudentId())) {
 | 
	
		
			
				|  |  | +                    vipGroupExport.setTeacherIds(studentCourseInfo.getTeacherIds());
 | 
	
		
			
				|  |  | +                    vipGroupExport.setTeacherName(studentCourseInfo.getTeacherName());
 | 
	
		
			
				|  |  | +                    vipGroupExport.setClassStartDate(studentCourseInfo.getClassStartDate());
 | 
	
		
			
				|  |  | +                    vipGroupExport.setClassEndDate(studentCourseInfo.getClassEndDate());
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              for (CourseGroupExportDto studentTotalClassTimes : totalClassTimes) {
 | 
	
		
			
				|  |  |                  if (studentTotalClassTimes.getStudentId().equals(vipGroupExport.getStudentId())) {
 | 
	
	
		
			
				|  | @@ -873,7 +869,7 @@ public class ExportController extends BaseController {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          try {
 | 
	
		
			
				|  |  |              String[] header = {"分部", "学生编号", "学生姓名", "指导老师id", "指导老师", "课程开始时间", "课程截止时间", "总课时", "剩余课时"};
 | 
	
		
			
				|  |  | -            String[] body = {"organName", "studentId", "studentName", "teacherId", "teacherName", "classStartDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
 | 
	
		
			
				|  |  | +            String[] body = {"organName", "studentId", "studentName", "teacherIds", "teacherName", "classStartDate", "classEndDate", "totalClassTimes", "noStartClassTimes"};
 | 
	
		
			
				|  |  |              HSSFWorkbook workbook = POIUtil.exportExcel(header, body, vipGroupExports);
 | 
	
		
			
				|  |  |              response.setContentType("application/octet-stream");
 | 
	
		
			
				|  |  |              response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
 | 
	
	
		
			
				|  | @@ -916,9 +912,9 @@ public class ExportController extends BaseController {
 | 
	
		
			
				|  |  |              return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          for (ExtraExerciseStudentsDto row : rows) {
 | 
	
		
			
				|  |  | -            row.setStatusStr(Objects.isNull(row.getStatus())||row.getStatus()==0?"否":"是");
 | 
	
		
			
				|  |  | -            row.setIsViewStr(Objects.isNull(row.getIsView())||row.getIsView()==0?"否":"是");
 | 
	
		
			
				|  |  | -            row.setIsRepliedStr(Objects.isNull(row.getIsReplied())||row.getIsReplied()==0?"否":"是");
 | 
	
		
			
				|  |  | +            row.setStatusStr(Objects.isNull(row.getStatus()) || row.getStatus() == 0 ? "否" : "是");
 | 
	
		
			
				|  |  | +            row.setIsViewStr(Objects.isNull(row.getIsView()) || row.getIsView() == 0 ? "否" : "是");
 | 
	
		
			
				|  |  | +            row.setIsRepliedStr(Objects.isNull(row.getIsReplied()) || row.getIsReplied() == 0 ? "否" : "是");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          OutputStream ouputStream = null;
 | 
	
		
			
				|  |  |          try {
 |