@@ -140,7 +140,7 @@ public class GlobalSearchController {
|
||||
// }
|
||||
|
||||
|
||||
@PostMapping("/violations")
|
||||
@PostMapping("/violation-summary")
|
||||
public ResponseEntity<?> getViolations(@RequestBody ViolationRequest request) {
|
||||
if (request.getToken() == null || request.getToken().isBlank()) {
|
||||
Map<String, Object> errorData = new HashMap<>();
|
||||
@@ -151,12 +151,9 @@ public class GlobalSearchController {
|
||||
try {
|
||||
Long userId = authService.useUserAuthToken(request.getToken());
|
||||
|
||||
LocalDateTime start = parseDate(request.getStartDate());
|
||||
LocalDateTime end = parseDate(request.getEndDate());
|
||||
|
||||
Page<FileViolationSummaryDTO> result = violationService.getFileViolationsSummary(
|
||||
userId, request.getFileName(), request.getSortDirection(),
|
||||
request.getPage(), request.getSize(), start, end);
|
||||
request.getPage(), request.getSize(), request.getStartDate(), request.getEndDate());
|
||||
|
||||
return ResponseEntity.ok(result);
|
||||
} catch (NotFoundAuthToken e) {
|
||||
@@ -203,13 +200,4 @@ public class GlobalSearchController {
|
||||
|
||||
return ResponseEntity.ok(response);
|
||||
}
|
||||
|
||||
private LocalDateTime parseDate(String dateStr) {
|
||||
try {
|
||||
return LocalDateTime.parse(dateStr, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
} catch (DateTimeParseException e) {
|
||||
log.error(e.getMessage());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,8 @@ import ru.soune.nocopy.repository.ViolationRepository;
|
||||
import ru.soune.nocopy.service.file.FileEntityService;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.time.format.DateTimeParseException;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -68,7 +70,7 @@ public class ViolationService {
|
||||
}
|
||||
|
||||
public Page<FileViolationSummaryDTO> getFileViolationsSummary(Long userId, String fileName, String sortDirection, Integer page,
|
||||
Integer size, LocalDateTime start, LocalDateTime end) {
|
||||
Integer size, String start, String end) {
|
||||
List<FileEntity> userFiles = fileName == null || fileName.isEmpty() ? fileEntityService.getAllUserFiles(userId)
|
||||
: fileEntityService.getAllUserFilesWithFileName(userId, fileName,
|
||||
List.of(FileStatus.ACTIVE, FileStatus.BLOCKED, FileStatus.MODERATION));
|
||||
@@ -83,7 +85,7 @@ public class ViolationService {
|
||||
ViolationStatus.NOT_OWNER_FILE.name(),pageable);
|
||||
} else {
|
||||
violations = violationRepository.findByFileEntityInAndStatusNotAndCreatedDateBetween(
|
||||
userFiles, ViolationStatus.NOT_OWNER_FILE.name(), start, end, pageable);
|
||||
userFiles, ViolationStatus.NOT_OWNER_FILE.name(), parseDate(start), parseDate(end), pageable);
|
||||
}
|
||||
|
||||
Map<String, List<Violation>> violationsByFileId = violations.getContent().stream()
|
||||
@@ -274,4 +276,13 @@ public class ViolationService {
|
||||
return "unknown";
|
||||
}
|
||||
}
|
||||
|
||||
private LocalDateTime parseDate(String dateStr) {
|
||||
try {
|
||||
return LocalDateTime.parse(dateStr, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
} catch (DateTimeParseException e) {
|
||||
log.error(e.getMessage());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user