|  | @@ -6,10 +6,7 @@ import com.google.common.collect.Lists;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.auth.api.entity.SysUser;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dao.MusicSheetDao;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.dao.SysMusicCompareRecordDao;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.IndexBaseDto;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.IndexBaseMonthData;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.StudentTrainChartDto;
 | 
	
		
			
				|  |  | -import com.yonge.cooleshow.biz.dal.dto.StudentTrainOverviewDto;
 | 
	
		
			
				|  |  | +import com.yonge.cooleshow.biz.dal.dto.*;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.entity.*;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 | 
	
		
			
				|  |  |  import com.yonge.cooleshow.biz.dal.enums.FeatureType;
 | 
	
	
		
			
				|  | @@ -452,9 +449,8 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public SysMusicCompareRecordQueryInfo.StatDto rankingList(SysMusicCompareRecordQueryInfo.StudentCompareRecordQueryInfo queryInfo) {
 | 
	
		
			
				|  |  |  		SysMusicCompareRecordQueryInfo.StatDto result = new SysMusicCompareRecordQueryInfo.StatDto();
 | 
	
		
			
				|  |  | -		SysMusicCompareRecordQueryInfo.MusicCompareRankingDto head = new SysMusicCompareRecordQueryInfo.MusicCompareRankingDto();
 | 
	
		
			
				|  |  | -		head.setUserId(queryInfo.getUserId());
 | 
	
		
			
				|  |  | -		List<SysMusicCompareRecordQueryInfo.MusicCompareRankingDto> userTrainStat = sysMusicCompareWeekDataService.getDao().getUserTrainStat(queryInfo.getStartTime(),
 | 
	
		
			
				|  |  | +		SysMusicCompareRecordQueryInfo.MusicCompareRankingDto head = null;
 | 
	
		
			
				|  |  | +		List<SysMusicCompareRecordQueryInfo.MusicCompareRankingDto> userTrainStat = sysMusicCompareWeekDataService.getDao().queryUserTrainStat(queryInfo.getStartTime(),
 | 
	
		
			
				|  |  |  				queryInfo.getOrderType(),
 | 
	
		
			
				|  |  |  				Objects.isNull(queryInfo.getHeardLevel())?null:queryInfo.getHeardLevel().getCode(),
 | 
	
		
			
				|  |  |  				queryInfo.getTenantId());
 | 
	
	
		
			
				|  | @@ -487,13 +483,18 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  		Map<String,Object> params = new HashMap<String, Object>(1);
 | 
	
		
			
				|  |  |  		params.put("tenantId", queryInfo.getTenantId());
 | 
	
		
			
				|  |  | -		head.setStudentNum(studentService.getDao().countStudentsWithTenant(params));
 | 
	
		
			
				|  |  | -		if(StringUtils.isBlank(head.getAvatar())){
 | 
	
		
			
				|  |  | -			SysUser user = sysUserService.findUserById(queryInfo.getUserId());
 | 
	
		
			
				|  |  | -			if(user != null){
 | 
	
		
			
				|  |  | -				head.setAvatar(user.getAvatar());
 | 
	
		
			
				|  |  | +		if(Objects.nonNull(head)){
 | 
	
		
			
				|  |  | +			head = new SysMusicCompareRecordQueryInfo.MusicCompareRankingDto();
 | 
	
		
			
				|  |  | +			BasicUserInfo basicUserInfo = teacherService.getDao().getBasicUserInfo(queryInfo.getUserId());
 | 
	
		
			
				|  |  | +			head.setUserId(basicUserInfo.getUserId());
 | 
	
		
			
				|  |  | +			head.setAvatar(basicUserInfo.getAvatar());
 | 
	
		
			
				|  |  | +			head.setStudentName(basicUserInfo.getUsername());
 | 
	
		
			
				|  |  | +			List<Subject> subjects = teacherService.getDao().querySubject(basicUserInfo.getUserId());
 | 
	
		
			
				|  |  | +			if(CollectionUtils.isNotEmpty(subjects)){
 | 
	
		
			
				|  |  | +				head.setSubjectName(subjects.stream().map(e->e.getName()).collect(Collectors.joining()));
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | +		head.setStudentNum(studentService.getDao().countStudentsWithTenant(params));
 | 
	
		
			
				|  |  |  		result.setHead(head);
 | 
	
		
			
				|  |  |  		detail.sort(Comparator.comparing(SysMusicCompareRecordQueryInfo.MusicCompareRankingDto::getRankNum).
 | 
	
		
			
				|  |  |  				thenComparing(SysMusicCompareRecordQueryInfo.MusicCompareRankingDto::getUserId));
 |