dev add method link
Test Workflow / test (push) Has been cancelled

This commit is contained in:
2026-05-06 12:59:38 +07:00
parent 8b8db46c29
commit d23df37b45
@@ -1,6 +1,9 @@
package ru.soune.nocopy.handler; package ru.soune.nocopy.handler;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.vrt.NoCopyFileService;
import com.vrt.fileprotection.FileProtector;
import com.vrt.fileprotection.NoCopyCheckResult;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@@ -59,6 +62,8 @@ public class ImageFoundRequestHandler implements RequestHandler {
private final FileSimilarityService fileSimilarityService; private final FileSimilarityService fileSimilarityService;
private final NoCopyFileService noCopyFileService;
@Override @Override
public BaseResponse handle(BaseRequest request) throws Exception { public BaseResponse handle(BaseRequest request) throws Exception {
ImageSearchRequest imageSearchRequest = objectMapper.convertValue(request.getMessageBody(), ImageSearchRequest imageSearchRequest = objectMapper.convertValue(request.getMessageBody(),
@@ -144,7 +149,7 @@ public class ImageFoundRequestHandler implements RequestHandler {
int page = imageSearchRequest.getPage() != null ? imageSearchRequest.getPage() : 1; int page = imageSearchRequest.getPage() != null ? imageSearchRequest.getPage() : 1;
int pageSize = 5; int pageSize = 5;
boolean checkSimilar = imageSearchRequest.getCheckSimilarFirst() == null ? false: boolean checkSimilar = imageSearchRequest.getCheckSimilarFirst() != null &&
imageSearchRequest.getCheckSimilarFirst(); imageSearchRequest.getCheckSimilarFirst();
if (checkSimilar && !allUniqueImages.isEmpty()) { if (checkSimilar && !allUniqueImages.isEmpty()) {
@@ -154,31 +159,33 @@ public class ImageFoundRequestHandler implements RequestHandler {
try { try {
tempFile = convertToSupportedFormat(fileUploadService.downloadImageFromUrl(url)); tempFile = convertToSupportedFormat(fileUploadService.downloadImageFromUrl(url));
String filePath = tempFile.toAbsolutePath().toString(); // String filePath = tempFile.toAbsolutePath().toString();
NoCopyCheckResult checkResult = noCopyFileService.checkFile(tempFile.toFile(),
FileProtector.Type.IMAGE);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
log.info("checkResult: " + checkResult);
// Map<String, Long> hashSearchApiFile = imageHashService.calculateHash(Paths.get(filePath));
// ImageHashEntity checkFileHash = imageHashRepository.findByFileId(fileId);
Map<String, Long> hashSearchApiFile = imageHashService.calculateHash(Paths.get(filePath)); // boolean hashesAreEqual = hashSearchApiFile.get("hi").equals(checkFileHash.getHash64Hi())
// && hashSearchApiFile.get("low").equals(checkFileHash.getHash64Lo());
log.info("hashSearchApiFile: " + hashSearchApiFile); // if (!hashesAreEqual) {
log.info("hashSearchApiFile: " + hashSearchApiFile); // return new BaseResponse(request.getMsgId(), MessageCode.SUCCESS.getCode(),
log.info("hashSearchApiFile: " + hashSearchApiFile); // "Not found similar pictures", new YandexSearchResponse());
log.info("hashSearchApiFile: " + hashSearchApiFile); // }
ImageHashEntity checkFileHash = imageHashRepository.findByFileId(fileId);
log.info("checkFileHash hi: " + checkFileHash.getHash64Hi());
log.info("checkFileHash hi: " + checkFileHash.getHash64Hi());
log.info("checkFileHash hi: " + checkFileHash.getHash64Hi());
log.info("checkFileHash low: " + checkFileHash.getHash64Lo());
log.info("checkFileHash low: " + checkFileHash.getHash64Lo());
log.info("checkFileHash low: " + checkFileHash.getHash64Lo());
boolean hashesAreEqual = hashSearchApiFile.get("hi").equals(checkFileHash.getHash64Hi())
&& hashSearchApiFile.get("low").equals(checkFileHash.getHash64Lo());
if (!hashesAreEqual) {
return new BaseResponse(request.getMsgId(), MessageCode.SUCCESS.getCode(),
"Not found similar pictures", new YandexSearchResponse());
}
} finally { } finally {
if (tempFile != null) { if (tempFile != null) {
try { try {