Explorar el Código

管乐迷曲目来源内容平台

zouxuan hace 9 meses
padre
commit
b600d21b3f

+ 13 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CbsMusicSheetServiceImpl.java

@@ -3,13 +3,16 @@ package com.ym.mec.biz.service.impl;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.dayaedu.cbs.common.enums.music.EMusicSourceType;
+import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
 import com.dayaedu.cbs.openfeign.service.CbsMusicSheetService;
 import com.dayaedu.cbs.openfeign.wrapper.music.*;
 import com.microsvc.toolkit.common.response.paging.PageInfo;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
 import com.ym.mec.biz.dal.dao.SysUserTenantDao;
+import com.ym.mec.biz.dal.entity.Instrument;
 import com.ym.mec.biz.dal.entity.Subject;
 import com.ym.mec.biz.dal.entity.SysMusicScore;
+import com.ym.mec.biz.service.InstrumentService;
 import com.ym.mec.biz.service.SubjectService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysMusicScoreService;
@@ -38,6 +41,8 @@ public class CbsMusicSheetServiceImpl implements CbsMusicSheetService {
     private SubjectService subjectService;
     @Resource
     private SysUserTenantDao sysUserTenantDao;
+    @Resource
+    private InstrumentService instrumentService;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -117,6 +122,14 @@ public class CbsMusicSheetServiceImpl implements CbsMusicSheetService {
     }
 
     public boolean updateMusicSheet(CbsMusicSheetApiWrapper.MusicSheetUpdate musicSheetUpdate) {
+        if(StringUtils.isNotBlank(musicSheetUpdate.getMusicalInstrumentIds())) {
+            List<Instrument> instruments = instrumentService.lambdaQuery()
+                    .in(Instrument::getId, Arrays.stream(musicSheetUpdate.getMusicalInstrumentIds().split(","))
+                            .map(Integer::parseInt).collect(Collectors.toList())).list();
+            if (CollectionUtils.isNotEmpty(instruments)) {
+                musicSheetUpdate.setSubjectIds(instruments.stream().map(e -> e.getSubjectId().toString()).distinct().collect(Collectors.joining(",")));
+            }
+        }
         sysMusicScoreService.getDao().updateMusicSheet(musicSheetUpdate);
         return true;
     }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreAccompanimentServiceImpl.java

@@ -120,7 +120,7 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Integ
 				record.setXmlUrl(musicSheetApplication.getXmlFileUrl());
 				record.setMidiUrl(musicSheetApplication.getMidiFileUrl());
 				record.setEnableEvaluation(musicSheetApplication.getIsEvaluated());
-				record.setIsOpenMetronome(!musicSheetApplication.getIsUseSystemBeat() && musicSheetApplication.getIsPlayBeat());
+				record.setIsOpenMetronome(musicSheetApplication.getIsUseSystemBeat());
 				List<CbsMusicSheetWrapper.MusicSheetAccompaniment> accompanimentList = musicSheetApplication.getMusicSheetAccompanimentList();
 				if (CollectionUtils.isNotEmpty(accompanimentList)) {
 					record.setMetronomeUrl(accompanimentList.get(0).getAudioFileUrl());

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreServiceImpl.java

@@ -455,7 +455,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
                 int i = 0;
                 for (SysMusicScoreAccompaniment sheetAccompaniment : accList) {
                     CbsMusicSheetWrapper.MusicSheetSound musicSheetSound = new CbsMusicSheetWrapper.MusicSheetSound();
-                    if (sheetAccompaniment.getIsOpenMetronome()){
+                    if (sheetAccompaniment.getIsOpenMetronome() != null && sheetAccompaniment.getIsOpenMetronome()){
                         musicSheetSound.setAudioFileUrl(sheetAccompaniment.getMp3Url());
                     } else {
                         musicSheetSound.setAudioFileUrl(sheetAccompaniment.getMetronomeMp3Url());