Browse Source

Merge branch 'zx_saas_cbs_category' of http://git.dayaedu.com/yonge/mec into test

# Conflicts:
#	pom.xml
zouxuan 6 months ago
parent
commit
f4b9fe3c3d
17 changed files with 335 additions and 178 deletions
  1. 5 2
      mec-application/src/main/java/com/ym/mec/student/controller/SysMusicScoreCategoriesController.java
  2. 0 1
      mec-application/src/main/java/com/ym/mec/student/controller/SysMusicScoreController.java
  3. 4 1
      mec-application/src/main/java/com/ym/mec/teacher/controller/SysMusicScoreCategoriesController.java
  4. 18 13
      mec-application/src/main/java/com/ym/mec/web/controller/SysMusicScoreCategoriesController.java
  5. 0 3
      mec-application/src/main/java/com/ym/mec/web/controller/SysMusicScoreController.java
  6. 3 4
      mec-application/src/main/java/com/ym/mec/web/controller/education/EduMusicScoreController.java
  7. 3 3
      mec-application/src/main/java/com/ym/mec/web/controller/school/SchoolMusicScoreController.java
  8. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScore.java
  9. 25 0
      mec-biz/src/main/java/com/ym/mec/biz/service/CbsMusicScoreCategoriesService.java
  10. 190 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CbsMusicScoreCategoriesServiceImpl.java
  11. 0 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CbsMusicSheetServiceImpl.java
  12. 13 52
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreAccompanimentServiceImpl.java
  13. 9 9
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreCategoriesServiceImpl.java
  14. 28 44
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreServiceImpl.java
  15. 7 23
      mec-biz/src/main/resources/config/mybatis/SysMusicScoreAccompanimentMapper.xml
  16. 24 19
      mec-biz/src/main/resources/config/mybatis/SysMusicScoreMapper.xml
  17. 1 1
      pom.xml

+ 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();
     }

+ 0 - 1
mec-application/src/main/java/com/ym/mec/student/controller/SysMusicScoreController.java

@@ -6,7 +6,6 @@ import com.ym.mec.biz.service.SysMusicScoreService;
 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.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;

+ 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 = "获取分类详情")

+ 18 - 13
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) {
+    public Object queryTree() {
         //queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
-        return succeed(sysMusicScoreCategoriesService.queryTree(queryInfo));
+        return succeed(cbsMusicScoreCategoriesService.queryTreeByAppId());
     }
 
-    @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));
-    }
+    }*/
 }

+ 0 - 3
mec-application/src/main/java/com/ym/mec/web/controller/SysMusicScoreController.java

@@ -72,9 +72,6 @@ public class SysMusicScoreController extends BaseController {
         if (reasonDto.getState() == null) {
             return failed("启用/禁用状态不能为空");
         }
-        if (reasonDto.getState().equals(YesOrNoEnum.NO) && StringUtils.isEmpty(reasonDto.getReason())) {
-            return failed("停用原因不能为空");
-        }
         return succeed(sysMusicScoreService.stateList(reasonDto));
     }
 

+ 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()));
     }
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScore.java

@@ -55,6 +55,9 @@ public class SysMusicScore {
 
 	/** 名称 */
 	private Integer categoriesId;
+
+	/** 内容平台曲目分类编号 */
+	private Integer cbsMusicCategoriesId;
 	
 	/** 类型PERSON 个人,COMMON公用 */
 	private ExamSongTypeEnum type;
@@ -115,6 +118,8 @@ public class SysMusicScore {
 
 	private Integer showFlag = 0;
 
+	private Integer clientShowFlag = 0;
+
 	private String showName;
 
 	private Boolean isOpenMetronome;

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

@@ -0,0 +1,25 @@
+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;
+import java.util.Map;
+
+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);
+
+    Map<Integer,String> getCategoriesNameMap(List<Integer> categoriesIds);
+
+    List<SysMusicScoreCategories> queryTreeByAppId();
+}

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

@@ -0,0 +1,190 @@
+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.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@Service
+public class CbsMusicScoreCategoriesServiceImpl implements CbsMusicScoreCategoriesService {
+
+	@Resource
+	private MusicFeignClientService musicFeignClientService;
+	@Value("${openfeign-client.app-id:1745637981387108354}")
+	public Long applicationId;
+
+	@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;
+	}
+
+	@Override
+	public Map<Integer, String> getCategoriesNameMap(List<Integer> categoriesIds) {
+		R<Map<Integer, String>> mapR = musicFeignClientService.getCategoryNames(categoriesIds);
+		if (mapR.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", mapR.getMessage());
+		}
+		return mapR.feignData();
+	}
+
+	@Override
+	public List<SysMusicScoreCategories> queryTreeByAppId() {
+		R<List<MusicSheetCategoriesWrapper.MusicSheetCategories>> listR = musicFeignClientService.queryTreeByAppId(applicationId);
+		if (listR.getCode() != 200) {
+			throw new BizException("查询曲目分类失败,{}", listR.getMessage());
+		}
+		List<MusicSheetCategoriesWrapper.MusicSheetCategories> musicSheetCategories = listR.feignData();
+		return musicSheetCategories.stream().map(this::convertMusicSheetCategoryToSysMusicScoreCategory).collect(Collectors.toList());
+	}
+
+	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());
+		musicSheetCategory.setMusicSheetNum(sysMusicScoreCategory.getMusicScoreNum());
+		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());
+		sysMusicScoreCategory.setMusicScoreNum(musicSheetCategory.getMusicSheetNum());
+		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;
 	}
 

+ 28 - 44
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
@@ -163,15 +161,13 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
             List<String> cbsMusicSheetIds = records.stream().map(SysMusicScore::getCbsMusicSheetId).collect(Collectors.toList());
             List<CbsMusicSheetWrapper.MusicSheetApplication> applications = this.queryCbsMusicSheetApplication(cbsMusicSheetIds);
             if(CollectionUtils.isNotEmpty(applications)){
-                Set<Integer> categoriesIds = records.stream().map(SysMusicScore::getMusicScoreCategoriesId).collect(Collectors.toSet());
+//                List<Integer> categoriesIds = records.stream().map(SysMusicScore::getCbsMusicCategoriesId).distinct().filter(Objects::nonNull).collect(Collectors.toList());
                 //获取分部列表
-                Map<Integer, String> organMap = MapUtil.convertMybatisMap(sysMusicScoreCategoriesDao.queryOrganByIds(categoriesIds));
-                Map<Integer, String> map = new HashMap<>(categoriesIds.size());
-                for (Integer categoriesId : categoriesIds) {
-                    if(null != categoriesId){
-                        map.put(categoriesId, getParentTreeName(categoriesId));
-                    }
-                }
+//                Map<Integer, String> organMap = MapUtil.convertMybatisMap(sysMusicScoreCategoriesDao.queryOrganByIds(categoriesIds));
+                /*Map<Integer, String> map = new HashMap<>();
+                if(CollectionUtils.isNotEmpty(categoriesIds)){
+                    map = cbsMusicScoreCategoriesService.getCategoriesNameMap(categoriesIds);
+                }*/
                 Map<Long, CbsMusicSheetWrapper.MusicSheetApplication> musicSheetApplicationMap = applications
                         .stream().collect(Collectors.toMap(CbsMusicSheetWrapper.MusicSheetApplication::getId, Function.identity()));
 
@@ -185,21 +181,21 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
                     musicalInstrumentQueryMap = musicalInstrumentQueryDtos.stream().collect(Collectors.toMap(CbsMusicalInstrumentWrapper.MusicalInstrumentQueryDto::getId, o -> o, (o1, o2) -> o1));
                 }
                 //获取分类名称
-                Map<Integer, String> categoriesMap = new HashMap<>(categoriesIds.size());
+                /*Map<Integer, String> categoriesMap = new HashMap<>(categoriesIds.size());
                 for (Integer categoriesId : categoriesIds) {
                     if(null != categoriesId){
                         categoriesMap.put(categoriesId, getParentTreeName(categoriesId));
                     }
-                }
+                }*/
                 //获取声部乐器关联
                 List<Instrument> list = instrumentService.lambdaQuery().list();
                 Map<Integer, Instrument> instrumentMap = list.stream().collect(Collectors.toMap(Instrument::getSubjectId, o -> o));
                 for (SysMusicScore record : records) {
-                    record.setCategoriesName(map.get(record.getMusicScoreCategoriesId()));
-                    record.setOrganName(organMap.get(record.getMusicScoreCategoriesId()));
+//                    record.setCategoriesName(map.get(record.getCbsMusicCategoriesId()));
+//                    record.setOrganName(organMap.get(record.getMusicScoreCategoriesId()));
                     CbsMusicSheetWrapper.MusicSheetApplication musicSheetApplication = musicSheetApplicationMap.get(Long.parseLong(record.getCbsMusicSheetId()));
                     if(musicSheetApplication != null){
-                        this.initMusicSheetVo(record,musicSheetApplication,musicalInstrumentQueryMap,categoriesMap,instrumentMap);
+                        this.initMusicSheetVo(record,musicSheetApplication,musicalInstrumentQueryMap,instrumentMap);
                     }
                 }
             }
@@ -208,20 +204,19 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
 
     public void initMusicSheetVo(SysMusicScore record,CbsMusicSheetWrapper.MusicSheetApplication musicSheetApplication
             ,Map<Integer,CbsMusicalInstrumentWrapper.MusicalInstrumentQueryDto> musicalInstrumentQueryMap,
-                                 Map<Integer, String> categoriesMap,Map<Integer, Instrument> instrumentMap){
+                                 Map<Integer, Instrument> instrumentMap){
         record.setRankIds(StringUtils.equals("FREE",musicSheetApplication.getPaymentType()) ? "" : "1");
         record.setCbsMusicSheetId(musicSheetApplication.getId().toString());
         record.setPlayMode(SysMusicScore.PlayMode.valueOf(musicSheetApplication.getPlayMode().getCode()));
         record.setExtConfigJson(musicSheetApplication.getExtConfigJson());
         record.setExtStyleConfigJson(musicSheetApplication.getExtStyleConfigJson());
-        if(musicSheetApplication.getMusicSheetCategoryId() != null){
-            record.setMusicScoreCategoriesId(musicSheetApplication.getMusicSheetCategoryId().intValue());
-            record.setCategoriesId(musicSheetApplication.getMusicSheetCategoryId().intValue());
-        }
+        record.setClientShowFlag(musicSheetApplication.getStatus()?1:0);
+//        if(musicSheetApplication.getMusicSheetCategoryId() != null){
+//            record.setMusicScoreCategoriesId(musicSheetApplication.getMusicSheetCategoryId().intValue());
+//            record.setCategoriesId(musicSheetApplication.getMusicSheetCategoryId().intValue());
+//        }
         record.setName(musicSheetApplication.getName());
-        if(musicSheetApplication.getMusicSheetCategoryId() != null){
-            record.setCategoriesName(categoriesMap.get(musicSheetApplication.getMusicSheetCategoryId().intValue()));
-        }
+        record.setCategoriesName(musicSheetApplication.getMusicSheetCategoryName());
         record.setSpeed(musicSheetApplication.getPlaySpeed());
         record.setIsOpenMetronome(musicSheetApplication.getIsUseSystemBeat());
         List<CbsMusicSheetWrapper.MusicSheetAccompaniment> accompanimentList = musicSheetApplication.getMusicSheetAccompanimentList();
@@ -260,7 +255,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,18 +287,7 @@ 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());
-
-            SysMusicScoreCategories sysMusicScoreCategories = sysMusicScoreCategoriesService.get(categoriesId);
-
-            if(sysMusicScoreCategories == null){
-                throw new BizException("分类找不到");
-            }
-            categoriesIdList.add(categoriesId);
-            sysMusicScoreCategories = sysMusicScoreCategoriesService.getChildTree(sysMusicScoreCategories);
-            getAllCategoryIdList(categoriesIdList, sysMusicScoreCategories.getSysMusicScoreCategoriesList());
-
+            List<Integer> categoriesIdList = cbsMusicScoreCategoriesService.getAllCategoryIdList(queryInfo.getCategoriesId());
             queryInfo.setCategoriesIdList(categoriesIdList);
         }
     }
@@ -493,7 +477,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
             }
         }
         if(addMusicSheet.getMusicSheetType() == null){
-            if(Arrays.stream(prodCategoryIds.split(",")).anyMatch(e->e.equals(from.getMusicScoreCategoriesId().toString()))){
+            if(Arrays.stream(prodCategoryIds.split(",")).anyMatch(e->e.equals(from.getCbsMusicCategoriesId().toString()))){
                 addMusicSheet.setMusicSheetType(EMusicSheetType.CONCERT);
             }else {
                 addMusicSheet.setMusicSheetType(EMusicSheetType.SINGLE);
@@ -573,8 +557,8 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
         addMusicSheetApplicationExtend.setSortNo(from.getOrder());
         addMusicSheetApplicationExtend.setPaymentType(StringUtils.isNotEmpty(from.getRankIds()) ? "VIP" : "FREE");
         addMusicSheetApplicationExtend.setAvailableType(EMusicAvailableType.ORG);
-        addMusicSheetApplicationExtend.setMusicSheetCategoryId(from.getMusicScoreCategoriesId().longValue());
-        addMusicSheet.setMusicCategoryId(from.getMusicScoreCategoriesId().longValue());
+        addMusicSheetApplicationExtend.setMusicSheetCategoryId(from.getCbsMusicCategoriesId().longValue());
+        addMusicSheet.setMusicCategoryId(from.getCbsMusicCategoriesId().longValue());
         addMusicSheet.setAddMusicSheetApplicationExtend(Lists.newArrayList(addMusicSheetApplicationExtend));
         addMusicSheet.setIsConvertibleScore(true);
         return addMusicSheet;

+ 7 - 23
mec-biz/src/main/resources/config/mybatis/SysMusicScoreAccompanimentMapper.xml

@@ -46,10 +46,9 @@
 	<select id="get" resultMap="SysMusicScoreAccompaniment" >
 		SELECT sesa.id_,sesa.exam_song_id_,sesa.subject_id_,CASE WHEN sesa.metronome_mp3_url_ IS NULL OR sesa.metronome_mp3_url_ = '' THEN sesa.mp3_url_ ELSE sesa.metronome_mp3_url_ END url_,sesa.speed_,
 		sesa.xml_url_,sesa.is_show_fingering_,sesa.is_open_metronome_,sesa.memo_,sesa.track_,
-		ses.name_,ses.type_,ses.url_ mp3_url_,sesc.name_ categories_name_,sesc.id_ categories_id_,ses.client_type_,ses.metronome_url_,ses.midi_url_,ses.cbs_music_sheet_id_
+		ses.name_,ses.type_,ses.url_ mp3_url_,ses.cbs_music_categories_id_ categories_id_,ses.client_type_,ses.metronome_url_,ses.midi_url_,ses.cbs_music_sheet_id_
 		FROM sys_music_score ses
 		LEFT JOIN sys_music_score_accompaniment sesa ON ses.id_ = sesa.exam_song_id_
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = ses.music_score_categories_id_
 		WHERE sesa.id_ = #{id}
 	</select>
 	
@@ -100,11 +99,10 @@
 	<select id="queryPage" resultMap="SysMusicScoreAccompaniment" parameterType="map">
 		SELECT
 		    ses.name_,ses.type_,ses.url_,ses.id_ exam_song_id_,
-		       sesc.name_ categories_name_,sesc.id_ categories_id_,sesc.parent_id_ parent_categories_id_,ses.client_type_,
+		       ses.cbs_music_categories_id_ categories_id_,ses.client_type_,
 		ses.rank_ids_,ses.render_from_,ses.enable_evaluation_,ses.metronome_url_,ses.midi_url_,ses.play_mode_,ses.render_from_,
 		ses.ext_config_json_,ses.ext_style_config_json_,ses.cbs_music_sheet_id_
 		FROM sys_music_score ses
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 		ORDER BY ses.order_,ses.name_
 		<include refid="global.limit"/>
@@ -114,7 +112,6 @@
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(ses.id_)
 		FROM sys_music_score ses
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 	</select>
 
@@ -134,12 +131,10 @@
 		</where>
 	</select>
 	<select id="queryAccPage" resultMap="SysMusicScoreAccompaniment">
-		SELECT ses.id_ exam_song_id_,ses.name_,ses.type_,ses.url_,sesc.name_ categories_name_,sesc.id_ categories_id_,
-		       sesc.parent_id_ parent_categories_id_,ses.client_type_,
+		SELECT ses.id_ exam_song_id_,ses.name_,ses.type_,ses.url_,ses.cbs_music_categories_id_ categories_id_,ses.client_type_,
 		ses.enable_evaluation_,ses.metronome_url_,ses.midi_url_,ses.play_mode_,ses.render_from_,ses.ext_config_json_,
 		ses.ext_style_config_json_,ses.rank_ids_,ses.cbs_music_sheet_id_
 		FROM sys_music_score ses
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 		ORDER BY ses.order_,ses.name_
 	</select>
@@ -147,16 +142,14 @@
 	<select id="findAccCount" resultType="java.lang.Integer">
 		SELECT COUNT(DISTINCT ses.id_)
 		FROM sys_music_score ses
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 	</select>
     <select id="querySubjectIds" resultMap="com.ym.mec.biz.dal.dao.SubjectDao.Subject">
 		SELECT s.* FROM sys_music_score sms
 		LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,sms.subject_ids_)
-		LEFT JOIN sys_music_score_categories sesc ON sesc.id_ = sms.music_score_categories_id_
 		WHERE sms.del_flag_ = 0 AND sms.cbs_music_sheet_id_ IS NOT NULL AND s.id_ IS NOT NULL AND sms.music_sheet_type_ = 'SINGLE'
 		<if test="categoriesIdList != null and categoriesIdList.size > 0">
-			AND sesc.id_ IN
+			AND ses.cbs_music_categories_id_ IN
 			<foreach collection="categoriesIdList" separator="," item="item" open="(" close=")">
 				#{item}
 			</foreach>
@@ -170,12 +163,6 @@
     <sql id="queryPageSql">
 		<where>
 			ses.del_flag_ = 0
-			<if test="enable != null">
-				AND sesc.enable_ = #{enable}
-			</if>
-			<if test="parentId != null">
-				AND sesc.parent_id_ = #{parentId}
-			</if>
 			<if test="search != null and search != ''">
 				AND (ses.id_ = #{search} OR ses.name_ LIKE CONCAT('%',#{search},'%'))
 			</if>
@@ -186,19 +173,16 @@
 				AND ses.show_flag_ = #{showFlag}
 			</if>
 			<if test="categoriesIdList != null">
-				AND sesc.id_ IN
+				AND ses.cbs_music_categories_id_ IN
 				<foreach collection="categoriesIdList" separator="," item="item" open="(" close=")">
 					#{item}
 				</foreach>
 			</if>
 			<if test="filterCategoriesIds != null and filterCategoriesIds != ''">
-				AND find_in_set(sesc.id_,#{filterCategoriesIds}) = 0
+				AND find_in_set(ses.cbs_music_categories_id_,#{filterCategoriesIds}) = 0
 			</if>
 			<if test="categoriesIds != null and categoriesIds != ''">
-				AND find_in_set(sesc.id_,#{categoriesIds}) > 0
-			</if>
-			<if test="parentId != null">
-				AND sesc.parent_id_ = #{parentId}
+				AND find_in_set(ses.cbs_music_categories_id_,#{categoriesIds}) > 0
 			</if>
 			<if test="subjectId != null">
 				AND (FIND_IN_SET(#{subjectId},ses.subject_ids_) OR ses.subject_ids_ IS NULL OR ses.subject_ids_ = '' OR ses.is_all_subject_)

+ 24 - 19
mec-biz/src/main/resources/config/mybatis/SysMusicScoreMapper.xml

@@ -10,8 +10,9 @@
 		<result column="id_" property="id" />
 		<result column="name_" property="name" />
 		<result column="categories_name_" property="categoriesName" />
-		<result column="music_score_categories_id_" property="musicScoreCategoriesId" />
-		<result column="categories_id_" property="categoriesId" />
+		<result column="cbs_music_categories_id_" property="musicScoreCategoriesId" />
+		<result column="cbs_music_categories_id_" property="cbsMusicCategoriesId" />
+		<result column="cbs_music_categories_id_" property="categoriesId" />
 		<result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
 		<result column="subject_ids_" property="subjectIds" />
 		<result column="speed_" property="speed" />
@@ -52,8 +53,9 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SysMusicScore" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO sys_music_score (music_score_categories_id_,name_,type_,speed_,url_,metronome_url_,midi_url_,create_user_id_,order_,
-		                             update_time_,create_time_,client_type_,rank_ids_,render_from_,enable_evaluation_,show_flag_,play_mode_,muse_score_url_,muse_score_memo_,ext_config_json_,ext_style_config_json_)
+		INSERT INTO sys_music_score (cbs_music_categories_id_,name_,type_,speed_,url_,metronome_url_,midi_url_,create_user_id_,order_,
+		                             update_time_,create_time_,client_type_,rank_ids_,render_from_,
+		                             enable_evaluation_,show_flag_,play_mode_,muse_score_url_,muse_score_memo_,ext_config_json_,ext_style_config_json_)
 		VALUES(#{musicScoreCategoriesId},#{name},#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
 		       #{speed},#{url},#{metronomeUrl},#{midiUrl},#{createUserId},#{order},NOW(),NOW(),#{clientType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
 		       #{rankIds},#{renderFrom},#{enableEvaluation},#{showFlag},#{playMode},#{museScoreUrl},#{museScoreMemo},#{extConfigJson},#{extStyleConfigJson})
@@ -87,7 +89,7 @@
 				del_flag_ = #{delFlag},
 			</if>
 			<if test="musicScoreCategoriesId != null">
-				music_score_categories_id_ = #{musicScoreCategoriesId},
+				cbs_music_categories_id_ = #{musicScoreCategoriesId},
 			</if>
 			<if test="createUserId != null">
 				create_user_id_ = #{createUserId},
@@ -130,38 +132,35 @@
 
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="SysMusicScore">
-		SELECT ses.*,su.real_name_ create_user_name_,smsc.name_ categories_name_,smsc.id_ categories_id_
+		SELECT ses.*,su.real_name_ create_user_name_,ses.cbs_music_categories_id_ categories_id_
 		FROM sys_music_score ses
 		LEFT JOIN sys_user su ON ses.create_user_id_ = su.id_
-		LEFT JOIN sys_music_score_categories smsc ON smsc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 		GROUP BY ses.id_
-		ORDER BY ses.music_score_categories_id_ DESC,ses.order_ ASC,ses.create_time_ DESC,ses.id_ desc
+		ORDER BY ses.cbs_music_categories_id_ DESC,ses.order_ ASC,ses.create_time_ DESC,ses.id_ desc
 	</select>
 
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="SysMusicScore" parameterType="map">
-		SELECT ses.*,su.real_name_ create_user_name_,smsc.name_ categories_name_,smsc.id_ categories_id_,ses.subject_ids_
+		SELECT ses.*,su.real_name_ create_user_name_,ses.cbs_music_categories_id_ categories_id_,ses.subject_ids_
 		FROM sys_music_score ses
 		LEFT JOIN sys_user su ON ses.create_user_id_ = su.id_
-		LEFT JOIN sys_music_score_categories smsc ON smsc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 		GROUP BY ses.id_
-		ORDER BY ses.music_score_categories_id_ DESC,ses.order_ ASC,ses.create_time_ DESC,ses.id_ desc
+		ORDER BY ses.cbs_music_categories_id_ DESC,ses.order_ ASC,ses.create_time_ DESC,ses.id_ desc
 		<include refid="global.limit"/>
 	</select>
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(DISTINCT ses.id_) FROM sys_music_score ses
-		LEFT JOIN sys_music_score_categories smsc ON smsc.id_ = ses.music_score_categories_id_
 		<include refid="queryPageSql"/>
 	</select>
     <select id="findByIds" resultMap="SysMusicScore">
 		SELECT * FROM sys_music_score WHERE FIND_IN_SET(id_,#{musicScoreIds})
 	</select>
     <select id="countBuyCategoriesIds" resultType="java.lang.Integer">
-		SELECT COUNT(0) FROM sys_music_score WHERE FIND_IN_SET(music_score_categories_id_,#{categoriesIds}) AND del_flag_ = 0
+		SELECT COUNT(0) FROM sys_music_score WHERE FIND_IN_SET(cbs_music_categories_id_,#{categoriesIds}) AND del_flag_ = 0
 	</select>
 	<select id="findByCbsId" resultMap="SysMusicScore">
 		SELECT * FROM sys_music_score WHERE 1 = 1
@@ -196,7 +195,8 @@
 				enable_evaluation_ = #{item.musicSheetUpdate.canEvaluate},
 				play_mode_ = #{item.musicSheetUpdate.playMode},
 				music_sheet_type_ = #{item.musicSheetUpdate.musicSheetType},
-				is_all_subject_ = #{item.musicSheetUpdate.isAllSubject}
+				is_all_subject_ = #{item.musicSheetUpdate.isAllSubject},
+				cbs_music_categories_id_ = #{item.musicSheetUpdate.musicCategoryId}
 			</if>
 			where cbs_music_sheet_id_ = #{item.musicSheetId}
 		</foreach>
@@ -218,14 +218,16 @@
 		enable_evaluation_ = #{param.canEvaluate},
 		play_mode_ = #{param.playMode},
 		music_sheet_type_ = #{param.musicSheetType},
-		is_all_subject_ = #{param.isAllSubject}
+		is_all_subject_ = #{param.isAllSubject},
+		client_show_flag_ = #{param.platformStatus},
+		cbs_music_categories_id_ = #{param.musicCategoryId}
 		where cbs_music_sheet_id_ = #{param.id}
 	</update>
 
 	<insert id="batchInsert">
 		insert into sys_music_score
-		(music_score_categories_id_,client_type_,type_,rank_ids_,order_
-		,name_,subject_ids_,speed_,enable_evaluation_,play_mode_,show_flag_,cbs_music_sheet_id_,music_sheet_type_,
+		(cbs_music_categories_id_,client_type_,type_,rank_ids_,order_
+		,name_,subject_ids_,speed_,enable_evaluation_,play_mode_,show_flag_,client_show_flag_,cbs_music_sheet_id_,music_sheet_type_,
 		score_type_,is_convertible_score_,is_all_subject_)
 		values
 		<foreach collection="vos" item="item" separator=",">
@@ -237,7 +239,7 @@
 			#{item.musicSheetUpdate.subjectIds},
 			#{item.musicSheetUpdate.playSpeed},
 			#{item.musicSheetUpdate.canEvaluate},
-			#{item.musicSheetUpdate.playMode},0,
+			#{item.musicSheetUpdate.playMode},#{item.status},#{item.musicSheetUpdate.platformStatus},
 			#{item.musicSheetId},#{item.musicSheetUpdate.musicSheetType},
 			#{item.scoreType},#{item.isConvertibleScore},#{item.musicSheetUpdate.isAllSubject}
 			)
@@ -255,7 +257,7 @@
 		<where>
 			ses.del_flag_ = 0 AND ses.cbs_music_sheet_id_ IS NOT NULL
 			<if test="categoriesIdList != null">
-				AND smsc.id_ IN
+				AND ses.cbs_music_categories_id_ IN
 				<foreach collection="categoriesIdList" separator="," item="item" open="(" close=")">
 					#{item}
 				</foreach>
@@ -265,6 +267,9 @@
 			</if>
 			<if test="showFlag != null">
 				AND ses.show_flag_ = #{showFlag}
+				<if test="showFlag == true">
+					AND ses.client_show_flag_ = #{showFlag}
+				</if>
 			</if>
 			<if test="isConvertibleScore != null">
 				AND ses.is_convertible_score_ = #{isConvertibleScore}

+ 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.14</cbs.version>
+		<cbs.version>1.0.15</cbs.version>
 	</properties>
 
 	<dependencyManagement>