|
@@ -202,21 +202,9 @@ public class FolderServiceImpl extends ServiceImpl<IFolderMapper, Folder> implem
|
|
|
private List<Folder> getByUserAndType(String folderIds,Long userId, Integer type) {
|
|
|
LambdaQueryWrapper<Folder> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
|
- List<Long> folderIdList = new ArrayList<>();
|
|
|
- if(StringUtils.isNotBlank(folderIds)){
|
|
|
- if(folderIds.contains(",")){
|
|
|
- String[] split = folderIds.split(",");
|
|
|
- for (String s : split) {
|
|
|
- folderIdList.add(Long.valueOf(s));
|
|
|
- }
|
|
|
- }else {
|
|
|
- folderIdList.add(Long.valueOf(folderIds));
|
|
|
- }
|
|
|
- }
|
|
|
+ List<Long> folderIdList = getByFolderIds(folderIds);
|
|
|
if(folderIdList.size() >0){
|
|
|
- List<Folder> allFolderIds = this.getAllFolderIds(folderIdList);
|
|
|
- List<Long> ids = allFolderIds.stream().map(Folder::getId).collect(Collectors.toList());
|
|
|
- wrapper.notIn(Folder::getId,ids);
|
|
|
+ wrapper.notIn(Folder::getId,folderIdList);
|
|
|
}
|
|
|
|
|
|
wrapper.eq(Folder::getUserId,userId)
|
|
@@ -265,11 +253,12 @@ public class FolderServiceImpl extends ServiceImpl<IFolderMapper, Folder> implem
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<Folder> findByUserIdAndType(Long userId, Integer type, String name,Long folderId) {
|
|
|
+ public List<Folder> findByUserIdAndType(Long userId, Integer type, String name,String folderIds) {
|
|
|
LambdaQueryWrapper<Folder> wrapper = new LambdaQueryWrapper<>();
|
|
|
- if(folderId != null){
|
|
|
- wrapper.ne(Folder::getId,folderId);
|
|
|
- wrapper.ne(Folder::getParentId,folderId);
|
|
|
+
|
|
|
+ List<Long> folderIdList = getByFolderIds(folderIds);
|
|
|
+ if(folderIdList.size() >0){
|
|
|
+ wrapper.notIn(Folder::getId,folderIdList);
|
|
|
}
|
|
|
wrapper.eq(Folder::getUserId,userId);
|
|
|
wrapper.eq(Folder::getType,type);
|
|
@@ -278,4 +267,23 @@ public class FolderServiceImpl extends ServiceImpl<IFolderMapper, Folder> implem
|
|
|
}
|
|
|
return this.list(wrapper);
|
|
|
}
|
|
|
+
|
|
|
+ private List<Long> getByFolderIds(String folderIds){
|
|
|
+ List<Long> folderIdList = new ArrayList<>();
|
|
|
+ if(StringUtils.isNotBlank(folderIds)){
|
|
|
+ if(folderIds.contains(",")){
|
|
|
+ String[] split = folderIds.split(",");
|
|
|
+ for (String s : split) {
|
|
|
+ folderIdList.add(Long.valueOf(s));
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ folderIdList.add(Long.valueOf(folderIds));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(folderIdList.size() >0){
|
|
|
+ List<Folder> allFolderIds = this.getAllFolderIds(folderIdList);
|
|
|
+ return allFolderIds.stream().map(Folder::getId).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
}
|