zouxuan 5 лет назад
Родитель
Сommit
33789e2c2a

+ 11 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/dto/MenuQueryInfo.java

@@ -12,8 +12,19 @@ public class MenuQueryInfo{
     @ApiModelProperty(value = "节点状态,默认0显示,1不显示",required = false)
     private Integer hid;
 
+    @ApiModelProperty(value = "科目编号",required = false)
+    private Integer subjectId;
+
     private Integer userId;
 
+    public Integer getSubjectId() {
+        return subjectId;
+    }
+
+    public void setSubjectId(Integer subjectId) {
+        this.subjectId = subjectId;
+    }
+
     public Integer getHid() {
         return hid;
     }

+ 5 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ResourceRespositoryDao.java

@@ -1,8 +1,12 @@
 package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.entity.ResourceRespository;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 public interface ResourceRespositoryDao extends com.ym.mec.common.dal.BaseDAO<Integer, ResourceRespository> {
 
-	
+
+    List<ResourceRespository> findList(@Param("parentId") Integer parentId, @Param("delFlag") String delFlag, @Param("subjectId") Integer subjectId);
 }

+ 61 - 11
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/ResourceRespository.java

@@ -1,7 +1,10 @@
 package com.ym.mec.biz.dal.entity;
 
+import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
+import java.util.List;
+
 /**
  * 对应数据库表(resource_respository):
  */
@@ -9,22 +12,69 @@ public class ResourceRespository {
 
 	/**  */
 	private Integer id;
-	
-	/**  */
+
+	@ApiModelProperty(value = "资源名",required = false)
 	private String name;
-	
-	/**  */
+
+	@ApiModelProperty(value = "地址",required = false)
 	private String url;
-	
-	/**  */
+
+	private Integer order;
+
+	private Integer subjectId;
+
+	private Integer level;
+
+	private Integer parentId;
+
 	private boolean delFlag;
-	
-	/**  */
+
 	private java.util.Date createTime;
-	
-	/**  */
+
 	private java.util.Date updateTime;
-	
+
+	private List<ResourceRespository> repositories;
+
+	public List<ResourceRespository> getRepositories() {
+		return repositories;
+	}
+
+	public void setRepositories(List<ResourceRespository> repositories) {
+		this.repositories = repositories;
+	}
+
+	public Integer getOrder() {
+		return order;
+	}
+
+	public void setOrder(Integer order) {
+		this.order = order;
+	}
+
+	public Integer getSubjectId() {
+		return subjectId;
+	}
+
+	public void setSubjectId(Integer subjectId) {
+		this.subjectId = subjectId;
+	}
+
+	public Integer getLevel() {
+		return level;
+	}
+
+	public void setLevel(Integer level) {
+		this.level = level;
+	}
+
+	public Integer getParentId() {
+		return parentId;
+	}
+
+	public void setParentId(Integer parentId) {
+		this.parentId = parentId;
+	}
+
 	public void setId(Integer id){
 		this.id = id;
 	}

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

@@ -1,8 +1,12 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.auth.api.dto.MenuQueryInfo;
 import com.ym.mec.biz.dal.entity.ResourceRespository;
 import com.ym.mec.common.service.BaseService;
 
+import java.util.List;
+
 public interface ResourceRespositoryService extends BaseService<Integer, ResourceRespository> {
 
+    List<ResourceRespository> queryTree(MenuQueryInfo menuQueryInfo);
 }

+ 31 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ResourceRespositoryServiceImpl.java

@@ -1,13 +1,15 @@
 package com.ym.mec.biz.service.impl;
 
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
+import com.ym.mec.auth.api.dto.MenuQueryInfo;
 import com.ym.mec.biz.dal.dao.ResourceRespositoryDao;
 import com.ym.mec.biz.dal.entity.ResourceRespository;
 import com.ym.mec.biz.service.ResourceRespositoryService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
 
 @Service
 public class ResourceRespositoryServiceImpl extends BaseServiceImpl<Integer, ResourceRespository> implements ResourceRespositoryService{
@@ -19,5 +21,30 @@ public class ResourceRespositoryServiceImpl extends BaseServiceImpl<Integer, Res
 	public BaseDAO<Integer, ResourceRespository> getDAO() {
 		return resourceRespositoryDao;
 	}
-	
+
+	@Override
+	public List<ResourceRespository> queryTree(MenuQueryInfo menuQueryInfo) {
+		List<ResourceRespository> resourceRespositories = resourceRespositoryDao.findList(menuQueryInfo.getParentId(),menuQueryInfo.getDelFlag(),menuQueryInfo.getSubjectId());
+		for (ResourceRespository repository:resourceRespositories) {
+			repository = getTree(repository,menuQueryInfo.getDelFlag(),menuQueryInfo.getSubjectId());
+		}
+		return resourceRespositories;
+	}
+
+	private ResourceRespository getTree(ResourceRespository repository, String delFlag,Integer subjectId){
+		//得到根节点对象
+		//获取子节点list
+		List<ResourceRespository> repositories = null;
+		repositories = resourceRespositoryDao.findList(repository.getId(),delFlag,subjectId);
+		//如果存在子节点
+		if(repositories != null && repositories.size() > 0) {
+			//将子节点list放入父节点对象
+			repository.setRepositories(repositories);
+			//遍历子节点....
+			for (ResourceRespository sysMenu : repositories) {
+				getTree(sysMenu,delFlag,subjectId);
+			}
+		}
+		return repository;
+	}
 }

+ 21 - 2
mec-biz/src/main/resources/config/mybatis/ResourceRespositoryMapper.xml

@@ -10,6 +10,10 @@
 		<result column="id_" property="id" />
 		<result column="name_" property="name" />
 		<result column="url_" property="url" />
+		<result column="order_" property="order" />
+		<result column="subject_id_" property="subjectId" />
+		<result column="level_" property="level" />
+		<result column="parent_id_" property="parentId" />
 		<result column="del_flag_" property="delFlag" />
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
@@ -23,8 +27,8 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.ResourceRespository" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO resource_respository (id_,name_,url_,del_flag_,create_time_,update_time_)
-		VALUES(#{id},#{name},#{url},#{delFlag},now(),now())
+		INSERT INTO resource_respository (id_,name_,url_,order_,subject_id_,level_,parent_id_,del_flag_,create_time_,update_time_)
+		VALUES(#{id},#{name},#{url},#{order},#{subjectId},#{level},#{parentId},#{delFlag},now(),now())
 	</insert>
 	
 	
@@ -51,4 +55,19 @@
 			</if>
 		</where>
 	</select>
+    <select id="findList" resultMap="ResourceRespository">
+		SELECT * FROM resource_respository
+		<where>
+			<if test="delFlag != null">
+				AND del_flag_ = #{delFlag}
+			</if>
+			<if test="parentId != null">
+				AND parent_id_ = #{parentId}
+			</if>
+			<if test="subjectId != null">
+				AND subject_id_ = #{subjectId}
+			</if>
+		</where>
+		ORDER BY order_ DESC
+	</select>
 </mapper>

+ 4 - 3
mec-student/src/main/java/com/ym/mec/student/controller/ResourceRepositoryController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.student.controller;
 
+import com.ym.mec.auth.api.dto.MenuQueryInfo;
 import com.ym.mec.biz.service.ResourceRespositoryService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.page.QueryInfo;
@@ -25,8 +26,8 @@ public class ResourceRepositoryController extends BaseController {
     }
 
     @ApiOperation(value = "获取资源列表")
-    @GetMapping("/queryPage")
-    public Object queryPage(QueryInfo queryInfo){
-        return succeed(resourceRepositoryService.queryPage(queryInfo));
+    @GetMapping("/queryTree")
+    public Object queryTree(MenuQueryInfo menuQueryInfo){
+        return succeed(resourceRepositoryService.queryTree(menuQueryInfo));
     }
 }

+ 4 - 3
mec-teacher/src/main/java/com/ym/mec/teacher/controller/ResourceRepositoryController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.teacher.controller;
 
+import com.ym.mec.auth.api.dto.MenuQueryInfo;
 import com.ym.mec.biz.service.ResourceRespositoryService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.page.QueryInfo;
@@ -25,8 +26,8 @@ public class ResourceRepositoryController extends BaseController {
     }
 
     @ApiOperation(value = "获取资源列表")
-    @GetMapping("/queryPage")
-    public Object queryPage(QueryInfo queryInfo){
-        return succeed(resourceRepositoryService.queryPage(queryInfo));
+    @GetMapping("/queryTree")
+    public Object queryTree(MenuQueryInfo menuQueryInfo){
+        return succeed(resourceRepositoryService.queryTree(menuQueryInfo));
     }
 }