zTree全复制包含父子节点关系
本人在项目中有一需求,需要将一组织下的zTree完整的复制到另一个组织下,复制树主要有以下两点需要注意:
- 如何在复制树之后保留父子节点关系
- 完整数据节点集合
实现逻辑
将要复制树组织的节点全部取出为集合list,循环这个集合为每一个节点创建新节点并赋予节点新主键及要复制的组织主键得到复制节点集合copyList,并将新旧节点作为键值对保存到主键联系集合map中(此步骤为复制树中最关键一步),循环节点集合list,根据主键联系集合获取该节点复制后的对象,并根据主键联系集合重新给parentId赋值。
部分代码如下:
public void batchCopy(Map<String, String> map) {
//查询条件集合
Map<String,Object> param=new HashMap<String, Object>();
//复制组织id
String groupId=map.get("groupId");
//先把原有树删除
this.getSqlSessionTemplate().delete(this.getStatement("deleteTree"