perf: 零部件查询接口性能优化
This commit is contained in:
+6
@@ -38,6 +38,12 @@ public class LawsPartNameController {
|
||||
@RequestParam(name = "nodeName", required = false, defaultValue = "") @ApiParam("一级节点名称") String nodeName,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") @ApiParam("页码") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") @ApiParam("页面大小") Integer pageSize) {
|
||||
if (pageNo == null) {
|
||||
pageNo = 1;
|
||||
}
|
||||
if (pageSize == null) {
|
||||
pageSize = 5;
|
||||
}
|
||||
TreePage<PartName> list = partNameService.queryTreeList(nodeName, pageNo, pageSize);
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
+4
-4
@@ -48,7 +48,7 @@ public class PartNameServiceImpl extends ServiceImpl<PartNameMapper, PartName>
|
||||
// 不做筛选的时候查询加速
|
||||
if (StrUtil.isBlank(nodeName)) {
|
||||
// 构建树结构
|
||||
topLevelNodes = this.buildTree(new HashSet<>(allNodes));
|
||||
topLevelNodes = this.buildTree(allNodes);
|
||||
} else {
|
||||
// 做筛选的时候需要自己组树
|
||||
queryWrapper.clear();
|
||||
@@ -85,11 +85,11 @@ public class PartNameServiceImpl extends ServiceImpl<PartNameMapper, PartName>
|
||||
return result;
|
||||
}
|
||||
|
||||
private List<PartName> buildTree(Set<PartName> nodesSet) {
|
||||
private List<PartName> buildTree(Collection<PartName> nodesCollection) {
|
||||
List<PartName> topLevelNodes = new ArrayList<>();
|
||||
Map<String, PartName> nodeMap = nodesSet.stream()
|
||||
Map<String, PartName> nodeMap = nodesCollection.stream()
|
||||
.collect(Collectors.toMap(PartName::getCode, Function.identity()));
|
||||
for (PartName node : nodesSet) {
|
||||
for (PartName node : nodesCollection) {
|
||||
PartName parentNode = nodeMap.get(node.getParentCode());
|
||||
if (parentNode != null) {
|
||||
if (parentNode.getChildPartNameList() == null) {
|
||||
|
||||
Reference in New Issue
Block a user