fix:标记体系查询接口的BUG
This commit is contained in:
+10
@@ -220,6 +220,15 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
|
||||
TsResources=dao.selectList(queryWrapper);
|
||||
|
||||
for(TsResource resource:TsResources){
|
||||
/**
|
||||
* TODO 此处代码有坑,当前查询子节点的时候,只查询子节点ID包含的情况,
|
||||
* 实际查询的时候 parentIds字段根本就没有记录当前节点下所有子节点的数据
|
||||
* 所以导致查询的时候查询的不对、
|
||||
* 修改逻辑如下:
|
||||
* 1、将下方代码注释掉,通过递归查询每一级的数据然后组装
|
||||
* 2、将数据库中的parentIds字段数据重做,然后查询的时候like 匹配 分割符+ID或
|
||||
* ID+分割符的方式将当前节点下的所有子节点全部查询出来,然后通过流式计算对数据进行重新组装
|
||||
*/
|
||||
resource.setTreeType("tsr");
|
||||
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
||||
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
|
||||
@@ -396,6 +405,7 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
|
||||
* @return List<TsResource>
|
||||
*/
|
||||
private List<TsResource> recursionGetChildren(TsResource parent){
|
||||
|
||||
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
||||
TsResourceQueryWrapper.eq("PARENT_ID",parent.getId());
|
||||
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
|
||||
|
||||
Reference in New Issue
Block a user