@@ -137,7 +137,7 @@ public class ImageFoundRequestHandler implements RequestHandler {
|
||||
|
||||
int page = imageSearchRequest.getPage() != null ? imageSearchRequest.getPage() : 1;
|
||||
int pageSize = 5;
|
||||
boolean checkSimilar = imageSearchRequest.getCheckSimilarFirst() == null ? false:
|
||||
boolean checkSimilar = imageSearchRequest.getCheckSimilarFirst() == null ? true:
|
||||
imageSearchRequest.getCheckSimilarFirst();
|
||||
|
||||
if (checkSimilar && !allUniqueImages.isEmpty()) {
|
||||
@@ -149,12 +149,14 @@ public class ImageFoundRequestHandler implements RequestHandler {
|
||||
tempFile = fileUploadService.downloadImageFromUrl(url);
|
||||
String filePath = tempFile.toAbsolutePath().toString();
|
||||
|
||||
Map<String, Long> hash = imageHashService.calculateHash(Paths.get(filePath));
|
||||
Map<String, Long> hashSearchApiFile = imageHashService.calculateHash(Paths.get(filePath));
|
||||
|
||||
List<SimilarImageProjection> duplicates = fileSimilarityService.findDuplicatedByHash(hash.get("hi"),
|
||||
hash.get("low"));
|
||||
Map<String, Long> hashCheckFile = imageHashService.calculateHash(Paths.get(fileEntity.getFilePath()));
|
||||
|
||||
if (duplicates.isEmpty()) {
|
||||
boolean hashesAreEqual = hashSearchApiFile.get("hi").equals(hashCheckFile.get("hi"))
|
||||
&& hashSearchApiFile.get("low").equals(hashCheckFile.get("low"));
|
||||
|
||||
if (!hashesAreEqual) {
|
||||
return new BaseResponse(request.getMsgId(), MessageCode.SUCCESS.getCode(),
|
||||
"Not found similar pictures", new YandexSearchResponse());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user