瀏覽代碼

慢查询

zouxuan 10 月之前
父節點
當前提交
b4daea7ff0

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

@@ -16,6 +16,8 @@ public interface SysMusicScoreAccompanimentDao extends BaseDAO<String, SysMusicS
 
     List<SysMusicScoreAccompaniment> queryAccPage(Map<String, Object> params);
 
+    List<SysMusicScoreAccompaniment> queryAccPage1(List<Integer> musicScoreIds);
+
     int findAccCount(Map<String, Object> params);
 
     /**

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

@@ -20,7 +20,7 @@ public interface SysMusicScoreAccompanimentService extends BaseService<String, S
 
     List<SysMusicScoreAccompaniment> queryAccPage(SysExamSongQueryInfo queryInfo);
 
-    List<SysMusicScoreAccompaniment> queryAccPage(Map<String, Object> params,List<CbsMusicSheetWrapper.MusicSheetApplication> applications);
+    List<SysMusicScoreAccompaniment> queryAccPage(List<Integer> musicSheetIds,List<CbsMusicSheetWrapper.MusicSheetApplication> applications);
 
     List<SysMusicScoreAccompaniment> queryAccPage(Map<String, Object> params);
 

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

@@ -326,8 +326,8 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 	}
 
 	@Override
-	public List<SysMusicScoreAccompaniment> queryAccPage(Map<String, Object> params,List<CbsMusicSheetWrapper.MusicSheetApplication> applications) {
-		return this.initAccompaniment(sysMusicScoreAccompanimentDao.queryAccPage(params),applications);
+	public List<SysMusicScoreAccompaniment> queryAccPage(List<Integer> musicSheetIds,List<CbsMusicSheetWrapper.MusicSheetApplication> applications) {
+		return this.initAccompaniment(sysMusicScoreAccompanimentDao.queryAccPage1(musicSheetIds),applications);
 	}
 
 

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

@@ -162,9 +162,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
             if(CollectionUtils.isNotEmpty(applications)){
                 //获取原音
                 List<Integer> musicSheetIds = records.stream().map(SysMusicScore::getId).collect(Collectors.toList());
-                Map<String, Object> params = new HashMap<>();
-                params.put("musicScoreIds", musicSheetIds);
-                List<SysMusicScoreAccompaniment> accompaniments = sysMusicScoreAccompanimentService.queryAccPage(params,applications);
+                List<SysMusicScoreAccompaniment> accompaniments = sysMusicScoreAccompanimentService.queryAccPage(musicSheetIds,applications);
 
                 Map<Long, CbsMusicSheetWrapper.MusicSheetApplication> musicSheetApplicationMap = applications
                         .stream().collect(Collectors.toMap(CbsMusicSheetWrapper.MusicSheetApplication::getId, Function.identity()));

+ 9 - 0
mec-biz/src/main/resources/config/mybatis/SysMusicScoreAccompanimentMapper.xml

@@ -138,6 +138,15 @@
 		<include refid="queryPageSql"/>
 		ORDER BY ses.order_,ses.name_
 	</select>
+	<select id="queryAccPage1" resultMap="SysMusicScoreAccompaniment">
+		SELECT ses.id_ exam_song_id_,ses.name_,ses.type_,ses.url_,ses.cbs_music_categories_id_ categories_id_,ses.metronome_url_,ses.cbs_music_sheet_id_
+		FROM sys_music_score ses
+		where ses.id_ IN
+			<foreach collection="musicScoreIds" separator="," item="item" open="(" close=")">
+				#{item}
+			</foreach>
+		ORDER BY ses.order_,ses.name_
+	</select>
 
 	<select id="findAccCount" resultType="java.lang.Integer">
 		SELECT COUNT(DISTINCT ses.id_)