| 
					
				 | 
			
			
				@@ -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; 
			 |