|  | @@ -24,6 +24,7 @@ import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.mapper.SysUserMapper;
 |  |  import com.yonge.cooleshow.biz.dal.mapper.SysUserMapper;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 |  |  import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumRefMapper;
 |  |  import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumRefMapper;
 | 
											
												
													
														|  | 
 |  | +import com.yonge.cooleshow.biz.dal.mapper.TenantGroupAlbumMapper;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.mapper.TenantGroupMapper;
 |  |  import com.yonge.cooleshow.biz.dal.mapper.TenantGroupMapper;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.mapper.UserTenantBindRecordMapper;
 |  |  import com.yonge.cooleshow.biz.dal.mapper.UserTenantBindRecordMapper;
 | 
											
												
													
														|  |  import com.yonge.cooleshow.biz.dal.service.*;
 |  |  import com.yonge.cooleshow.biz.dal.service.*;
 | 
											
										
											
												
													
														|  | @@ -128,6 +129,9 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      @Autowired
 |  |      @Autowired
 | 
											
												
													
														|  |      private UserTenantBindRecordMapper userTenantBindRecordMapper;
 |  |      private UserTenantBindRecordMapper userTenantBindRecordMapper;
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    @Autowired
 | 
											
												
													
														|  | 
 |  | +    private TenantGroupAlbumMapper tenantGroupAlbumMapper;
 | 
											
												
													
														|  |      @Override
 |  |      @Override
 | 
											
												
													
														|  |      public StudentVo detail(Long userId) {
 |  |      public StudentVo detail(Long userId) {
 | 
											
												
													
														|  |          return baseMapper.detail(userId);
 |  |          return baseMapper.detail(userId);
 | 
											
										
											
												
													
														|  | @@ -191,13 +195,15 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          // 判断是否是机构学生 机构学生 检测机构专辑购买记录
 |  |          // 判断是否是机构学生 机构学生 检测机构专辑购买记录
 | 
											
												
													
														|  |          TenantInfo tenantInfo = tenantInfoService.detail(detail.getTenantId());
 |  |          TenantInfo tenantInfo = tenantInfoService.detail(detail.getTenantId());
 | 
											
												
													
														|  | -        if (tenantInfo != null) {
 |  | 
 | 
											
												
													
														|  | 
 |  | +        Long tenantGroupId = detail.getTenantGroupId();
 | 
											
												
													
														|  | 
 |  | +        if (tenantInfo != null && tenantGroupId != null && tenantGroupId != -1L) {
 | 
											
												
													
														|  |              studentHomeVo.setTenantName(tenantInfo.getName());
 |  |              studentHomeVo.setTenantName(tenantInfo.getName());
 | 
											
												
													
														|  | -            QueryWrapper<TenantAlbumRef> queryWrapper = new QueryWrapper<>();
 |  | 
 | 
											
												
													
														|  | -            queryWrapper.lambda().eq(TenantAlbumRef::getTenantId, detail.getTenantId());
 |  | 
 | 
											
												
													
														|  | -            List<TenantAlbumRef> albumRefs = tenantAlbumRefMapper.selectList(queryWrapper);
 |  | 
 | 
											
												
													
														|  | -            if (!albumRefs.isEmpty()) {
 |  | 
 | 
											
												
													
														|  | -                List<Long> albIds = albumRefs.stream().map(TenantAlbumRef::getTenantAlbumId).distinct().collect(Collectors.toList());
 |  | 
 | 
											
												
													
														|  | 
 |  | +            QueryWrapper<TenantGroupAlbum> queryWrapper = new QueryWrapper<>();
 | 
											
												
													
														|  | 
 |  | +            queryWrapper.lambda().eq(TenantGroupAlbum::getTenantGroupId, tenantGroupId);
 | 
											
												
													
														|  | 
 |  | +            List<TenantGroupAlbum> tenantGroupAlbums = tenantGroupAlbumMapper.selectList(queryWrapper);
 | 
											
												
													
														|  | 
 |  | +            List<Long> albIds = new ArrayList<>();
 | 
											
												
													
														|  | 
 |  | +            if (!tenantGroupAlbums.isEmpty()) {
 | 
											
												
													
														|  | 
 |  | +                albIds.addAll(tenantGroupAlbums.stream().map(TenantGroupAlbum::getTenantAlbumId).distinct().collect(Collectors.toList()));
 | 
											
												
													
														|  |                  QueryWrapper<TenantAlbum> query = new QueryWrapper<>();
 |  |                  QueryWrapper<TenantAlbum> query = new QueryWrapper<>();
 | 
											
												
													
														|  |                  query.lambda().in(TenantAlbum::getId, albIds)
 |  |                  query.lambda().in(TenantAlbum::getId, albIds)
 | 
											
												
													
														|  |                          .eq(TenantAlbum::getStatus,true);
 |  |                          .eq(TenantAlbum::getStatus,true);
 | 
											
										
											
												
													
														|  | @@ -206,23 +212,22 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
 | 
											
												
													
														|  |                      studentHomeVo.setTenantAlbumStatus(1);
 |  |                      studentHomeVo.setTenantAlbumStatus(1);
 | 
											
												
													
														|  |                  }
 |  |                  }
 | 
											
												
													
														|  |              }
 |  |              }
 | 
											
												
													
														|  | -            UserTenantAlbumRecord record = userTenantAlbumRecordService.lambdaQuery()
 |  | 
 | 
											
												
													
														|  | 
 |  | +            List<UserTenantAlbumRecord> record = userTenantAlbumRecordService.lambdaQuery()
 | 
											
												
													
														|  |                      .eq(UserTenantAlbumRecord::getUserId, detail.getUserId())
 |  |                      .eq(UserTenantAlbumRecord::getUserId, detail.getUserId())
 | 
											
												
													
														|  |                      .eq(UserTenantAlbumRecord::getClientType, ClientEnum.STUDENT)
 |  |                      .eq(UserTenantAlbumRecord::getClientType, ClientEnum.STUDENT)
 | 
											
												
													
														|  |                      .gt(UserTenantAlbumRecord::getEndTime,new Date())
 |  |                      .gt(UserTenantAlbumRecord::getEndTime,new Date())
 | 
											
												
													
														|  |                      .orderByAsc(UserTenantAlbumRecord::getEndTime)
 |  |                      .orderByAsc(UserTenantAlbumRecord::getEndTime)
 | 
											
												
													
														|  | -                    .last("limit 1").one();
 |  | 
 | 
											
												
													
														|  | -            if (record == null || record.getEndTime().getTime() < System.currentTimeMillis()) {
 |  | 
 | 
											
												
													
														|  | 
 |  | +                    .list();
 | 
											
												
													
														|  | 
 |  | +            if (record.isEmpty()) {
 | 
											
												
													
														|  |                  studentHomeVo.setTenantAlbumFlag(YesOrNoEnum.NO);
 |  |                  studentHomeVo.setTenantAlbumFlag(YesOrNoEnum.NO);
 | 
											
												
													
														|  | -                if (record != null) {
 |  | 
 | 
											
												
													
														|  | -                    studentHomeVo.setTenantAlbumStartTime(record.getStartTime());
 |  | 
 | 
											
												
													
														|  | -                    studentHomeVo.setTenantAlbumEndTime(record.getEndTime());
 |  | 
 | 
											
												
													
														|  | -                }
 |  | 
 | 
											
												
													
														|  |              } else {
 |  |              } else {
 | 
											
												
													
														|  | -                studentHomeVo.setTenantAlbumStatus(2);
 |  | 
 | 
											
												
													
														|  | 
 |  | +                long count = record.stream().filter(next -> albIds.contains(next.getTenantAlbumId())).count();
 | 
											
												
													
														|  | 
 |  | +                if (count > 0) {
 | 
											
												
													
														|  | 
 |  | +                    studentHomeVo.setTenantAlbumStatus(2);
 | 
											
												
													
														|  | 
 |  | +                }
 | 
											
												
													
														|  |                  studentHomeVo.setTenantAlbumFlag(YesOrNoEnum.YES);
 |  |                  studentHomeVo.setTenantAlbumFlag(YesOrNoEnum.YES);
 | 
											
												
													
														|  | -                studentHomeVo.setTenantAlbumStartTime(record.getStartTime());
 |  | 
 | 
											
												
													
														|  | -                studentHomeVo.setTenantAlbumEndTime(record.getEndTime());
 |  | 
 | 
											
												
													
														|  | 
 |  | +                studentHomeVo.setTenantAlbumStartTime(record.get(0).getStartTime());
 | 
											
												
													
														|  | 
 |  | +                studentHomeVo.setTenantAlbumEndTime(record.get(0).getEndTime());
 | 
											
												
													
														|  |              }
 |  |              }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          }
 |  |          }
 |