This commit is contained in:
@@ -60,14 +60,14 @@ public class FileStatsService {
|
||||
|
||||
private Long calculateTotalSize(List<FileEntity> files) {
|
||||
return files.stream()
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED)
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED && file.getStatus() != FileStatus.TEMP)
|
||||
.mapToLong(FileEntity::getFileSize)
|
||||
.sum();
|
||||
}
|
||||
|
||||
private Integer calculateTotalCount(List<FileEntity> files) {
|
||||
return (int) files.stream()
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED)
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED && file.getStatus() != FileStatus.TEMP)
|
||||
.count();
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ public class FileStatsService {
|
||||
|
||||
private Long calculateMediaSize(List<FileEntity> files, FileType fileType) {
|
||||
return files.stream()
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED)
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED && file.getStatus() != FileStatus.TEMP)
|
||||
.filter(file -> isFileType(file, fileType))
|
||||
.mapToLong(FileEntity::getFileSize)
|
||||
.sum();
|
||||
@@ -87,7 +87,7 @@ public class FileStatsService {
|
||||
|
||||
private Integer calculateMediaCount(List<FileEntity> files, FileType fileType) {
|
||||
return (int) files.stream()
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED)
|
||||
.filter(file -> file.getStatus() != FileStatus.DELETED && file.getStatus() != FileStatus.TEMP)
|
||||
.filter(file -> isFileType(file, fileType))
|
||||
.count();
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package ru.soune.nocopy.service.file;
|
||||
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import ru.soune.nocopy.dto.file.UploadProgressResponse;
|
||||
import ru.soune.nocopy.entity.file.FileStatus;
|
||||
import ru.soune.nocopy.entity.file.FileUploadSession;
|
||||
|
||||
import java.io.IOException;
|
||||
@@ -18,5 +19,5 @@ public interface FileUploadService {
|
||||
|
||||
UploadProgressResponse getUploadProgress(String uploadId);
|
||||
|
||||
void completeFileProcessingAsync(FileUploadSession session);
|
||||
void completeFileProcessingAsync(FileUploadSession session, FileStatus status);
|
||||
}
|
||||
|
||||
@@ -215,7 +215,7 @@ public class FileUploadServiceImpl implements FileUploadService {
|
||||
@Async("fileUploadTaskExecutor")
|
||||
@Transactional
|
||||
@Override
|
||||
public void completeFileProcessingAsync(FileUploadSession session) {
|
||||
public void completeFileProcessingAsync(FileUploadSession session, FileStatus status) {
|
||||
try {
|
||||
Path filePath = Paths.get(session.getFilePath());
|
||||
String checksum = calculateChecksum(filePath);
|
||||
@@ -231,7 +231,7 @@ public class FileUploadServiceImpl implements FileUploadService {
|
||||
.checksum(checksum)
|
||||
.uploadSessionId(session.getUploadId())
|
||||
.protectionStatus(ProtectionStatus.PROCESSING)
|
||||
.status(FileStatus.ACTIVE)
|
||||
.status(status)
|
||||
.build();
|
||||
|
||||
FileEntity saved = fileEntityRepository.save(fileEntity);
|
||||
@@ -317,7 +317,9 @@ public class FileUploadServiceImpl implements FileUploadService {
|
||||
session.setStatus(UploadStatus.COMPLETED);
|
||||
session.setFilePath(finalFilePath);
|
||||
|
||||
completeFileProcessingAsync(session);
|
||||
FileStatus status = findSimilar == 0 ? FileStatus.ACTIVE: FileStatus.TEMP;
|
||||
|
||||
completeFileProcessingAsync(session, status);
|
||||
|
||||
} else {
|
||||
sessionRepository.save(session);
|
||||
|
||||
Reference in New Issue
Block a user