|
@@ -83,7 +83,7 @@ public class DiskFileService {
|
|
|
|
|
|
|
|
// 删除文件
|
|
// 删除文件
|
|
|
Map<String, List<DiskFile>> groupMap0 = list.stream()
|
|
Map<String, List<DiskFile>> groupMap0 = list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() != ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() != ObjectType.Folder.getCode())
|
|
|
.collect(Collectors.groupingBy(DiskFile::getPid));
|
|
.collect(Collectors.groupingBy(DiskFile::getPid));
|
|
|
if (groupMap0.size() == 1) {
|
|
if (groupMap0.size() == 1) {
|
|
|
// 保证 file 具有相同的 pid
|
|
// 保证 file 具有相同的 pid
|
|
@@ -100,7 +100,7 @@ public class DiskFileService {
|
|
|
|
|
|
|
|
// 删除文件夹
|
|
// 删除文件夹
|
|
|
Map<String, List<DiskFile>> groupMap = list.stream()
|
|
Map<String, List<DiskFile>> groupMap = list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() == ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() == ObjectType.Folder.getCode())
|
|
|
.collect(Collectors.groupingBy(DiskFile::getPid));
|
|
.collect(Collectors.groupingBy(DiskFile::getPid));
|
|
|
if (groupMap.size() == 1) {
|
|
if (groupMap.size() == 1) {
|
|
|
// 保证 folder 具有相同的 pid
|
|
// 保证 folder 具有相同的 pid
|
|
@@ -125,12 +125,12 @@ public class DiskFileService {
|
|
|
public void restore(List<String> fileIds) {
|
|
public void restore(List<String> fileIds) {
|
|
|
List<DiskFile> list = findByFileIds(fileIds);
|
|
List<DiskFile> list = findByFileIds(fileIds);
|
|
|
List<String> files = list.stream()
|
|
List<String> files = list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() != ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() != ObjectType.Folder.getCode())
|
|
|
.map(DiskFile::getFileId)
|
|
.map(DiskFile::getFileId)
|
|
|
.collect(Collectors.toList());
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
|
|
list.stream()
|
|
list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() == ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() == ObjectType.Folder.getCode())
|
|
|
.map(diskFile1 -> getChildren(diskFile1.getPath()))
|
|
.map(diskFile1 -> getChildren(diskFile1.getPath()))
|
|
|
.flatMap(Collection::stream)
|
|
.flatMap(Collection::stream)
|
|
|
.forEach(diskFile -> {
|
|
.forEach(diskFile -> {
|
|
@@ -145,12 +145,12 @@ public class DiskFileService {
|
|
|
public void erase(List<String> fileIds) {
|
|
public void erase(List<String> fileIds) {
|
|
|
List<DiskFile> list = findByFileIds(fileIds);
|
|
List<DiskFile> list = findByFileIds(fileIds);
|
|
|
List<String> files = list.stream()
|
|
List<String> files = list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() != ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() != ObjectType.Folder.getCode())
|
|
|
.map(DiskFile::getFileId)
|
|
.map(DiskFile::getFileId)
|
|
|
.collect(Collectors.toList());
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
|
|
list.stream()
|
|
list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() == ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() == ObjectType.Folder.getCode())
|
|
|
.map(diskFile -> findByPathPrefix(diskFile.getPath()))
|
|
.map(diskFile -> findByPathPrefix(diskFile.getPath()))
|
|
|
.flatMap(Collection::stream)
|
|
.flatMap(Collection::stream)
|
|
|
.forEach(diskFile -> {
|
|
.forEach(diskFile -> {
|
|
@@ -193,7 +193,7 @@ public class DiskFileService {
|
|
|
current.setFilename(newFilename);
|
|
current.setFilename(newFilename);
|
|
|
List<DiskFile> diskFiles = new ArrayList<>();
|
|
List<DiskFile> diskFiles = new ArrayList<>();
|
|
|
diskFiles.add(current);
|
|
diskFiles.add(current);
|
|
|
- if (current.getFileType() == ObjectType.Dir.getCode()) {
|
|
|
|
|
|
|
+ if (current.getFileType() == ObjectType.Folder.getCode()) {
|
|
|
getChildren(current.getPath()).stream()
|
|
getChildren(current.getPath()).stream()
|
|
|
.filter(childFile -> !childFile.getFileId().equals(fileId))
|
|
.filter(childFile -> !childFile.getFileId().equals(fileId))
|
|
|
.forEach(childFile -> {
|
|
.forEach(childFile -> {
|
|
@@ -230,7 +230,7 @@ public class DiskFileService {
|
|
|
return Result.fail(msg);
|
|
return Result.fail(msg);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (parentFile.getFileType() != ObjectType.Dir.getCode()) {
|
|
|
|
|
|
|
+ if (parentFile.getFileType() != ObjectType.Folder.getCode()) {
|
|
|
String msg = "文件被移动/复制到的位置不是文件夹";
|
|
String msg = "文件被移动/复制到的位置不是文件夹";
|
|
|
return Result.fail(msg);
|
|
return Result.fail(msg);
|
|
|
}
|
|
}
|
|
@@ -274,7 +274,7 @@ public class DiskFileService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
List<DiskFile> copiedFiles = list.stream()
|
|
List<DiskFile> copiedFiles = list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() != ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() != ObjectType.Folder.getCode())
|
|
|
.peek(diskFile -> {
|
|
.peek(diskFile -> {
|
|
|
setRootPath(diskFile, parentFile, owner);
|
|
setRootPath(diskFile, parentFile, owner);
|
|
|
if (copy) {
|
|
if (copy) {
|
|
@@ -284,7 +284,7 @@ public class DiskFileService {
|
|
|
|
|
|
|
|
List<DiskFile> list1 = new ArrayList<>();
|
|
List<DiskFile> list1 = new ArrayList<>();
|
|
|
list.stream()
|
|
list.stream()
|
|
|
- .filter(diskFile -> diskFile.getFileType() == ObjectType.Dir.getCode())
|
|
|
|
|
|
|
+ .filter(diskFile -> diskFile.getFileType() == ObjectType.Folder.getCode())
|
|
|
.forEach(dirFile -> {
|
|
.forEach(dirFile -> {
|
|
|
List<DiskFile> results = getChildren(dirFile.getPath());
|
|
List<DiskFile> results = getChildren(dirFile.getPath());
|
|
|
DiskFile diskFile = list2tree(dirFile.getFileId(), results);
|
|
DiskFile diskFile = list2tree(dirFile.getFileId(), results);
|
|
@@ -565,28 +565,30 @@ public class DiskFileService {
|
|
|
.owner(loginUser)
|
|
.owner(loginUser)
|
|
|
.build();
|
|
.build();
|
|
|
|
|
|
|
|
- Page page = new Page(1, 10);
|
|
|
|
|
|
|
+ Page page = new Page(1, 1);
|
|
|
List<DiskFile> diskFileList = diskFileMapper.findDiskQueryByPage(page, diskQuery);
|
|
List<DiskFile> diskFileList = diskFileMapper.findDiskQueryByPage(page, diskQuery);
|
|
|
if (!diskFileList.isEmpty()) {
|
|
if (!diskFileList.isEmpty()) {
|
|
|
- DiskFile diskFile = diskFileList.get(0);
|
|
|
|
|
|
|
+ DiskFile diskFile = diskFileList.getFirst();
|
|
|
long owner = diskFile.getOwner();
|
|
long owner = diskFile.getOwner();
|
|
|
if (owner != loginUser) {
|
|
if (owner != loginUser) {
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- int channelCode = 111;
|
|
|
|
|
|
|
+ String sizeStr = byteConverter.convert(ByteType.Bytes, diskFile.getSize());
|
|
|
|
|
+ DiskFileDetail diskFileDetail = new DiskFileDetail(diskFile, sizeStr);
|
|
|
String objectId = diskFile.getFileId();
|
|
String objectId = diskFile.getFileId();
|
|
|
- return getDiskFileDetail(channelCode, objectId);
|
|
|
|
|
|
|
+ //DiskFileDetail diskFileDetail0 = getDiskFileDetail0(objectId);
|
|
|
|
|
+ return diskFileDetail;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public DiskFileDetail getDiskFileDetail(int channelCode, String objectId) {
|
|
|
|
|
|
|
+ public DiskFileDetail getDiskFileDetail0(String objectId) {
|
|
|
try {
|
|
try {
|
|
|
ObjectMeta objectMeta = ossService.getObjectMeta(objectId);
|
|
ObjectMeta objectMeta = ossService.getObjectMeta(objectId);
|
|
|
String signedUrl = ossService.getSignedUrl(objectId, null);
|
|
String signedUrl = ossService.getSignedUrl(objectId, null);
|
|
|
- return new DiskFileDetail(objectMeta, signedUrl);
|
|
|
|
|
|
|
+ return new DiskFileDetail(objectMeta, "", signedUrl);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error("{}", e.getMessage());
|
|
log.error("{}", e.getMessage());
|
|
|
}
|
|
}
|