浏览代码

去掉曲目分类

zouxuan 7 月之前
父节点
当前提交
03345938ad

+ 5 - 2
mec-application/src/main/java/com/ym/mec/student/controller/SysMusicScoreCategoriesController.java

@@ -3,6 +3,7 @@ package com.ym.mec.student.controller;
 import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysUserService;
@@ -21,6 +22,8 @@ import javax.annotation.Resource;
 public class SysMusicScoreCategoriesController extends BaseController {
 
     @Resource
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
+    @Resource
     private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
     @Resource
     private SysUserService sysUserService;
@@ -39,7 +42,7 @@ public class SysMusicScoreCategoriesController extends BaseController {
     public Object queryTree(MusicScoreQueryInfo queryInfo) {
         SysUser sysUser = sysUserService.getUser();
         String teachingMaterialIds = organizationService.getTeachingMaterialIds(sysUser.getOrganId().toString(),sysUser.getTenantId());
-        return succeed(sysMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
+        return succeed(cbsMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
     }
 
     @ApiOperation(value = "树状列表")
@@ -49,7 +52,7 @@ public class SysMusicScoreCategoriesController extends BaseController {
         SysUser sysUser = sysUserService.getUser();
         String teachingMaterialIds = organizationService.getTeachingMaterialIds(sysUser.getOrganId().toString(),sysUser.getTenantId());
         if(teachingMaterialIds.contains(queryInfo.getParentId().toString())){
-            return succeed(sysMusicScoreCategoriesService.queryTree(queryInfo));
+            return succeed(cbsMusicScoreCategoriesService.queryTree(queryInfo));
         }
         return succeed();
     }

+ 4 - 1
mec-application/src/main/java/com/ym/mec/teacher/controller/SysMusicScoreCategoriesController.java

@@ -5,6 +5,7 @@ import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysUserService;
@@ -27,6 +28,8 @@ public class SysMusicScoreCategoriesController extends BaseController {
     @Resource
     private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
     @Resource
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
+    @Resource
     private SysUserService sysUserService;
     @Resource
     private OrganizationService organizationService;
@@ -54,7 +57,7 @@ public class SysMusicScoreCategoriesController extends BaseController {
             organId = organId + "," + teacher.getFlowOrganRange();
         }
         String teachingMaterialIds = organizationService.getTeachingMaterialIds(organId,sysUser.getTenantId());
-        return succeed(sysMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
+        return succeed(cbsMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
     }
 
     @ApiOperation(value = "获取分类详情")

+ 17 - 12
mec-application/src/main/java/com/ym/mec/web/controller/SysMusicScoreCategoriesController.java

@@ -1,27 +1,31 @@
 package com.ym.mec.web.controller;
 
 import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
-import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
-import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
-import com.ym.mec.biz.service.OrganizationService;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
 
 @RequestMapping("${app-config.url.web:}/sysMusicScoreCategories")
 @Api(tags = "曲库分类服务")
 @RestController
 public class SysMusicScoreCategoriesController extends BaseController {
 
-    @Autowired
+    @Resource
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
+    @Resource
     private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
-    @Autowired
-    private OrganizationService organizationService;
-
+//    @Autowired
+//    private OrganizationService organizationService;
+/*
     @ApiOperation(value = "分页查询")
     @GetMapping("/queryPage")
     @PreAuthorize("@pcs.hasPermissions('sysMusicScoreCategories/queryPage')")
@@ -61,20 +65,21 @@ public class SysMusicScoreCategoriesController extends BaseController {
     public Object delete(Integer id) {
         sysMusicScoreCategoriesService.del(id);
         return succeed();
-    }
+    }*/
 
     @ApiOperation(value = "树状列表")
     @GetMapping("/queryTree")
     @PreAuthorize("@pcs.hasPermissions('sysMusicScoreCategories/queryTree')")
     public Object queryTree(MusicScoreQueryInfo queryInfo) {
         //queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
-        return succeed(sysMusicScoreCategoriesService.queryTree(queryInfo));
+        return succeed(cbsMusicScoreCategoriesService.queryTree(queryInfo));
     }
 
-    @ApiOperation(value = "获取分类详情")
+/*    @ApiOperation(value = "获取分类详情")
     @GetMapping("/get")
     @PreAuthorize("@pcs.hasPermissions('sysMusicScoreCategories/get')")
     public Object get(Integer id) {
+        cbsMusicScoreCategoriesService.queryByIds(id.toString());
         return succeed(sysMusicScoreCategoriesService.getDetail(id));
-    }
+    }*/
 }

+ 3 - 4
mec-application/src/main/java/com/ym/mec/web/controller/education/EduMusicScoreController.java

@@ -7,16 +7,15 @@ import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.entity.SysMusicScoreAccompaniment;
 import com.ym.mec.biz.dal.enums.ClientTypeEnum;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.biz.service.SysMusicScoreAccompanimentService;
-import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysUserService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -30,7 +29,7 @@ import java.util.List;
 @RestController
 public class EduMusicScoreController extends BaseController {
     @Resource
-    private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
     @Resource
     private SysMusicScoreAccompanimentService sysMusicScoreAccompanimentService;
     @Resource
@@ -46,7 +45,7 @@ public class EduMusicScoreController extends BaseController {
         SysUser sysUser = sysUserService.getUser();
         String organId = organizationService.getEmployeeOrgan(sysUser.getId(), null, sysUser.getIsSuperAdmin() && sysUser.getTenantId() == -1);
         String teachingMaterialIds = organizationService.getTeachingMaterialIds(organId, sysUser.getTenantId());
-        return succeed(sysMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
+        return succeed(cbsMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
     }
 
     @ApiOperation(value = "分页查询")

+ 3 - 3
mec-application/src/main/java/com/ym/mec/web/controller/school/SchoolMusicScoreController.java

@@ -3,9 +3,9 @@ package com.ym.mec.web.controller.school;
 import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.entity.SchoolStaff;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.biz.service.SchoolStaffService;
-import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysUserService;
 import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
@@ -21,7 +21,7 @@ import javax.annotation.Resource;
 @RestController
 public class SchoolMusicScoreController extends BaseController {
     @Resource
-    private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
     @Resource
     private SysUserService sysUserService;
     @Resource
@@ -35,6 +35,6 @@ public class SchoolMusicScoreController extends BaseController {
         SysUser sysUser = sysUserService.getUser();
         SchoolStaff schoolStaff = schoolStaffService.getByUserId(sysUser.getId());
         String teachingMaterialIds = organizationService.getTeachingMaterialIds(schoolStaff.getOrganIdList(), sysUser.getTenantId());
-        return succeed(sysMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
+        return succeed(cbsMusicScoreCategoriesService.queryCategoriesTreeList(teachingMaterialIds, queryInfo.getEnable()));
     }
 }

+ 20 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CbsMusicScoreCategoriesService.java

@@ -0,0 +1,20 @@
+package com.ym.mec.biz.service;
+
+
+import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
+import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
+
+import java.util.List;
+
+public interface CbsMusicScoreCategoriesService {
+
+    List<SysMusicScoreCategories> queryTree(MusicScoreQueryInfo menuQueryInfo);
+
+    SysMusicScoreCategories getChildTree(SysMusicScoreCategories sysMusicScoreCategories);
+
+    List<Integer> getAllCategoryIdList(String categoriesIds);
+
+    List<SysMusicScoreCategories> queryByIds(String ids);
+
+    List<SysMusicScoreCategories> queryCategoriesTreeList(String categoryIdList, Boolean isQueryEnable);
+}

+ 165 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CbsMusicScoreCategoriesServiceImpl.java

@@ -0,0 +1,165 @@
+package com.ym.mec.biz.service.impl;
+
+
+import com.dayaedu.cbs.openfeign.client.MusicFeignClientService;
+import com.dayaedu.cbs.openfeign.wrapper.music.MusicSheetCategoriesWrapper;
+import com.microsvc.toolkit.common.response.template.R;
+import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
+import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
+import com.ym.mec.common.exception.BizException;
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+@Service
+public class CbsMusicScoreCategoriesServiceImpl implements CbsMusicScoreCategoriesService {
+
+	@Resource
+	private MusicFeignClientService musicFeignClientService;
+
+	@Override
+	public List<SysMusicScoreCategories> queryTree(MusicScoreQueryInfo menuQueryInfo) {
+		MusicSheetCategoriesWrapper.MusicSheetCategoriesQuery query = new MusicSheetCategoriesWrapper.MusicSheetCategoriesQuery();
+		query.setPage(menuQueryInfo.getPage());
+		query.setRows(menuQueryInfo.getRows());
+		query.setKeyword(menuQueryInfo.getSearch());
+		query.setParentId(menuQueryInfo.getParentId().longValue());
+		query.setEnable(menuQueryInfo.getEnable());
+		R<List<MusicSheetCategoriesWrapper.MusicSheetCategories>> listR = musicFeignClientService.queryTree(query);
+		if (listR.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", listR.getMessage());
+		}
+		List<MusicSheetCategoriesWrapper.MusicSheetCategories> musicSheetCategories = listR.feignData();
+		return musicSheetCategories.stream().map(this::convertMusicSheetCategoryToSysMusicScoreCategory).collect(Collectors.toList());
+	}
+
+	@Override
+	public SysMusicScoreCategories getChildTree(SysMusicScoreCategories sysMusicScoreCategories) {
+		R<MusicSheetCategoriesWrapper.MusicSheetCategories> childTree = musicFeignClientService.getChildTree(convertSysMusicScoreCategoryToMusicSheetCategory(sysMusicScoreCategories));
+		if (childTree.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", childTree.getMessage());
+		}
+		MusicSheetCategoriesWrapper.MusicSheetCategories musicSheetCategories = childTree.feignData();
+		if (musicSheetCategories != null) {
+			return convertMusicSheetCategoryToSysMusicScoreCategory(musicSheetCategories);
+		}
+		return sysMusicScoreCategories;
+	}
+
+	@Override
+	public List<Integer> getAllCategoryIdList(String categoriesIds) {
+		R<List<Integer>> allCategoryIdList = musicFeignClientService.getAllCategoryIdList(categoriesIds);
+		if (allCategoryIdList.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", allCategoryIdList.getMessage());
+		}
+		return allCategoryIdList.feignData();
+	}
+
+	@Override
+	public List<SysMusicScoreCategories> queryByIds(String ids) {
+		R<List<MusicSheetCategoriesWrapper.MusicSheetCategories>> listR = musicFeignClientService.findByIds(ids);
+		if (listR.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", listR.getMessage());
+		}
+		List<MusicSheetCategoriesWrapper.MusicSheetCategories> musicSheetCategories = listR.feignData();
+		return musicSheetCategories.stream().map(this::convertMusicSheetCategoryToSysMusicScoreCategory).collect(Collectors.toList());
+	}
+
+	@Override
+	public List<SysMusicScoreCategories> queryCategoriesTreeList(String categoryIds, Boolean isQueryEnable) {
+		categoryIds = categoryIds.endsWith(",") ? categoryIds.substring(0, categoryIds.length() - 1) : categoryIds;
+		List<SysMusicScoreCategories> categoryList = this.queryByIds(categoryIds);
+		List<SysMusicScoreCategories> rows = new ArrayList<SysMusicScoreCategories>();
+		SysMusicScoreCategories parentCategory = null;
+		SysMusicScoreCategories subCategory = null;
+		for(SysMusicScoreCategories smsc : categoryList){
+
+			if(smsc == null){
+				continue;
+			}
+			if(isQueryEnable == null){
+				isQueryEnable = true;
+			}
+			if(isQueryEnable && !smsc.getEnable()){
+				continue;
+			}
+			parentCategory = getParentTree(smsc);
+			subCategory = getChildTree(smsc);
+
+			if(parentCategory == null){
+				insertSubToParent(rows, subCategory);
+			}else{
+				parentCategory.getSysMusicScoreCategoriesList().add(subCategory);
+				insertSubToParent(rows, parentCategory);
+			}
+
+
+		}
+
+		return rows;
+	}
+
+	public SysMusicScoreCategories getParentTree(SysMusicScoreCategories sysMusicScoreCategories) {
+		if (sysMusicScoreCategories != null && sysMusicScoreCategories.getParentId() > 0) {
+			List<SysMusicScoreCategories> categories = this.queryByIds(sysMusicScoreCategories.getParentId().toString());
+			if (CollectionUtils.isNotEmpty(categories)) {
+				SysMusicScoreCategories parentCategories = categories.get(0);
+				if (parentCategories != null) {
+					if(parentCategories.getParentId() > 0){
+						return getParentTree(parentCategories);
+					}
+					return parentCategories;
+				}
+			}
+		}
+		return null;
+	}
+
+
+	private void insertSubToParent(List<SysMusicScoreCategories> parentTree, SysMusicScoreCategories targetCategory) {
+		for (SysMusicScoreCategories target : parentTree) {
+			if (targetCategory.getId().intValue() == target.getId()) {
+				insertSubToParent(target.getSysMusicScoreCategoriesList(),targetCategory.getSysMusicScoreCategoriesList().get(0));
+				return;
+			}
+		}
+		parentTree.add(targetCategory);
+	}
+
+	private MusicSheetCategoriesWrapper.MusicSheetCategories convertSysMusicScoreCategoryToMusicSheetCategory(SysMusicScoreCategories sysMusicScoreCategory) {
+		MusicSheetCategoriesWrapper.MusicSheetCategories musicSheetCategory = new MusicSheetCategoriesWrapper.MusicSheetCategories();
+		musicSheetCategory.setId(Long.valueOf(sysMusicScoreCategory.getId()));
+		musicSheetCategory.setName(sysMusicScoreCategory.getName());
+		musicSheetCategory.setParentId(Long.valueOf(sysMusicScoreCategory.getParentId()));
+		musicSheetCategory.setEnable(sysMusicScoreCategory.getEnable());
+		musicSheetCategory.setCoverImg(sysMusicScoreCategory.getCoverImg());
+		List<SysMusicScoreCategories> sysMusicScoreCategoriesList = sysMusicScoreCategory.getSysMusicScoreCategoriesList();
+		if(CollectionUtils.isNotEmpty(sysMusicScoreCategoriesList)){
+			List<MusicSheetCategoriesWrapper.MusicSheetCategories> categoriesList = sysMusicScoreCategoriesList.stream()
+					.map(this::convertSysMusicScoreCategoryToMusicSheetCategory).collect(Collectors.toList());
+			musicSheetCategory.setMusicSheetCategoriesList(categoriesList);
+		}
+		return musicSheetCategory;
+	}
+
+	private SysMusicScoreCategories convertMusicSheetCategoryToSysMusicScoreCategory(MusicSheetCategoriesWrapper.MusicSheetCategories musicSheetCategory) {
+		SysMusicScoreCategories sysMusicScoreCategory = new SysMusicScoreCategories();
+		sysMusicScoreCategory.setId(musicSheetCategory.getId().intValue());
+		sysMusicScoreCategory.setName(musicSheetCategory.getName());
+		sysMusicScoreCategory.setParentId(musicSheetCategory.getParentId().intValue());
+		sysMusicScoreCategory.setEnable(musicSheetCategory.getEnable());
+		sysMusicScoreCategory.setCoverImg(musicSheetCategory.getCoverImg());
+		List<MusicSheetCategoriesWrapper.MusicSheetCategories> categoriesList = musicSheetCategory.getMusicSheetCategoriesList();
+		if(CollectionUtils.isNotEmpty(categoriesList)){
+			List<SysMusicScoreCategories> sysMusicScoreCategoriesList = categoriesList.stream()
+					.map(this::convertMusicSheetCategoryToSysMusicScoreCategory).collect(Collectors.toList());
+			sysMusicScoreCategory.setSysMusicScoreCategoriesList(sysMusicScoreCategoriesList);
+		}
+		return sysMusicScoreCategory;
+	}
+}

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

@@ -11,7 +11,6 @@ import com.ym.mec.biz.dal.dao.SysUserTenantDao;
 import com.ym.mec.biz.dal.entity.Instrument;
 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;
 import com.ym.mec.common.exception.BizException;
@@ -36,8 +35,6 @@ public class CbsMusicSheetServiceImpl implements CbsMusicSheetService {
     @Resource
     private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
     @Resource
-    private SubjectService subjectService;
-    @Resource
     private SysUserTenantDao sysUserTenantDao;
     @Resource
     private InstrumentService instrumentService;

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

@@ -1,15 +1,14 @@
 package com.ym.mec.biz.service.impl;
 
 
-import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetCategoryWrapper;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
 import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
 import com.ym.mec.biz.dal.dao.SysMusicScoreAccompanimentDao;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
 import com.ym.mec.biz.service.InstrumentService;
 import com.ym.mec.biz.service.SysMusicScoreAccompanimentService;
-import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysMusicScoreService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
@@ -32,7 +31,7 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 	@Resource
 	private SysMusicScoreAccompanimentDao sysMusicScoreAccompanimentDao;
 	@Resource
-	private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
+	private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
 	@Resource
 	private SysMusicScoreService sysMusicScoreService;
 	@Resource
@@ -133,13 +132,11 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 		if(CollectionUtils.isEmpty(applications)){
 			return result;
 		}
-		List<Long> musicSheetCategoryIds = applications.stream().map(e -> e.getMusicSheetCategoryId())
-				.filter(Objects::isNull).distinct().collect(Collectors.toList());
-		CbsMusicSheetCategoryWrapper.MusicSheetCategoryQuery categoryQuery = new CbsMusicSheetCategoryWrapper.MusicSheetCategoryQuery();
-		categoryQuery.setIds(musicSheetCategoryIds);
-		List<CbsMusicSheetCategoryWrapper.MusicSheetCategory> musicSheetCategories = sysMusicScoreCategoriesService.getDao().categoryList(categoryQuery);
-		Map<Long, CbsMusicSheetCategoryWrapper.MusicSheetCategory> categoryMap = musicSheetCategories.stream().
-				collect(Collectors.toMap(CbsMusicSheetCategoryWrapper.MusicSheetCategory::getId, Function.identity()));
+		String musicSheetCategoryIds = applications.stream().map(CbsMusicSheetWrapper.MusicSheetAccApplication::getMusicSheetCategoryId)
+				.filter(Objects::isNull).distinct().map(String::valueOf).collect(Collectors.joining(","));
+		List<SysMusicScoreCategories> musicSheetCategories = cbsMusicScoreCategoriesService.queryByIds(musicSheetCategoryIds);
+		Map<Integer, SysMusicScoreCategories> categoryMap = musicSheetCategories.stream().
+				collect(Collectors.toMap(SysMusicScoreCategories::getId, Function.identity()));
 		for (CbsMusicSheetWrapper.MusicSheetAccApplication musicSheetApplication : applications) {
 			SysMusicScoreAccompaniment record = new SysMusicScoreAccompaniment();
 			record.setIsConvertibleScore(musicSheetApplication.getIsConvertibleScore());
@@ -156,9 +153,9 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 			record.setExtStyleConfigJson(musicSheetApplication.getExtStyleConfigJson());
 			if(musicSheetApplication.getMusicSheetCategoryId() != null){
 				record.setCategoriesId(musicSheetApplication.getMusicSheetCategoryId().intValue());
-				CbsMusicSheetCategoryWrapper.MusicSheetCategory musicSheetCategory = categoryMap.get(record.getCategoriesId().longValue());
+				SysMusicScoreCategories musicSheetCategory = categoryMap.get(record.getCategoriesId());
 				if(musicSheetCategory != null){
-					record.setParentCategoriesId(musicSheetCategory.getParentId().intValue());
+					record.setParentCategoriesId(musicSheetCategory.getParentId());
 				}
 			}
 			record.setMusicSheetType(musicSheetApplication.getMusicSheetType().getCode());
@@ -237,7 +234,7 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 			musicScoreQueryInfo.setParentId(categoriesId);
 			musicScoreQueryInfo.setEnable(queryInfo.getEnable());
 			musicScoreQueryInfo.setOrganId(queryInfo.getOrganId());
-			List<SysMusicScoreCategories> scoreCategories = sysMusicScoreCategoriesService.queryTree(musicScoreQueryInfo);
+			List<SysMusicScoreCategories> scoreCategories = cbsMusicScoreCategoriesService.queryTree(musicScoreQueryInfo);
 			if(CollectionUtils.isNotEmpty(scoreCategories)){
 				categoriesIdList = scoreCategories.stream().map(SysMusicScoreCategories::getId).collect(Collectors.toList());
 			}else {
@@ -264,7 +261,7 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 		if(categoriesId != null){
 			MusicScoreQueryInfo musicScoreQueryInfo = new MusicScoreQueryInfo();
 			musicScoreQueryInfo.setParentId(categoriesId);
-			List<SysMusicScoreCategories> scoreCategories = sysMusicScoreCategoriesService.queryTree(musicScoreQueryInfo);
+			List<SysMusicScoreCategories> scoreCategories = cbsMusicScoreCategoriesService.queryTree(musicScoreQueryInfo);
 			if(CollectionUtils.isNotEmpty(scoreCategories)){
                 List<SysMusicScoreCategories> allScoreCategories = new ArrayList<>(scoreCategories);
 				for (SysMusicScoreCategories scoreCategory : scoreCategories) {
@@ -283,36 +280,11 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
     @Override
     public PageInfo<SysMusicScoreAccompaniment> queryScorePage(SysExamSongQueryInfo queryInfo) {
 		if(queryInfo.getCategoriesIds() != null){
-			List<Integer> categoriesIdList = new ArrayList<>();
-			String[] categoriesIds = queryInfo.getCategoriesIds().split(",");
-
-			for(String fc : categoriesIds){
-				SysMusicScoreCategories sysMusicScoreCategories = sysMusicScoreCategoriesService.get(Integer.parseInt(fc));
-				
-				if(sysMusicScoreCategories == null){
-					throw new BizException("分类找不到");
-				}
-				categoriesIdList.add(Integer.parseInt(fc));
-				sysMusicScoreCategories = sysMusicScoreCategoriesService.getChildTree(sysMusicScoreCategories);
-				getAllCategoryIdList(categoriesIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());
-			}
+			List<Integer> categoriesIdList = cbsMusicScoreCategoriesService.getAllCategoryIdList(queryInfo.getCategoriesIds());
 			queryInfo.setCategoriesIds(categoriesIdList.stream().map(String :: valueOf).collect(Collectors.joining(",")));
 		}
 		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());
-			}
+			List<Integer> filterCategoriesIdList = cbsMusicScoreCategoriesService.getAllCategoryIdList(queryInfo.getFilterCategoriesIds());
 			queryInfo.setFilterCategoriesIds(filterCategoriesIdList.stream().map(String :: valueOf).collect(Collectors.joining(",")));
 		}
 		//如果声部不为空,关联声部挂的乐器
@@ -337,15 +309,4 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 		List<SysMusicScoreAccompaniment> accompaniments = this.initAccompaniments(musicSheetAccApplicationPageInfo.getRows());
 		return PageUtil.transPageInfo(musicSheetAccApplicationPageInfo,accompaniments);
 	}
-    
-    private void getAllCategoryIdList(List<Integer> categoryIdList, List<SysMusicScoreCategories> sysMusicScoreCategoriesList){
-    	
-    	if(CollectionUtils.isNotEmpty(sysMusicScoreCategoriesList)){
-    		for(SysMusicScoreCategories sysMusicScoreCategories : sysMusicScoreCategoriesList){
-    			categoryIdList.add(sysMusicScoreCategories.getId());
-    			getAllCategoryIdList(categoryIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());
-    		}
-    	}
-    	
-    }
 }

+ 9 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreCategoriesServiceImpl.java

@@ -52,39 +52,39 @@ public class SysMusicScoreCategoriesServiceImpl extends BaseServiceImpl<Integer,
 
 	@Override
 	public List<SysMusicScoreCategories> queryCategoriesTreeList(String categoryIds, Boolean isQueryEnable) {
-		
+
 		categoryIds = categoryIds.endsWith(",") ? categoryIds.substring(0, categoryIds.length() - 1) : categoryIds;
 
 		List<SysMusicScoreCategories> rows = new ArrayList<SysMusicScoreCategories>();
-		
+
 		List<SysMusicScoreCategories> categoryList = sysMusicScoreCategoriesDao.queryByIds(categoryIds);
-		
+
 		SysMusicScoreCategories parentCategory = null;
 		SysMusicScoreCategories subCategory = null;
 		for(SysMusicScoreCategories smsc : categoryList){
-			
+
 			if(smsc == null){
 				continue;
 			}
 			if(isQueryEnable == null){
 				isQueryEnable = true;
 			}
-			if(isQueryEnable == true && smsc.getEnable() != true){
+			if(isQueryEnable && !smsc.getEnable()){
 				continue;
 			}
 			parentCategory = getParentTree(smsc);
 			subCategory = getChildTree(smsc);
-			
+
 			if(parentCategory == null){
 				insertSubToParent(rows, subCategory);
 			}else{
 				parentCategory.getSysMusicScoreCategoriesList().add(subCategory);
 				insertSubToParent(rows, parentCategory);
 			}
-			
-			
+
+
 		}
-		
+
 		return rows;
 	}
 

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

@@ -1,7 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
 
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.beust.jcommander.internal.Lists;
 import com.dayaedu.cbs.common.enums.EClientType;
@@ -15,7 +14,6 @@ import com.dayaedu.cbs.openfeign.client.MusicFeignClientService;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetApplicationExtendClientWrapper;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
 import com.dayaedu.cbs.openfeign.wrapper.musicInstrument.CbsMusicalInstrumentWrapper;
-import com.google.common.collect.Maps;
 import com.microsvc.toolkit.common.response.template.R;
 import com.ym.mec.biz.dal.dao.SysMusicScoreAccompanimentDao;
 import com.ym.mec.biz.dal.dao.SysMusicScoreCategoriesDao;
@@ -24,7 +22,10 @@ import com.ym.mec.biz.dal.dto.ReasonDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
-import com.ym.mec.biz.service.*;
+import com.ym.mec.biz.service.CbsMusicScoreCategoriesService;
+import com.ym.mec.biz.service.InstrumentService;
+import com.ym.mec.biz.service.SubjectService;
+import com.ym.mec.biz.service.SysMusicScoreService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
@@ -36,7 +37,6 @@ 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.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
@@ -56,9 +56,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
     @Resource
     private SysMusicScoreCategoriesDao sysMusicScoreCategoriesDao;
     @Resource
-    private SysMusicScoreCategoriesService sysMusicScoreCategoriesService;
-    @Resource
-    private OrganizationService organizationService;
+    private CbsMusicScoreCategoriesService cbsMusicScoreCategoriesService;
     @Resource
     private SubjectService subjectService;
     @Resource
@@ -260,7 +258,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
     @Override
     public List<SysMusicScore> queryMusicScoreAll(SysExamSongQueryInfo queryInfo) {
         //封装查询参数
-        queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
+//        queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
         if(queryInfo.getSubjectId() != null){
             queryInfo.setSubjectIds(queryInfo.getSubjectId().toString());
         }
@@ -292,8 +290,8 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
 
     private void initCategoryIds(SysExamSongQueryInfo queryInfo){
         if(StringUtils.isNotEmpty(queryInfo.getCategoriesId())){
-            List<Integer> categoriesIdList = new ArrayList<>();
-            Integer categoriesId = Integer.parseInt(queryInfo.getCategoriesId());
+            List<Integer> categoriesIdList = cbsMusicScoreCategoriesService.getAllCategoryIdList(queryInfo.getCategoriesId());
+            /*Integer categoriesId = Integer.parseInt(queryInfo.getCategoriesId());
 
             SysMusicScoreCategories sysMusicScoreCategories = sysMusicScoreCategoriesService.get(categoriesId);
 
@@ -302,7 +300,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
             }
             categoriesIdList.add(categoriesId);
             sysMusicScoreCategories = sysMusicScoreCategoriesService.getChildTree(sysMusicScoreCategories);
-            getAllCategoryIdList(categoriesIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());
+            getAllCategoryIdList(categoriesIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());*/
 
             queryInfo.setCategoriesIdList(categoriesIdList);
         }

+ 1 - 1
pom.xml

@@ -26,7 +26,7 @@
 		<docker.registry.repository>127.0.0.1:5000</docker.registry.repository>
 		<docker.maven.plugin.version>1.2.2</docker.maven.plugin.version>
 		<com.microsvc.toolkit.version>1.0.8</com.microsvc.toolkit.version>
-		<cbs.version>1.0.13</cbs.version>
+		<cbs.version>1.0.15</cbs.version>
 	</properties>
 
 	<dependencyManagement>