yonge il y a 3 ans
Parent
commit
13a549b820

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/SysExamSongQueryInfo.java

@@ -19,6 +19,8 @@ public class SysExamSongQueryInfo extends QueryInfo {
 
     @ApiModelProperty(value = "曲库分类",required = true)
     private String categoriesId;
+    
+    private String filterCategoriesIds;
 
     @ApiModelProperty(value = "是否收费",required = true)
     private Integer rankType;
@@ -142,4 +144,12 @@ public class SysExamSongQueryInfo extends QueryInfo {
     public void setType(String type) {
         this.type = type;
     }
+
+	public String getFilterCategoriesIds() {
+		return filterCategoriesIds;
+	}
+
+	public void setFilterCategoriesIds(String filterCategoriesIds) {
+		this.filterCategoriesIds = filterCategoriesIds;
+	}
 }

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

@@ -133,6 +133,23 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Integ
 			
 			queryInfo.setCategoriesIdList(categoriesIdList);
 		}
+		if(StringUtils.isNotBlank(queryInfo.getFilterCategoriesIds())){
+			String[] filterCategoriesIds = queryInfo.getFilterCategoriesIds().split(",");
+
+			List<Integer> filterCategoriesIdList = new ArrayList<>();
+			
+			for(String fc : filterCategoriesIds){
+				SysMusicScoreCategories sysMusicScoreCategories = sysMusicScoreCategoriesService.get(Integer.parseInt(fc));
+				
+				if(sysMusicScoreCategories == null){
+					throw new BizException("分类找不到");
+				}
+				filterCategoriesIdList.add(Integer.parseInt(fc));
+				sysMusicScoreCategories = sysMusicScoreCategoriesService.getChildTree(sysMusicScoreCategories);
+				getAllCategoryIdList(filterCategoriesIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());
+			}
+			queryInfo.setFilterCategoriesIds(filterCategoriesIdList.stream().map(String :: valueOf).collect(Collectors.joining(",")));
+		}
 		return this.queryPage(queryInfo);
     }
     

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

@@ -234,6 +234,9 @@
 					#{item}
 				</foreach>
 			</if>
+			<if test="filterCategoriesIds != null and filterCategoriesIds != ''">
+				AND find_in_set(sesc.id_,#{filterCategoriesIds}) = 0
+			</if>
 			<if test="parentId != null">
 				AND sesc.parent_id_ = #{parentId}
 			</if>

+ 3 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/SysMusicScoreAccompanimentController.java

@@ -99,6 +99,9 @@ public class SysMusicScoreAccompanimentController extends BaseController {
         queryInfo.setShowFlag(1);
         queryInfo.setEnable(true);
         
+        //过滤合奏和考级
+        queryInfo.setFilterCategoriesIds("40,42");
+        
         PageInfo<SysMusicScoreAccompaniment> sysMusicScoreAccompanimentList = sysMusicScoreAccompanimentService.queryScorePage(queryInfo);
        
         String url = null,metronomeUrl = null;