hechunping 2 лет назад
Родитель
Сommit
9f298e987b

+ 12 - 22
sys-api-service/src/main/java/com/xy/service/SysSceneServiceImpl.java

@@ -50,23 +50,12 @@ public class SysSceneServiceImpl extends ServiceImpl<SysSceneMapper, SysScene> i
 
     @ApiOperation("场景树")
     @Override
-    public R<List<Tree<Long>>> tree() {
-        return R.ok(getSceneTree(0L));
-    }
-
-    /**
-     * 根据父节点ID生成数
-     *
-     * @param parentId 顶级可以传入0
-     * @return
-     */
-    private List<Tree<Long>> getSceneTree(Long parentId) {
-        LambdaQueryWrapper<SysScene> lambdaQueryWrapper = Wrappers.lambdaQuery();
-        List<SysScene> list = this.list(lambdaQueryWrapper);
-
+    public R<List<Tree<Long>>> tree(SysSceneDto.Tree pater) {
+        Long parentId = Emptys.check(pater.getPaterId())?pater.getPaterId():0L;
+        List<SysSceneDto.Vo> list = copy(SysSceneDto.Vo.class,list(null));
         List<TreeNode<Long>> collect = list.stream()
                 .filter(item -> !item.getId().equals(item.getPaterId()))
-                .sorted(Comparator.comparingInt(SysScene::getWeigh))
+                .sorted(Comparator.comparingInt(SysSceneDto.Vo::getWeigh))
                 .map(item -> {
                     TreeNode<Long> treeNode = new TreeNode();
                     treeNode.setId(item.getId());
@@ -75,15 +64,17 @@ public class SysSceneServiceImpl extends ServiceImpl<SysSceneMapper, SysScene> i
                     treeNode.setWeight(item.getWeigh());
                     Map<String, Object> extra = new HashMap<>(1);
                     extra.put(LambdaUtils.getProperty(SysScene::getSceneCode), item.getSceneCode());
-                    extra.put(LambdaUtils.getProperty(SysScene::getLevel),item.getLevel());
-                    extra.put(LambdaUtils.getProperty(SysScene::getWeigh),item.getWeigh());
-                    extra.put(LambdaUtils.getProperty(SysScene::getStatus),item.getStatus());
-                    extra.put(LambdaUtils.getProperty(SysScene::getCreateTime),item.getCreateTime());
+                    if(Emptys.check(pater.getAllColumn()) && pater.getAllColumn()) {
+                        extra.put(LambdaUtils.getProperty(SysScene::getLevel), item.getLevel());
+                        extra.put(LambdaUtils.getProperty(SysScene::getWeigh), item.getWeigh());
+                        extra.put(LambdaUtils.getProperty(SysScene::getStatus), item.getStatus());
+                        extra.put(LambdaUtils.getProperty(SysScene::getCreateTime), item.getCreateTime());
+                    }
                     treeNode.setExtra(extra);
                     return treeNode;
                 })
                 .collect(Collectors.toList());
-        return TreeUtil.build(collect, parentId);
+        return R.ok(TreeUtil.build(collect, parentId));
     }
 
     @ApiOperation(value = "删除", notes = "有子类不能删除")
@@ -104,8 +95,7 @@ public class SysSceneServiceImpl extends ServiceImpl<SysSceneMapper, SysScene> i
     public R<SysSceneDto.Vo> obj(SysSceneDto.Vo vo) {
         LambdaQueryWrapper<SysScene> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(vo, SysScene.class).build()
                 .last("limit 1");
-        SysScene category = baseMapper.selectOne(lambdaQueryWrapper);
-        return R.ok(copy(SysSceneDto.Vo.class, category));
+        return R.ok(copy(SysSceneDto.Vo.class, baseMapper.selectOne(lambdaQueryWrapper)));
     }
 
     @ApiOperation(value = "新增、更新场景", notes = "不传id为新增,传id为修改")

+ 10 - 0
sys-api/src/main/java/com/xy/dto/SysSceneDto.java

@@ -20,6 +20,16 @@ import java.time.LocalDateTime;
 @Accessors(chain = true)
 public class SysSceneDto {
 
+    @Data
+    @Accessors(chain = true)
+    public static class Tree{
+        @ApiModelProperty(value = "父ID")
+        private Long paterId;
+
+        @ApiModelProperty(value = "显示全部列,默认为不显示")
+        private Boolean allColumn;
+    }
+
     @Data
     @Accessors(chain = true)
     public static class Save{

+ 1 - 1
sys-api/src/main/java/com/xy/service/SysSceneService.java

@@ -24,7 +24,7 @@ public interface SysSceneService {
      * @return
      */
     @PostMapping("tree")
-    R<List<Tree<Long>>> tree();
+    R<List<Tree<Long>>> tree(@RequestBody SysSceneDto.Tree Pater);
 
     /**
      * 对象查询