Browse Source

机构专辑fix

haonan 1 year ago
parent
commit
f1ae7171d6

+ 16 - 3
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/TenantAlbumController.java

@@ -155,9 +155,22 @@ public class TenantAlbumController {
         TenantAlbum tenantAlbum = JSON.parseObject(album.jsonString(), TenantAlbum.class);
         List<TenantAlbumVo.MusicSheetData> musicSheetData = album.getMusicSheetData();
 
-        List<TenantAlbumWrapper.MusicSheetData> musicSheetDataList = musicSheetData.stream().map(next ->
-                        JSON.parseObject(JSON.toJSONString(next), TenantAlbumWrapper.MusicSheetData.class))
-                .collect(Collectors.toList());
+        List<TenantAlbumWrapper.MusicSheetData> musicSheetDataList = musicSheetData.stream().map(next ->{
+                    //TenantAlbumWrapper.MusicSheetData sheetData =new TenantAlbumWrapper.MusicSheetData();
+                    TenantAlbumWrapper.MusicSheetData sheetData =new TenantAlbumWrapper.MusicSheetData();
+
+                    List<TenantAlbumVo.MusicObject> musicSheetList = next.getMusicSheetList();
+                    sheetData.getTenantAlbumSheetList().addAll( musicSheetList.stream().map(m->{
+                        TenantAlbumWrapper.TenantAlbumSheet tenantAlbumSheet = new TenantAlbumWrapper.TenantAlbumSheet();
+                        tenantAlbumSheet.setLevel(m.getLevel());
+                        tenantAlbumSheet.setType(m.getType());
+                        tenantAlbumSheet.setId(m.getId());
+                       return tenantAlbumSheet;
+                    }).collect(Collectors.toList()));
+                    sheetData.setSubjectType(next.getSubjectType());
+                    return sheetData;
+        }
+        ).collect(Collectors.toList());
         tenantAlbumService.insertTenantAlbum(album.getTenantId(), tenantAlbum, musicSheetDataList);
         return HttpResponseResult.succeed();
     }

+ 14 - 2
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/io/request/TenantAlbumVo.java

@@ -86,8 +86,17 @@ public class TenantAlbumVo {
         @NotNull
         private SubjectTypeEnum subjectType;
 
-        @ApiModelProperty("声部id列表")
-        private List<Long> musicSheetIdList = new ArrayList<>();
+        @ApiModelProperty("曲目列表")
+        private List<MusicObject> musicSheetList = new ArrayList<>();
+
+    }
+
+    @ApiModel("曲目对象")
+    @Data
+    public static class MusicObject {
+
+        @ApiModelProperty("曲目id")
+        private Long id;
 
         @ApiModelProperty("类型")
         private String type;
@@ -98,6 +107,9 @@ public class TenantAlbumVo {
 
     }
 
+
+
+
     @Data
     public static class tenantAlbumMusics {
         private Long id;

+ 4 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumServiceImpl.java

@@ -336,16 +336,16 @@ public class TenantAlbumServiceImpl extends ServiceImpl<TenantAlbumMapper, Tenan
         //曲目表赋值
         List<TenantAlbumMusic> tenantAlbumMusics = musicSheetDataList.stream().map(next -> {
             AtomicInteger sort = new AtomicInteger(1);
-            return next.getMusicSheetIdList().stream().map(tenantAlbumMusic -> {
+            return next.getTenantAlbumSheetList().stream().map(tenantAlbumMusic -> {
                 TenantAlbumMusic tenantAlbumMusic1 = new TenantAlbumMusic();
                 tenantAlbumMusic1.setTenantId(tenantId);
                 tenantAlbumMusic1.setSubjectType(next.getSubjectType());
                 tenantAlbumMusic1.setTenantAlbumId(tenantAlbum.getId());
-                tenantAlbumMusic1.setMusicSheetId(tenantAlbumMusic);
+                tenantAlbumMusic1.setMusicSheetId(tenantAlbumMusic.getId());
                 tenantAlbumMusic1.setSortNumber(sort.getAndIncrement());
                 tenantAlbumMusic1.setDelFlag(false);
-                tenantAlbumMusic1.setLevel(next.getLevel());
-                tenantAlbumMusic1.setType(next.getType());
+                tenantAlbumMusic1.setLevel(tenantAlbumMusic.getLevel());
+                tenantAlbumMusic1.setType(tenantAlbumMusic.getType());
                 return tenantAlbumMusic1;
             }).collect(Collectors.toList());
         }).flatMap(Collection::stream).collect(Collectors.toList());

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAlbumWrapper.java

@@ -240,8 +240,8 @@ public class TenantAlbumWrapper {
 
         private SubjectTypeEnum subjectType;
 
-        @ApiModelProperty(value = "声部列表",hidden = true)
-        private List<Long> musicSheetIdList = new ArrayList<>();
+        //@ApiModelProperty(value = "声部列表",hidden = true)
+        //private List<Long> musicSheetIdList = new ArrayList<>();
 
         @ApiModelProperty("曲目列表")
         private List<TenantAlbumSheet> tenantAlbumSheetList = new ArrayList<>();