|
@@ -18,6 +18,7 @@ import org.springframework.data.domain.Pageable;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
+import java.math.BigInteger;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
@@ -65,7 +66,7 @@ public class AudioServiceImpl implements AudioService {
|
|
|
private void fillAlbum(List<Audio> list) {
|
|
|
|
|
|
List<Long> albumIds = new ArrayList<>();
|
|
|
- list.stream().forEach(audio -> albumIds.add(audio.getAlbumId()));
|
|
|
+// list.stream().forEach(audio -> albumIds.add(audio.getAlbumId()));
|
|
|
|
|
|
List<Album> albumList = albumRepo.findByIdIn(albumIds);
|
|
|
|
|
@@ -73,7 +74,7 @@ public class AudioServiceImpl implements AudioService {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- Map<Long, Album> albumMap = albumList.stream().collect(Collectors.toMap(Album::getId, album -> album));
|
|
|
+ Map<BigInteger, Album> albumMap = albumList.stream().collect(Collectors.toMap(Album::getId, album -> album));
|
|
|
|
|
|
list.stream().forEach(audio -> {
|
|
|
Album album = albumMap.get(audio.getAlbumId());
|
|
@@ -125,7 +126,8 @@ public class AudioServiceImpl implements AudioService {
|
|
|
public List<Audio> SearchByAlbum(int mediaType, String album){
|
|
|
if(album==null || album.isEmpty())
|
|
|
return null;
|
|
|
- List<Long> albumIds = albumRepo.findIdsByNameLike(album);
|
|
|
+
|
|
|
+ List<BigInteger> albumIds = albumRepo.findIdsByNameLike(album);
|
|
|
List<Audio> list = null;
|
|
|
if(mediaType== MediaType.AUDIO.getCode() || mediaType==MediaType.VIDEO.getCode())
|
|
|
list = audioRepo.findByMediaTypeAndAlbumIdIn(mediaType, albumIds);
|
|
@@ -140,7 +142,7 @@ public class AudioServiceImpl implements AudioService {
|
|
|
if(name==null || name.isEmpty()
|
|
|
|| album==null || album.isEmpty())
|
|
|
return null;
|
|
|
- List<Long> albumIds = albumRepo.findIdsByNameLike(album);
|
|
|
+ List<BigInteger> albumIds = albumRepo.findIdsByNameLike(album);
|
|
|
List<Audio> list = null;
|
|
|
if(mediaType== MediaType.AUDIO.getCode() || mediaType==MediaType.VIDEO.getCode())
|
|
|
list = audioRepo.findByMediaTypeAndNameAndAlbumIdIn(mediaType, name, albumIds);
|
|
@@ -198,7 +200,7 @@ public class AudioServiceImpl implements AudioService {
|
|
|
}
|
|
|
|
|
|
if (StringUtils.isNotBlank(searchVO.getAlbum())) {
|
|
|
- List<Long> albumIds = albumRepo.findIdsByNameLike(searchVO.getAlbum());
|
|
|
+ List<BigInteger> albumIds = albumRepo.findIdsByNameLike(searchVO.getAlbum());
|
|
|
searchVO.setIdAlbums(albumIds);
|
|
|
}
|
|
|
|
|
@@ -209,4 +211,28 @@ public class AudioServiceImpl implements AudioService {
|
|
|
return onePage;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Audio getAudioInfo(Long id) {
|
|
|
+
|
|
|
+ if (Objects.isNull(id) || id < 1) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ Audio audio = audioRepo.find(id);
|
|
|
+
|
|
|
+ if (Objects.isNull(audio)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ Album album = albumRepo.find(audio.getAlbumId());
|
|
|
+ if (Objects.nonNull(album)) {
|
|
|
+ audio.setAlbum(album.getName());
|
|
|
+ if (StringUtils.isNotBlank(album.getImage())) {
|
|
|
+ audio.setAlbumImage(imgURL + album.getImage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return audio;
|
|
|
+ }
|
|
|
+
|
|
|
}
|