|
|
|
@ -7,13 +7,18 @@ import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
|
|
|
|
import com.supervision.manage.pojo.vo.DirectoryInfoVO;
|
|
|
|
|
import com.supervision.manage.service.DirectoryInfoManageService;
|
|
|
|
|
import com.supervision.manage.service.FileManageService;
|
|
|
|
|
import com.supervision.model.DirectoryInfo;
|
|
|
|
|
import com.supervision.model.MaterialLibrary;
|
|
|
|
|
import com.supervision.service.DirectoryInfoService;
|
|
|
|
|
import com.supervision.service.MaterialLibraryService;
|
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Objects;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
|
@RequiredArgsConstructor
|
|
|
|
@ -21,6 +26,8 @@ public class DirectoryInfoManageServiceImpl implements DirectoryInfoManageServic
|
|
|
|
|
|
|
|
|
|
private final DirectoryInfoService directoryInfoService;
|
|
|
|
|
|
|
|
|
|
private final MaterialLibraryService materialLibraryService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public String addDirectory(DirectoryInfo directoryInfo) {
|
|
|
|
@ -66,11 +73,21 @@ public class DirectoryInfoManageServiceImpl implements DirectoryInfoManageServic
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<DirectoryInfoVO> getFileDirectory(String parentDirId) {
|
|
|
|
|
public List<DirectoryInfoVO> getFileDirectory(String parentDirId,String fileName) {
|
|
|
|
|
|
|
|
|
|
List<String> directoryIds = new ArrayList<>();
|
|
|
|
|
if (StrUtil.isNotEmpty(fileName)){
|
|
|
|
|
List<MaterialLibrary> list = materialLibraryService.lambdaQuery().like(MaterialLibrary::getMaterialName, fileName).list();
|
|
|
|
|
if (CollectionUtil.isEmpty(list)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
}
|
|
|
|
|
directoryIds = list.stream().map(MaterialLibrary::getDirectoryId).filter(StrUtil::isNotEmpty).collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<DirectoryInfo> directoryInfoList = directoryInfoService.lambdaQuery()
|
|
|
|
|
.eq(StrUtil.isNotEmpty(parentDirId), DirectoryInfo::getParentId, parentDirId).list();
|
|
|
|
|
.eq(StrUtil.isNotEmpty(parentDirId), DirectoryInfo::getParentId, parentDirId)
|
|
|
|
|
.in(CollectionUtil.isNotEmpty(directoryIds),DirectoryInfo::getId, directoryIds)
|
|
|
|
|
.list();
|
|
|
|
|
|
|
|
|
|
if (CollectionUtil.isEmpty(directoryInfoList)){
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|