|
@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.yonge.cooleshow.biz.dal.dao.AlbumMusicRelateDao;
|
|
|
+import com.yonge.cooleshow.biz.dal.dto.MusicAlbumSheetDto;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.AlbumMusicRelate;
|
|
|
import com.yonge.cooleshow.biz.dal.service.AlbumMusicRelateService;
|
|
|
import org.slf4j.Logger;
|
|
@@ -49,7 +50,10 @@ public class AlbumMusicRelateServiceImpl extends ServiceImpl<AlbumMusicRelateDao
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public boolean addMusicSheet(Long albumId, List<Long> musicSheetIdList, Long userId) {
|
|
|
+ public boolean addMusicSheet(Long albumId, List<MusicAlbumSheetDto.AlbumMusic> albumMusicList, Long userId) {
|
|
|
+ List<Long> musicSheetIdList = albumMusicList.stream()
|
|
|
+ .map(MusicAlbumSheetDto.AlbumMusic::getMusicSheetId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
List<AlbumMusicRelate> list = this.lambdaQuery()
|
|
|
.eq(AlbumMusicRelate::getAlbumId, albumId)
|
|
|
.in(AlbumMusicRelate::getMusicSheetId, musicSheetIdList)
|
|
@@ -57,12 +61,13 @@ public class AlbumMusicRelateServiceImpl extends ServiceImpl<AlbumMusicRelateDao
|
|
|
List<Long> musicSheetIds = list.stream().map(AlbumMusicRelate::getMusicSheetId).collect(Collectors.toList());
|
|
|
|
|
|
// 去除已有的曲目
|
|
|
- List<AlbumMusicRelate> albumMusicRelateList = musicSheetIdList.stream()
|
|
|
- .filter(id -> !musicSheetIds.contains(id))
|
|
|
- .map(id -> {
|
|
|
+ List<AlbumMusicRelate> albumMusicRelateList = albumMusicList.stream()
|
|
|
+ .filter(albumMusic -> !musicSheetIds.contains(albumMusic.getMusicSheetId()))
|
|
|
+ .map(albumMusic -> {
|
|
|
AlbumMusicRelate albumMusicRelate = new AlbumMusicRelate();
|
|
|
albumMusicRelate.setAlbumId(albumId);
|
|
|
- albumMusicRelate.setMusicSheetId(id);
|
|
|
+ albumMusicRelate.setMusicSheetId(albumMusic.getMusicSheetId());
|
|
|
+ albumMusicRelate.setSortNumber(albumMusic.getSortNumber());
|
|
|
albumMusicRelate.setCreateTime(new Date());
|
|
|
albumMusicRelate.setCreateBy(userId);
|
|
|
return albumMusicRelate;
|