标准类别sql+资料中心部分代码

This commit is contained in:
yuezhihang
2022-07-07 17:02:55 +08:00
parent ea0480a404
commit 98d267230e
6 changed files with 226 additions and 13 deletions
@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
/**
* <p>
@@ -35,7 +36,7 @@ public class ZlTreeController extends BaseController<ZlTree> {
@PostMapping
@ApiOperation("新增资料中心左侧树节点")
public ResponseMessage addFileMaterial(@RequestBody ZlTree material){
material.setId(String.valueOf(UUID.randomUUID()));
boolean save = iZlTreeService.save(material);
return Result.success(save);
}
@@ -53,8 +54,8 @@ public class ZlTreeController extends BaseController<ZlTree> {
@GetMapping
@ApiOperation("查询树结构")
public ResponseMessage<TreeData> getFileMaterial(){
TreeData fileMaterial = iZlTreeService.getLeftTree();
public ResponseMessage<List<TreeData>> getFileMaterial(){
List<TreeData> fileMaterial = iZlTreeService.getLeftTree();
return Result.success(fileMaterial);
}
@@ -30,7 +30,7 @@ public class TreeData extends BaseEntity {
private String id;
@ApiModelProperty(value = "父节点")
private String pId;
private String parentId;
@ApiModelProperty(value = "名称")
private String name;
@@ -29,16 +29,20 @@ public class ZlTree extends BaseEntity {
private static final long serialVersionUID = 1L;
@TableId
@TableField("id")
@ApiModelProperty(value = "主键")
private String id;
@ApiModelProperty(value = "父节点")
@TableField("p_id")
private String pId;
private String parentId;
@ApiModelProperty(value = "名称")
@TableField("name")
private String name;
@ApiModelProperty(value = "排序")
@TableField("sort")
private String sort;
}
@@ -23,7 +23,7 @@ public interface IZlTreeService extends IService<ZlTree> {
* @param
* @return
*/
TreeData getLeftTree();
List<TreeData> getLeftTree();
/**
@@ -34,13 +34,15 @@ public class ZlTreeServiceImpl extends ServiceImpl<ZlTreeDao, ZlTree> implements
@Override
public TreeData getLeftTree() {
public List<TreeData> getLeftTree() {
TreeData res=new TreeData();
List<ZlTree> list=this.list();
QueryWrapper<ZlTree> wrapper=new QueryWrapper<>();
wrapper.orderByAsc("length(sort),sort");
List<ZlTree> list=this.list(wrapper);
List<TreeData> treeData=new ArrayList<>();
//代码遍历生成树
for (ZlTree zlTree:list) {
if (StringUtils.isNotBlank(zlTree.getPId())){
if (StringUtils.isNotBlank(zlTree.getParentId())){
TreeData zlTreeData=new TreeData();
BeanUtils.copyProperties(zlTree,zlTreeData);
treeData.add(zlTreeData);
@@ -50,13 +52,18 @@ public class ZlTreeServiceImpl extends ServiceImpl<ZlTreeDao, ZlTree> implements
}
//递归生成树
digui(res,treeData);
return res;
List<TreeData> treeData1=new ArrayList<>();
treeData1.add(res);
return treeData1;
}
private void digui(TreeData res,List<TreeData> treeData){
for (TreeData data:treeData) {
if (res.getId().equals(data.getPId())){
if (null==res.getChildren()){
List<TreeData> data1=new ArrayList<>();
res.setChildren(data1);
}
if (res.getId().equals(data.getParentId())){
if (null!=res.getChildren()){
res.getChildren().add(data);
}else {