feat: 国内外标准 树形结构查询标准库

This commit is contained in:
super_liu
2021-07-06 16:05:27 +08:00
parent 75a7a90e9d
commit bd73773b19
5 changed files with 28 additions and 4 deletions
@@ -2,6 +2,7 @@ package com.adc.da.slrs.sarResource.entity;
import com.adc.da.base.entity.BaseEntity;
import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.utils.treetool.annotation.TreeNodeId;
import com.adc.da.utils.treetool.annotation.TreeNodeName;
import com.adc.da.utils.treetool.annotation.TreeNodeParentId;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -37,6 +38,7 @@ public class TsResource extends BaseEntity {
@TreeNodeId
@NotNull(message = "id不能为空",groups = {SarMenu.update.class})
@ApiModelProperty(value = "主键")
@TableId(value = "ID",type = IdType.UUID)
@@ -31,4 +31,6 @@ public interface ITsResourceService extends IService<TsResource> {
* @return List<Menu>
*/
List<TsResource> getResourceByIds(List<String> resourceIds, String sorDivide);
List<String> getChildMenuList(String menuId);
}
@@ -6,8 +6,11 @@ import com.adc.da.http.Result;
import com.adc.da.slrs.sarResource.dao.TsResourceDao;
import com.adc.da.slrs.sarResource.entity.TsResource;
import com.adc.da.slrs.sarResource.service.ITsResourceService;
import com.adc.da.utils.treetool.Tree;
import com.adc.da.utils.treetool.TreeNode;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -132,4 +135,20 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
}
return children;
}
public List<String> getChildMenuList (String menuId) {
List<String> menuIds = new ArrayList<>();
if (StringUtils.isNotEmpty(menuId)) {
List<TsResource> SarMenuList = dao.selectList(new QueryWrapper<>());
Tree tree = new Tree(SarMenuList);
TreeNode treeNode = tree.getTreeNode(menuId);
if (treeNode != null) {
menuIds.add(treeNode.getNodeId());
for (TreeNode node : treeNode.getAllChildren()) {
menuIds.add(node.getNodeId());
}
}
}
return menuIds;
}
}