| 
					
				 | 
			
			
				@@ -10,6 +10,7 @@ import java.util.Objects; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.Set; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.dto.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.slf4j.Logger; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.slf4j.LoggerFactory; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -35,14 +36,6 @@ import com.ym.mec.biz.dal.dao.StudentAttendanceDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.dao.StudentDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.dao.SysConfigDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.dao.TeacherAttendanceDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.CourseScheduleResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.ExportStudentAttendanceDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentAttendanceDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentAttendanceResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentAttendanceStatisticsResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentAttendanceStatusCountDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentPersonalAttendanceDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dto.StudentStatusCountUtilEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.ClassGroup; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.CourseSchedule; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -691,13 +684,19 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (dataList == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 dataList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            for(StudentAttendance sa : dataList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            	if(sa.getGroupType() == GroupType.MUSIC){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            		Set<Integer> userId = new HashSet<Integer>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            		userId.add(sa.getUserId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            		Map<Integer,String> paymentStatusMap = MapUtil.convertIntegerMap(musicGroupPaymentCalenderDao.queryUserCoursePaymentStatus(userId,sa.getMusicGroupId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            		sa.setPaymentStatus(paymentStatusMap.get(sa.getUserId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(dataList.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Set<Integer> userIds = dataList.stream().map(StudentAttendance::getUserId).collect(Collectors.toSet()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //获取学员当月请假次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                String month = DateUtil.format(new Date(), DateUtil.ISO_YEAR_MONTH_FORMAT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Map<Integer, Long> leaveNumMap = MapUtil.convertIntegerMap(studentAttendanceDao.queryLeaveNum(userIds,month)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for(StudentAttendance sa : dataList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    sa.setLeaveNum(leaveNumMap.get(sa.getUserId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(sa.getGroupType() == GroupType.MUSIC){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Set<Integer> userId = new HashSet<Integer>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        userId.add(sa.getUserId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Map<Integer,String> paymentStatusMap = MapUtil.convertIntegerMap(musicGroupPaymentCalenderDao.queryUserCoursePaymentStatus(userId,sa.getMusicGroupId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        sa.setPaymentStatus(paymentStatusMap.get(sa.getUserId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 |