修改bug
This commit is contained in:
parent
8a810acce6
commit
c979c62a58
|
|
@ -93,7 +93,21 @@ public class TreeBuild {
|
||||||
return treeNodes;
|
return treeNodes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<DocumentTreeVo> buildTree2(String parentId,String isAdmin){
|
||||||
|
// treeNodes:保存一个顶级节点所构建出来的完整树形
|
||||||
|
List<DocumentTreeVo> treeNodes = new ArrayList<DocumentTreeVo>();
|
||||||
|
// getRootNode():获取所有的根节点
|
||||||
|
for (DocumentTreeVo treeRootNode : getRootNode1(parentId,isAdmin)) {
|
||||||
|
// 将顶级节点进行构建子树
|
||||||
|
treeRootNode = buildChildTree1(treeRootNode);
|
||||||
|
// 完成一个顶级节点所构建的树形,增加进来
|
||||||
|
if("myShare".equals(treeRootNode.getParentId()) || "otherShare".equals(treeRootNode.getParentId())){
|
||||||
|
treeNodes.add(treeRootNode);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return treeNodes;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 递归-----构建子树形结构
|
* 递归-----构建子树形结构
|
||||||
* @param pNode 根节点(顶级节点)
|
* @param pNode 根节点(顶级节点)
|
||||||
|
|
@ -107,6 +121,9 @@ public class TreeBuild {
|
||||||
// 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
|
// 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
|
||||||
if (treeNode.getParentId().equals(pNode.getId())) {
|
if (treeNode.getParentId().equals(pNode.getId())) {
|
||||||
// 再递归进行判断当前节点的情况,调用自身方法
|
// 再递归进行判断当前节点的情况,调用自身方法
|
||||||
|
if(StringUtils.isNotEmpty(pNode.getAuth())){
|
||||||
|
treeNode.setAuth(pNode.getAuth());
|
||||||
|
}
|
||||||
childTree.add(buildChildTree(treeNode));
|
childTree.add(buildChildTree(treeNode));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -129,6 +146,9 @@ public class TreeBuild {
|
||||||
for (DocumentTreeVo treeNode : nodeList) {
|
for (DocumentTreeVo treeNode : nodeList) {
|
||||||
// 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
|
// 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
|
||||||
if (treeNode.getParent().equals(pNode.getExeId())) {
|
if (treeNode.getParent().equals(pNode.getExeId())) {
|
||||||
|
if(StringUtils.isNotEmpty(pNode.getAuth())){
|
||||||
|
treeNode.setAuth(pNode.getAuth());
|
||||||
|
}
|
||||||
// 再递归进行判断当前节点的情况,调用自身方法
|
// 再递归进行判断当前节点的情况,调用自身方法
|
||||||
childTree.add(buildChildTree1(treeNode));
|
childTree.add(buildChildTree1(treeNode));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -232,4 +232,11 @@ public interface DocumentScreenMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
TbDocumentFolder getDocumnetData(TbFolderFileVo vo);
|
TbDocumentFolder getDocumnetData(TbFolderFileVo vo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询分享数据集合
|
||||||
|
* @param vo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<DocumentTreeVo> getSharelist(DocumentTreeVo vo);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -70,6 +70,13 @@ public class DocumentScreenImpl implements DocumentScreenService {
|
||||||
List<DocumentTreeVo> allList=mapper.getPublicFolderList(vo);
|
List<DocumentTreeVo> allList=mapper.getPublicFolderList(vo);
|
||||||
|
|
||||||
List<DocumentTreeVo> childeList=mapper.getUserFolderList(vo);
|
List<DocumentTreeVo> childeList=mapper.getUserFolderList(vo);
|
||||||
|
|
||||||
|
List<DocumentTreeVo> shareList=mapper.getSharelist(vo);
|
||||||
|
//查询 子节点集合
|
||||||
|
TreeBuild shareTree = new TreeBuild(shareList);
|
||||||
|
List<DocumentTreeVo> shareTreeList=shareTree.buildTree2("0",vo.getIsAdmin());
|
||||||
|
|
||||||
|
allList.addAll(shareTreeList);
|
||||||
//查询 子节点集合
|
//查询 子节点集合
|
||||||
TreeBuild treeBuild1 = new TreeBuild(childeList);
|
TreeBuild treeBuild1 = new TreeBuild(childeList);
|
||||||
List<DocumentTreeVo> childeList2=treeBuild1.buildTree1("0",vo.getIsAdmin());
|
List<DocumentTreeVo> childeList2=treeBuild1.buildTree1("0",vo.getIsAdmin());
|
||||||
|
|
|
||||||
|
|
@ -128,17 +128,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
||||||
IFNULL( concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id), folder.id) id
|
IFNULL( concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id), folder.id) id
|
||||||
from tb_user_document_folder folder
|
from tb_user_document_folder folder
|
||||||
left join tb_public_real_user pru on folder.id=pru.user_folder_id
|
left join tb_public_real_user pru on folder.id=pru.user_folder_id AND pru.public_folder_id NOT in('myShare','otherShare')
|
||||||
where folder.file_type=0 and (folder.type is null OR(folder.type=3 and folder.create_user=#{userId})) and
|
where folder.file_type=0 and (folder.type is null OR(folder.type=3 and folder.create_user=#{userId}))
|
||||||
(pru.public_folder_id NOT in('myShare','otherShare') OR pru.public_folder_id IS NULL)
|
-- (pru.public_folder_id NOT in('myShare','otherShare') OR pru.public_folder_id IS NULL)
|
||||||
|
</select>
|
||||||
|
<select id="getSharelist" resultType="com.bonus.business.domain.DocumentTreeVo">
|
||||||
|
SELECT folder.id exeId ,folder.level,folder.folder_name name,folder.parent_id parent,4 type,folder.parent_ids parentIds,
|
||||||
|
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
||||||
|
IFNULL( concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id), folder.id) id
|
||||||
|
from tb_user_document_folder folder
|
||||||
|
left join tb_public_real_user pru on folder.id=pru.user_folder_id
|
||||||
|
where folder.file_type=0 and
|
||||||
|
(pru.public_folder_id NOT in('myShare','otherShare') OR pru.public_folder_id IS NULL)
|
||||||
union All
|
union All
|
||||||
SELECT folder.id exeId ,folder.level,folder.folder_name name,0 parent, 4 type,folder.parent_ids parentIds,
|
SELECT folder.id exeId ,folder.level,folder.folder_name name,0 parent, 4 type,folder.parent_ids parentIds,
|
||||||
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
folder.file_suffix,pru.user_id,pru.public_folder_id parentId,pru.auth ,pru.share_user_id,
|
||||||
IFNULL( concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id), folder.id) id
|
IFNULL( concat(pru.public_folder_id,"_",pru.user_id,"_",folder.id), folder.id) id
|
||||||
from tb_user_document_folder folder
|
from tb_user_document_folder folder
|
||||||
left join tb_public_real_user pru on folder.id=pru.user_folder_id
|
left join tb_public_real_user pru on folder.id=pru.user_folder_id
|
||||||
where folder.file_type=0 and pru.public_folder_id in('myShare','otherShare') and pru.user_id=#{userId}
|
where folder.file_type=0 and pru.public_folder_id in('myShare','otherShare') and pru.user_id=#{userId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<!--文件夹名称是否存在-->
|
<!--文件夹名称是否存在-->
|
||||||
<select id="getDocumentByNum" resultType="java.lang.Integer">
|
<select id="getDocumentByNum" resultType="java.lang.Integer">
|
||||||
<if test='type=="1" or type==1 '>
|
<if test='type=="1" or type==1 '>
|
||||||
|
|
|
||||||
|
|
@ -100,7 +100,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
GROUP BY u.user_id
|
GROUP BY u.user_id
|
||||||
|
|
||||||
<!-- 数据范围过滤 -->
|
<!-- 数据范围过滤 -->
|
||||||
${params.dataScope}
|
-- ${params.dataScope}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
|
<select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue