zouxuan 4 years ago
parent
commit
0c39f616a8

+ 16 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/dto/MusicScoreQueryInfo.java

@@ -0,0 +1,16 @@
+package com.ym.mec.auth.api.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+
+public class MusicScoreQueryInfo {
+    @ApiModelProperty(value = "父节点编号,默认0",required = false)
+    private Integer parentId = 0;
+
+    public Integer getParentId() {
+        return parentId;
+    }
+
+    public void setParentId(Integer parentId) {
+        this.parentId = parentId;
+    }
+}

+ 4 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysMusicScoreCategoriesDao.java

@@ -4,7 +4,10 @@ package com.ym.mec.biz.dal.dao;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
 
 
+import java.util.List;
+
 public interface SysMusicScoreCategoriesDao extends BaseDAO<Integer, SysMusicScoreCategories> {
 public interface SysMusicScoreCategoriesDao extends BaseDAO<Integer, SysMusicScoreCategories> {
 
 
-	
+
+    List<SysMusicScoreCategories> findByParentId(Integer parentId);
 }
 }

+ 13 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScoreCategories.java

@@ -2,6 +2,8 @@ package com.ym.mec.biz.dal.entity;
 
 
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 
+import java.util.List;
+
 /**
 /**
  * 对应数据库表(sys_music_score_categories):
  * 对应数据库表(sys_music_score_categories):
  */
  */
@@ -27,7 +29,17 @@ public class SysMusicScoreCategories {
 	
 	
 	/**  */
 	/**  */
 	private java.util.Date updateTime;
 	private java.util.Date updateTime;
-	
+
+	private List<SysMusicScoreCategories> sysMusicScoreCategoriesList;
+
+	public List<SysMusicScoreCategories> getSysMusicScoreCategoriesList() {
+		return sysMusicScoreCategoriesList;
+	}
+
+	public void setSysMusicScoreCategoriesList(List<SysMusicScoreCategories> sysMusicScoreCategoriesList) {
+		this.sysMusicScoreCategoriesList = sysMusicScoreCategoriesList;
+	}
+
 	public void setId(Integer id){
 	public void setId(Integer id){
 		this.id = id;
 		this.id = id;
 	}
 	}

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

@@ -14,8 +14,19 @@ public class SysExamSongQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "类型",required = true)
     @ApiModelProperty(value = "类型",required = true)
     private String type;
     private String type;
 
 
+    @ApiModelProperty(value = "曲库分类",required = true)
+    private Integer categoriesId;
+
     private Integer sysMusicScoreId;
     private Integer sysMusicScoreId;
 
 
+    public Integer getCategoriesId() {
+        return categoriesId;
+    }
+
+    public void setCategoriesId(Integer categoriesId) {
+        this.categoriesId = categoriesId;
+    }
+
     public Integer getSysMusicScoreId() {
     public Integer getSysMusicScoreId() {
         return sysMusicScoreId;
         return sysMusicScoreId;
     }
     }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysMusicScoreCategoriesService.java

@@ -1,9 +1,13 @@
 package com.ym.mec.biz.service;
 package com.ym.mec.biz.service;
 
 
 
 
+import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.common.service.BaseService;
 
 
+import java.util.List;
+
 public interface SysMusicScoreCategoriesService extends BaseService<Integer, SysMusicScoreCategories> {
 public interface SysMusicScoreCategoriesService extends BaseService<Integer, SysMusicScoreCategories> {
 
 
+    List<SysMusicScoreCategories> queryTree(MusicScoreQueryInfo menuQueryInfo);
 }
 }

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

@@ -1,6 +1,8 @@
 package com.ym.mec.biz.service.impl;
 package com.ym.mec.biz.service.impl;
 
 
 
 
+import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
+import com.ym.mec.auth.api.entity.SysMenu;
 import com.ym.mec.biz.dal.dao.SysMusicScoreCategoriesDao;
 import com.ym.mec.biz.dal.dao.SysMusicScoreCategoriesDao;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.biz.dal.entity.SysMusicScoreCategories;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
@@ -9,6 +11,9 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 @Service
 @Service
 public class SysMusicScoreCategoriesServiceImpl extends BaseServiceImpl<Integer, SysMusicScoreCategories> implements SysMusicScoreCategoriesService {
 public class SysMusicScoreCategoriesServiceImpl extends BaseServiceImpl<Integer, SysMusicScoreCategories> implements SysMusicScoreCategoriesService {
 	
 	
@@ -19,5 +24,31 @@ public class SysMusicScoreCategoriesServiceImpl extends BaseServiceImpl<Integer,
 	public BaseDAO<Integer, SysMusicScoreCategories> getDAO() {
 	public BaseDAO<Integer, SysMusicScoreCategories> getDAO() {
 		return sysMusicScoreCategoriesDao;
 		return sysMusicScoreCategoriesDao;
 	}
 	}
-	
+
+
+	@Override
+	public List<SysMusicScoreCategories> queryTree(MusicScoreQueryInfo menuQueryInfo) {
+		List<SysMusicScoreCategories> scoreCategories = sysMusicScoreCategoriesDao.findByParentId(menuQueryInfo.getParentId());
+		List<SysMusicScoreCategories> scoreCategoriesAllList = sysMusicScoreCategoriesDao.findByParentId(null);
+		for (SysMusicScoreCategories categories : scoreCategories) {
+			categories = getTree(categories,scoreCategoriesAllList);
+		}
+		return scoreCategories;
+	}
+
+	private SysMusicScoreCategories getTree(SysMusicScoreCategories categories,List<SysMusicScoreCategories> scoreCategoriesAllList){
+		//得到根节点对象
+		//获取子节点list
+		List<SysMusicScoreCategories> scoreCategories = scoreCategoriesAllList.stream().filter(e->e.getParentId().equals(categories.getId())).collect(Collectors.toList());
+		//如果存在子节点
+		if(scoreCategories != null && scoreCategories.size() > 0) {
+			//将子节点list放入父节点对象
+			categories.setSysMusicScoreCategoriesList(scoreCategories);
+			//遍历子节点....
+			for (SysMusicScoreCategories sysMenu : scoreCategories) {
+				getTree(sysMenu,scoreCategoriesAllList);
+			}
+		}
+		return categories;
+	}
 }
 }

+ 39 - 29
mec-biz/src/main/resources/config/mybatis/SysMusicScoreCategoriesMapper.xml

@@ -28,39 +28,35 @@
 	
 	
 	<!-- 向数据库增加一条记录 -->
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SysMusicScoreCategories" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SysMusicScoreCategories" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		<!--
-		<selectKey resultClass="int" keyProperty="id" > 
-		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
-		</selectKey>
-		-->
-		INSERT INTO sys_music_score_categories (id_,parent_id_,name_,cover_img_,operator_id_,create_time_,update_time_) VALUES(#{id},#{parentId},#{name},#{coverImg},#{operatorId},#{createTime},#{updateTime})
+		INSERT INTO sys_music_score_categories (id_,parent_id_,name_,cover_img_,operator_id_,create_time_,update_time_)
+		VALUES(#{id},#{parentId},#{name},#{coverImg},#{operatorId},#{createTime},#{updateTime})
 	</insert>
 	</insert>
 	
 	
 	<!-- 根据主键查询一条记录 -->
 	<!-- 根据主键查询一条记录 -->
 	<update id="update" parameterType="com.ym.mec.biz.dal.entity.SysMusicScoreCategories">
 	<update id="update" parameterType="com.ym.mec.biz.dal.entity.SysMusicScoreCategories">
 		UPDATE sys_music_score_categories <set>
 		UPDATE sys_music_score_categories <set>
-<if test="parentId != null">
-parent_id_ = #{parentId},
-</if>
-<if test="operatorId != null">
-operator_id_ = #{operatorId},
-</if>
-<if test="coverImg != null">
-cover_img_ = #{coverImg},
-</if>
-<if test="id != null">
-id_ = #{id},
-</if>
-<if test="updateTime != null">
-update_time_ = #{updateTime},
-</if>
-<if test="name != null">
-name_ = #{name},
-</if>
-<if test="createTime != null">
-create_time_ = #{createTime},
-</if>
-</set> WHERE id_ = #{id} 
+		<if test="parentId != null">
+		parent_id_ = #{parentId},
+		</if>
+		<if test="operatorId != null">
+		operator_id_ = #{operatorId},
+		</if>
+		<if test="coverImg != null">
+		cover_img_ = #{coverImg},
+		</if>
+		<if test="id != null">
+		id_ = #{id},
+		</if>
+		<if test="updateTime != null">
+		update_time_ = #{updateTime},
+		</if>
+		<if test="name != null">
+		name_ = #{name},
+		</if>
+		<if test="createTime != null">
+		create_time_ = #{createTime},
+		</if>
+		</set> WHERE id_ = #{id}
 	</update>
 	</update>
 	
 	
 	<!-- 根据主键删除一条记录 -->
 	<!-- 根据主键删除一条记录 -->
@@ -70,11 +66,25 @@ create_time_ = #{createTime},
 	
 	
 	<!-- 分页查询 -->
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="SysMusicScoreCategories" parameterType="map">
 	<select id="queryPage" resultMap="SysMusicScoreCategories" parameterType="map">
-		SELECT * FROM sys_music_score_categories ORDER BY id_ <include refid="global.limit"/>
+		SELECT * FROM sys_music_score_categories ORDER BY id_
+		<include refid="global.limit"/>
 	</select>
 	</select>
 	
 	
 	<!-- 查询当前表的总记录数 -->
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM sys_music_score_categories
 		SELECT COUNT(*) FROM sys_music_score_categories
 	</select>
 	</select>
+	<select id="findByParentId" resultMap="SysMusicScoreCategories">
+		SELECT sm.* FROM sys_music_score_categories sm
+		<include refid="queryTree"/>
+		GROUP BY sm.id_
+		ORDER BY sm.id_ DESC
+	</select>
+	<sql id="queryTree">
+		<where>
+			<if test="parentId != null">
+				AND sm.parent_id_ = #{parentId}
+			</if>
+		</where>
+	</sql>
 </mapper>
 </mapper>

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

@@ -91,6 +91,9 @@
 	<sql id="queryPageSql">
 	<sql id="queryPageSql">
 		<where>
 		<where>
 			ses.del_flag_ = 0
 			ses.del_flag_ = 0
+			<if test="categoriesId != null">
+				AND ses.music_score_categories_id_ = #{categoriesId}
+			</if>
 			<if test="search != null and search != ''">
 			<if test="search != null and search != ''">
 				AND (ses.id_ = #{search} OR ses.name_ LIKE CONCAT('%',#{search},'%'))
 				AND (ses.id_ = #{search} OR ses.name_ LIKE CONCAT('%',#{search},'%'))
 			</if>
 			</if>

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/SysMusicScoreCategoriesController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.web.controller;
 package com.ym.mec.web.controller;
 
 
+import com.ym.mec.auth.api.dto.MusicScoreQueryInfo;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.biz.service.SysMusicScoreCategoriesService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.controller.BaseController;
@@ -25,4 +26,11 @@ public class SysMusicScoreCategoriesController extends BaseController {
         return succeed(sysMusicScoreCategoriesService.queryPage(queryInfo));
         return succeed(sysMusicScoreCategoriesService.queryPage(queryInfo));
     }
     }
 
 
+    @ApiOperation(value = "树状列表")
+    @GetMapping("/queryTree")
+    @PreAuthorize("@pcs.hasPermissions('sysMusicScoreCategories/queryTree')")
+    public Object queryTree(MusicScoreQueryInfo queryInfo) {
+        return succeed(sysMusicScoreCategoriesService.queryTree(queryInfo));
+    }
+
 }
 }