|
@@ -6,12 +6,15 @@ import com.microsvc.toolkit.common.response.paging.QueryInfo;
|
|
|
import com.yonge.cooleshow.admin.io.request.TenantAlbumVo;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.MusicSheet;
|
|
|
+import com.yonge.cooleshow.biz.dal.entity.Subject;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TenantAlbum;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TenantAlbumMusic;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TenantAlbumRef;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
|
|
|
import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
|
|
|
import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.MusicTagService;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SubjectService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.TenantAlbumMusicService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.TenantAlbumRefService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.TenantAlbumService;
|
|
@@ -24,6 +27,7 @@ import com.yonge.toolset.base.page.PageInfo;
|
|
|
import com.yonge.toolset.mybatis.support.PageUtil;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
@@ -34,6 +38,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Comparator;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
@@ -65,6 +70,12 @@ public class TenantAlbumController {
|
|
|
@Autowired
|
|
|
private MusicSheetService musicSheetService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SubjectService subjectService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private MusicTagService musicTagService;
|
|
|
+
|
|
|
/**
|
|
|
* 查询分页
|
|
|
*
|
|
@@ -100,7 +111,7 @@ public class TenantAlbumController {
|
|
|
//查关联表
|
|
|
TenantAlbumRef one = tenantAlbumRefService.lambdaQuery().eq(TenantAlbumRef::getTenantAlbumId, id)
|
|
|
.last("limit 1").one();
|
|
|
- vo.setTenantId(one.getTenantId());
|
|
|
+ vo.setTenantId(one.getTenantId().toString());
|
|
|
//查询曲目表
|
|
|
|
|
|
TenantInfo tenantInfo = tenantInfoService.getById(one.getTenantId());
|
|
@@ -138,8 +149,32 @@ public class TenantAlbumController {
|
|
|
tenantAlbumSheet.setMusicSheetName(musicSheet.getMusicSheetName());
|
|
|
tenantAlbumSheet.setMusicTag(musicSheet.getMusicTag());
|
|
|
tenantAlbumSheet.setComposer(musicSheet.getComposer());
|
|
|
+ tenantAlbumSheet.setMusicSubject(musicSheet.getMusicSubject());
|
|
|
return tenantAlbumSheet;
|
|
|
}).collect(Collectors.toList());
|
|
|
+ tenantAlbumSheets.stream().forEach(t->{
|
|
|
+ String musicSubject = t.getMusicSubject();
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(musicSubject)){
|
|
|
+ //设置对应声部名称
|
|
|
+ List<Subject> subject = subjectService.findBySubjectByIdList(musicSubject);
|
|
|
+ t.setMusicSubjectName(subject.get(0).getName());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //设置对应标签名称
|
|
|
+ String musicTag = t.getMusicTag();
|
|
|
+ if (StringUtils.isNotBlank(musicTag)){
|
|
|
+ String[] split = musicTag.split(",");
|
|
|
+ for (String s : split) {
|
|
|
+ List<Long> list = new ArrayList<>();
|
|
|
+ list.add(Long.parseLong(s));
|
|
|
+ String tagName = musicTagService.getMusicTagNames(list);
|
|
|
+ t.setMusicTagName(tagName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
|
|
|
|
|
|
sheetData.setTenantAlbumSheetList(tenantAlbumSheets);
|
|
@@ -161,9 +196,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().toString());
|
|
|
+ return tenantAlbumSheet;
|
|
|
+ }).collect(Collectors.toList()));
|
|
|
+ sheetData.setSubjectType(next.getSubjectType());
|
|
|
+ return sheetData;
|
|
|
+ }
|
|
|
+ ).collect(Collectors.toList());
|
|
|
tenantAlbumService.insertTenantAlbum(album.getTenantId(), tenantAlbum, musicSheetDataList);
|
|
|
return HttpResponseResult.succeed();
|
|
|
}
|
|
@@ -175,9 +223,21 @@ 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().toString());
|
|
|
+ return tenantAlbumSheet;
|
|
|
+ }).collect(Collectors.toList()));
|
|
|
+ sheetData.setSubjectType(next.getSubjectType());
|
|
|
+ return sheetData;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
tenantAlbumService.updateAlbum(album.getTenantId(), tenantAlbum, musicSheetDataList);
|
|
|
return HttpResponseResult.succeed();
|
|
|
}
|