From 5dc3bb71575468ab77f2bdb001b923ea065a5cf3 Mon Sep 17 00:00:00 2001 From: backdev-1 Date: Thu, 14 May 2026 12:44:19 +0700 Subject: [PATCH] dev add field locale for get info for view doc --- .../ru/soune/nocopy/dto/docviewer/DocViewerRequest.java | 2 ++ .../java/ru/soune/nocopy/handler/DockViewFileHandler.java | 2 +- .../ru/soune/nocopy/service/dockview/DockViewService.java | 6 +++--- .../ru/soune/nocopy/service/geo/GeoCountryService.java | 8 ++++---- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main/java/ru/soune/nocopy/dto/docviewer/DocViewerRequest.java b/src/main/java/ru/soune/nocopy/dto/docviewer/DocViewerRequest.java index a90686e..3da93eb 100644 --- a/src/main/java/ru/soune/nocopy/dto/docviewer/DocViewerRequest.java +++ b/src/main/java/ru/soune/nocopy/dto/docviewer/DocViewerRequest.java @@ -34,4 +34,6 @@ public class DocViewerRequest { @JsonProperty("action") private String action; + @JsonProperty("locale") + private String locale; } diff --git a/src/main/java/ru/soune/nocopy/handler/DockViewFileHandler.java b/src/main/java/ru/soune/nocopy/handler/DockViewFileHandler.java index 00cb3d1..ccd5e5b 100644 --- a/src/main/java/ru/soune/nocopy/handler/DockViewFileHandler.java +++ b/src/main/java/ru/soune/nocopy/handler/DockViewFileHandler.java @@ -71,7 +71,7 @@ public class DockViewFileHandler implements RequestHandler { DockViewStatsResponse openLastHistory = dockViewService.getOpenLastHistory(docViewerRequest.getPage(), docViewerRequest.getSize(), docViewerRequest.getSortDirection(), docViewerRequest.getSortBy(), - fileIds); + fileIds, docViewerRequest.getLocale()); return new BaseResponse(request.getMsgId(), MessageCode.SUCCESS.getCode(), diff --git a/src/main/java/ru/soune/nocopy/service/dockview/DockViewService.java b/src/main/java/ru/soune/nocopy/service/dockview/DockViewService.java index 074aae2..9e55066 100644 --- a/src/main/java/ru/soune/nocopy/service/dockview/DockViewService.java +++ b/src/main/java/ru/soune/nocopy/service/dockview/DockViewService.java @@ -119,7 +119,7 @@ public class DockViewService { } public DockViewStatsResponse getOpenLastHistory(int page, int size, String sortDirection, String sortBy, - List fileIds) { + List fileIds, String locale) { if (sortDirection == null || sortDirection.isEmpty()) { sortDirection = "desc"; } @@ -148,8 +148,8 @@ public class DockViewService { List history = new ArrayList<>(); for (DockView dockView: dockViews) { - String country = geoCountryService.getCountryByIp(dockView.getViewerIp()); - String city = geoCountryService.getCityByIp(dockView.getViewerIp()); + String country = geoCountryService.getCountryByIp(dockView.getViewerIp(), locale); + String city = geoCountryService.getCityByIp(dockView.getViewerIp(), locale); LocalDateTime createdAt = dockView.getCreatedAt(); String fileId = dockView.getFileId(); diff --git a/src/main/java/ru/soune/nocopy/service/geo/GeoCountryService.java b/src/main/java/ru/soune/nocopy/service/geo/GeoCountryService.java index 843d2fe..1ada4bb 100644 --- a/src/main/java/ru/soune/nocopy/service/geo/GeoCountryService.java +++ b/src/main/java/ru/soune/nocopy/service/geo/GeoCountryService.java @@ -92,12 +92,12 @@ public class GeoCountryService { } } - public String getCityByIp(String ip) { + public String getCityByIp(String ip, String locale) { try { InetAddress ipAddress = InetAddress.getByName(ip); CityResponse response = cityDbReader.city(ipAddress); - return response.getCity().getNames().getOrDefault("ru", + return response.getCity().getNames().getOrDefault(locale, response.getCity().getName()); } catch (Exception e) { log.error("Failed to get city for IP: {}", ip, e); @@ -105,12 +105,12 @@ public class GeoCountryService { } } - public String getCountryByIp(String ip) { + public String getCountryByIp(String ip, String locale) { try { InetAddress ipAddress = InetAddress.getByName(ip); CountryResponse response = countryDbReader.country(ipAddress); - return response.getCountry().getNames().getOrDefault("ru", + return response.getCountry().getNames().getOrDefault(locale, response.getCountry().getName()); } catch (Exception e) { log.error("Failed to get country for IP: {}", ip, e);