Jelajahi Sumber

新增默认谱面

zouxuan 8 bulan lalu
induk
melakukan
6fa420e2d2

+ 1 - 4
mec-application/src/main/java/com/ym/mec/web/controller/SysMusicScoreController.java

@@ -1,7 +1,6 @@
 package com.ym.mec.web.controller;
 
 import com.dayaedu.cbs.domain.wrapper.MusicSheetWrapper;
-import com.dayaedu.cbs.openfeign.client.MusicFeignClientService;
 import com.ym.mec.biz.dal.dto.ReasonDto;
 import com.ym.mec.biz.dal.entity.SysMusicScore;
 import com.ym.mec.biz.dal.enums.ClientTypeEnum;
@@ -28,8 +27,6 @@ public class SysMusicScoreController extends BaseController {
 
     @Resource
     private SysMusicScoreService sysMusicScoreService;
-    @Resource
-    private MusicFeignClientService musicFeignClientService;
 
     @ApiOperation(value = "修改应用扩展信息")
     @PreAuthorize("@pcs.hasPermissions('sysMusicScore/update', {'BACKEND'})")
@@ -88,7 +85,7 @@ public class SysMusicScoreController extends BaseController {
         if (id == null) {
             return failed("参数不能为空");
         }
-        musicFeignClientService.musicSheetApplicationExtendDel(id);
+        sysMusicScoreService.del(id);
         return succeed();
     }
 

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysMusicScoreDao.java

@@ -31,4 +31,6 @@ public interface SysMusicScoreDao extends BaseDAO<Integer, SysMusicScore> {
     void batchInsertAccompaniment(@Param("vos") List<Integer> musicSheetIds);
 
     List<SysMusicScore> selectSyncPage();
+
+    SysMusicScore getCbsId(@Param("cbsMusicSheetId") Long cbsMusicSheetId);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysMusicScoreService.java

@@ -45,4 +45,6 @@ public interface SysMusicScoreService extends BaseService<Integer, SysMusicScore
     void updateCbs(MusicSheetWrapper.MusicSheetApplicationExtendWrapper addMusicSheetApplicationExtend);
 
     void sync();
+
+    void del(Long id);
 }

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

@@ -34,6 +34,7 @@ import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.*;
@@ -419,6 +420,34 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
         executorService.shutdown();
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void del(Long id) {
+        SysMusicScore musicSheet = sysMusicScoreDao.getCbsId(id);
+        if (musicSheet == null) {
+            throw new BizException("曲目不存在");
+        }
+        CbsMusicSheetWrapper.MusicSheetApplicationQuery query = new CbsMusicSheetWrapper.MusicSheetApplicationQuery();
+        query.setApplicationId(applicationId);
+        query.setMusicSheetIds(Collections.singletonList(Long.parseLong(musicSheet.getCbsMusicSheetId())));
+        query.setDelFlag(true);
+        query.setPage(1);
+        query.setRows(1);
+        R<com.microsvc.toolkit.common.response.paging.PageInfo<CbsMusicSheetWrapper.MusicSheetApplication>> pageInfoR = musicFeignClientService.musicSheetPageByApplication(query);
+        if (pageInfoR.getCode() != 200) {
+            throw new BizException("获取曲目信息异常,{}", pageInfoR.getMessage());
+        }
+        List<CbsMusicSheetWrapper.MusicSheetApplication> rows = pageInfoR.feignData().getRows();
+        if (CollectionUtils.isEmpty(rows)) {
+            throw new BizException("获取曲目信息失败");
+        }
+        CbsMusicSheetWrapper.MusicSheetApplication musicSheetApplication = rows.get(0);
+        R<JSONObject> jsonObjectR = musicFeignClientService.musicSheetApplicationExtendDel(musicSheetApplication.getApplicationExtendId());
+        if (jsonObjectR.getCode() != 200) {
+            throw new BizException("曲目删除失败,{}", jsonObjectR.getMessage());
+        }
+    }
+
     private void syncMusicSheet(SysMusicScore record) {
         List<SysMusicScoreAccompaniment> list = sysMusicScoreAccompanimentDao.findByMusicScoreId(record.getId());
 

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/SysMusicScoreMapper.xml

@@ -178,6 +178,9 @@
 	<select id="selectSyncPage" resultMap="SysMusicScore">
 		select * from sys_music_score where cbs_music_sheet_id_ iS NOT NULL and del_flag_ = 0 AND client_type_ = 'SMART_PRACTICE'
 	</select>
+	<select id="getCbsId" resultMap="SysMusicScore">
+		SELECT * FROM sys_music_score WHERE cbs_music_sheet_id_ = #{cbsMusicSheetId}
+	</select>
 
 	<update id="updateBatchByCbsId">
 		<foreach collection="vos" item="item" index="index" separator=";">