public class OrgUnitCache { private Long unitCode; // 组织编码 private String unitName; // 组织名称 private String zbu; // 所属板块 private Long parentUnitCode; // 上级组织编码 private String unitScope; // 1,集团内;2,集团外 private String lastUpdateCode; // 更新人=“AUTO”表示自动更新 } public class OrgTreeShow implements Serializable { private String parentUnitCode; //父节点id private String unitCode; private String unitName; private List<OrgTreeShow> children; //子节点数据 } 将List<OrgUnitCache> cacheList的数据转换为OrgTreeShow对象,OrgTreeShow为树形结构
时间: 2024-03-27 16:40:44 浏览: 49
Python实现base64编码的图片保存到本地功能示例
可以通过递归实现将List<OrgUnitCache>转换为OrgTreeShow对象,具体实现代码如下:
```
public OrgTreeShow convertToTree(List<OrgUnitCache> cacheList, Long parentUnitCode) {
OrgTreeShow tree = new OrgTreeShow();
tree.setParentUnitCode(String.valueOf(parentUnitCode));
tree.setChildren(new ArrayList<>());
for (OrgUnitCache cache : cacheList) {
if (parentUnitCode.equals(cache.getParentUnitCode())) {
OrgTreeShow child = new OrgTreeShow();
child.setUnitCode(String.valueOf(cache.getUnitCode()));
child.setUnitName(cache.getUnitName());
child.setChildren(convertToTree(cacheList, cache.getUnitCode()).getChildren());
tree.getChildren().add(child);
}
}
return tree;
}
```
该方法接收两个参数,第一个参数为List<OrgUnitCache>对象,第二个参数为上级组织编码(初始值为0),返回值为OrgTreeShow对象。该方法首先创建一个OrgTreeShow对象,并设置父节点id和子节点数据为空列表。然后遍历List<OrgUnitCache>对象,将parentUnitCode等于上级组织编码的OrgUnitCache对象转换为OrgTreeShow对象,并添加到子节点数据中。通过递归调用,实现了将List<OrgUnitCache>对象转换为OrgTreeShow对象的树形结构。
阅读全文