From aa126120364ef7f4f83f3cf6ddbe91c332491b11 Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 21:48:14 +0200 Subject: [PATCH 1/6] remove buisnesslogic folder --- .../config/AmazonS3ClientConfig.java | 2 +- .../config/ElasticSearchConfig.java | 2 +- .../config/RedisConfig.java | 2 +- .../config/RestTemplateConfig.java | 2 +- .../controller/AdvertisementController.java | 6 ++--- .../controller/CategoryController.java | 2 +- .../routing/controller/CityController.java | 2 +- .../controller/ElasticSearchController.java | 6 ++--- .../FavouriteAdvertisementController.java | 2 +- .../routing/controller/FilterController.java | 2 +- .../LowLevelSubCategoryController.java | 2 +- .../routing/controller/RegionController.java | 5 ++--- .../TopLevelSubCategoryController.java | 8 +++---- .../routing/controller/UserController.java | 6 ++--- .../AdvertisementSearchParametersDto.java | 2 ++ .../mapper/AdvertisementDocumentMapper.java | 10 ++++----- .../mapper/AdvertisementFilterMapper.java | 3 +-- .../mapper/AdvertisementUserDtoBuilder.java | 2 +- .../mapper/helper/CategoryMappingHelper.java | 2 +- .../mapper/helper/CityMappingHelper.java | 2 +- .../mapper/helper/DeliveryMappingHelper.java | 2 +- .../mapper/helper/PhotoMappingHelper.java | 2 +- .../mapper/helper/UserMappingHelper.java | 2 +- .../everybuy/security/ValidationFilter.java | 2 +- .../AdvertisementCreationService.java | 4 ++-- .../AdvertisementManagementService.java | 8 +++---- .../AdvertisementStorageService.java | 4 ++-- .../AdvertisementUpdateService.java | 4 ++-- .../AdvertisementValidationService.java | 9 +------- .../advertisement/DeliveryService.java | 6 ++--- .../FavouriteAdvertisementService.java | 4 ++-- .../advertisement/StatisticsService.java | 2 +- .../delivery/DeliveryMethod.java | 2 +- .../delivery/DeliveryMethodFactory.java | 2 +- .../advertisement}/delivery/MeestExpress.java | 2 +- .../advertisement}/delivery/NovaPost.java | 2 +- .../delivery/OtherDeliveryMethod.java | 2 +- .../advertisement}/delivery/UkrPost.java | 2 +- .../filter/FilterAdvertisementService.java | 22 +++---------------- .../filter/FilterPriceRangeService.java | 8 +++---- .../advertisement/filter/FilterValidator.java | 12 +++++----- .../sort/DateAscendingSortStrategy.java | 2 +- .../sort/DateDescendingSortStrategy.java | 2 +- .../filter}/sort/DefaultSortStrategy.java | 2 +- .../sort/PriceAscendingSortStrategy.java | 2 +- .../sort/PriceDescendingSortStrategy.java | 2 +- .../filter}/sort/SortStrategy.java | 2 +- .../filter}/sort/SortStrategyFactory.java | 2 +- ...lasticSearchAdvertisementIndexService.java | 2 +- ...asticSearchPriceAggregationExtractor.java} | 4 ++-- .../search/ElasticSearchQueryBuilder.java | 5 +++-- .../search/ElasticSearchService.java | 13 +++++------ .../advertisement/search/QueryBuilder.java | 2 +- .../advertisement/search/SearchService.java} | 4 ++-- .../advertisement/search/SortBuilder.java | 2 +- ...SearchCategoryAggregationQueryBuilder.java | 6 ++--- .../ElasticSearchCategoryService.java | 7 +++--- .../search/category/QueryBuilder.java | 9 ++++++++ .../category/SearchCategoryService.java | 10 +++++++++ .../search/filters/CategoryFilter.java | 2 +- .../search/filters/CityFilter.java | 2 +- .../search/filters/EnabledFilter.java | 2 +- .../search/filters/KeywordFilter.java | 2 +- .../search/filters/LowSubCategoryFilter.java | 2 +- .../search/filters/PriceFilter.java | 2 +- .../search/filters/ProductTypeFilter.java | 2 +- .../search/filters/RegionFilter.java | 2 +- .../search/filters/SearchFilter.java | 2 +- .../search/filters/SectionFilter.java | 2 +- .../search/filters/TopSubCategoryFilter.java | 2 +- .../FilterAdvertisementCategoryProcessor.java | 7 +++--- .../FilterAdvertisementProcessor.java | 22 +++++++++---------- .../AdvertisementUserDeletionService.java | 6 ++--- .../user/AdvertisementUserProfileService.java | 6 ++--- .../AdvertisementUserStatisticService.java | 6 ++--- .../AdvertisementSubCategoryService.java | 2 +- .../service/category/CategoryService.java | 2 +- .../category/LowLevelSubCategoryService.java | 2 +- .../category/TopLevelSubCategoryService.java | 2 +- .../integration/AuthValidationService.java | 2 +- .../service/integration/ChatService.java | 2 +- .../service/integration/ExchangeService.java | 2 +- .../integration/UserProfileService.java | 2 +- .../service/integration/WakeUpService.java | 2 +- .../service/location/CityService.java | 2 +- .../service/location/RegionService.java | 2 +- .../service/photo/AmazonS3Service.java | 2 +- .../service/photo/PhotoService.java | 2 +- 88 files changed, 169 insertions(+), 177 deletions(-) rename src/main/java/ua/everybuy/{buisnesslogic => }/config/AmazonS3ClientConfig.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/config/ElasticSearchConfig.java (97%) rename src/main/java/ua/everybuy/{buisnesslogic => }/config/RedisConfig.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic => }/config/RestTemplateConfig.java (93%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/AdvertisementCreationService.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/AdvertisementManagementService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/AdvertisementStorageService.java (93%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/AdvertisementUpdateService.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/AdvertisementValidationService.java (74%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/DeliveryService.java (92%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/FavouriteAdvertisementService.java (97%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/StatisticsService.java (94%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/DeliveryMethod.java (69%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/DeliveryMethodFactory.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/MeestExpress.java (72%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/NovaPost.java (71%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/OtherDeliveryMethod.java (72%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement}/delivery/UkrPost.java (70%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/filter/FilterAdvertisementService.java (77%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/filter/FilterPriceRangeService.java (85%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/filter/FilterValidator.java (79%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/DateAscendingSortStrategy.java (80%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/DateDescendingSortStrategy.java (80%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/DefaultSortStrategy.java (77%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/PriceAscendingSortStrategy.java (80%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/PriceDescendingSortStrategy.java (80%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/SortStrategy.java (65%) rename src/main/java/ua/everybuy/{buisnesslogic/strategy => service/advertisement/filter}/sort/SortStrategyFactory.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/ElasticSearchAdvertisementIndexService.java (96%) rename src/main/java/ua/everybuy/{buisnesslogic/service/advertisement/search/PriceAggregationExtractor.java => service/advertisement/search/ElasticSearchPriceAggregationExtractor.java} (91%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/ElasticSearchQueryBuilder.java (90%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/ElasticSearchService.java (84%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/QueryBuilder.java (80%) rename src/main/java/ua/everybuy/{buisnesslogic/service/advertisement/search/AdvertisementSearchService.java => service/advertisement/search/SearchService.java} (70%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/SortBuilder.java (94%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java (88%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/category/ElasticSearchCategoryService.java (95%) create mode 100644 src/main/java/ua/everybuy/service/advertisement/search/category/QueryBuilder.java create mode 100644 src/main/java/ua/everybuy/service/advertisement/search/category/SearchCategoryService.java rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/CategoryFilter.java (85%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/CityFilter.java (85%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/EnabledFilter.java (84%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/KeywordFilter.java (90%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/LowSubCategoryFilter.java (86%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/PriceFilter.java (91%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/ProductTypeFilter.java (88%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/RegionFilter.java (85%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/SearchFilter.java (66%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/SectionFilter.java (89%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/search/filters/TopSubCategoryFilter.java (86%) rename src/main/java/ua/everybuy/{buisnesslogic/service/advertisement/search/filters/processor => service/advertisement/search/filters/processors}/FilterAdvertisementCategoryProcessor.java (66%) rename src/main/java/ua/everybuy/{buisnesslogic/service/advertisement/search/filters/processor => service/advertisement/search/filters/processors}/FilterAdvertisementProcessor.java (62%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/user/AdvertisementUserDeletionService.java (87%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/user/AdvertisementUserProfileService.java (94%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/advertisement/user/AdvertisementUserStatisticService.java (90%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/category/AdvertisementSubCategoryService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/category/CategoryService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/category/LowLevelSubCategoryService.java (98%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/category/TopLevelSubCategoryService.java (98%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/integration/AuthValidationService.java (93%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/integration/ChatService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/integration/ExchangeService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/integration/UserProfileService.java (95%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/integration/WakeUpService.java (94%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/location/CityService.java (97%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/location/RegionService.java (94%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/photo/AmazonS3Service.java (97%) rename src/main/java/ua/everybuy/{buisnesslogic => }/service/photo/PhotoService.java (98%) diff --git a/src/main/java/ua/everybuy/buisnesslogic/config/AmazonS3ClientConfig.java b/src/main/java/ua/everybuy/config/AmazonS3ClientConfig.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/config/AmazonS3ClientConfig.java rename to src/main/java/ua/everybuy/config/AmazonS3ClientConfig.java index 90cfb53..080f93d 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/config/AmazonS3ClientConfig.java +++ b/src/main/java/ua/everybuy/config/AmazonS3ClientConfig.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.config; +package ua.everybuy.config; import com.amazonaws.auth.AWSStaticCredentialsProvider; import com.amazonaws.auth.BasicAWSCredentials; diff --git a/src/main/java/ua/everybuy/buisnesslogic/config/ElasticSearchConfig.java b/src/main/java/ua/everybuy/config/ElasticSearchConfig.java similarity index 97% rename from src/main/java/ua/everybuy/buisnesslogic/config/ElasticSearchConfig.java rename to src/main/java/ua/everybuy/config/ElasticSearchConfig.java index 3d0b137..649c429 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/config/ElasticSearchConfig.java +++ b/src/main/java/ua/everybuy/config/ElasticSearchConfig.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.config; +package ua.everybuy.config; import org.apache.http.HttpHost; import org.apache.http.auth.AuthScope; diff --git a/src/main/java/ua/everybuy/buisnesslogic/config/RedisConfig.java b/src/main/java/ua/everybuy/config/RedisConfig.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/config/RedisConfig.java rename to src/main/java/ua/everybuy/config/RedisConfig.java index c9a4275..5afe31a 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/config/RedisConfig.java +++ b/src/main/java/ua/everybuy/config/RedisConfig.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.config; +package ua.everybuy.config; import org.springframework.cache.annotation.EnableCaching; import org.springframework.context.annotation.Bean; diff --git a/src/main/java/ua/everybuy/buisnesslogic/config/RestTemplateConfig.java b/src/main/java/ua/everybuy/config/RestTemplateConfig.java similarity index 93% rename from src/main/java/ua/everybuy/buisnesslogic/config/RestTemplateConfig.java rename to src/main/java/ua/everybuy/config/RestTemplateConfig.java index a97ed35..e769255 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/config/RestTemplateConfig.java +++ b/src/main/java/ua/everybuy/config/RestTemplateConfig.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.config; +package ua.everybuy.config; import org.springframework.boot.web.client.RestTemplateBuilder; import org.springframework.context.annotation.Bean; diff --git a/src/main/java/ua/everybuy/routing/controller/AdvertisementController.java b/src/main/java/ua/everybuy/routing/controller/AdvertisementController.java index c2e01f1..21e2e89 100644 --- a/src/main/java/ua/everybuy/routing/controller/AdvertisementController.java +++ b/src/main/java/ua/everybuy/routing/controller/AdvertisementController.java @@ -6,9 +6,9 @@ import org.springframework.lang.Nullable; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import ua.everybuy.buisnesslogic.service.advertisement.AdvertisementCreationService; -import ua.everybuy.buisnesslogic.service.advertisement.AdvertisementManagementService; -import ua.everybuy.buisnesslogic.service.advertisement.AdvertisementUpdateService; +import ua.everybuy.service.advertisement.AdvertisementCreationService; +import ua.everybuy.service.advertisement.AdvertisementManagementService; +import ua.everybuy.service.advertisement.AdvertisementUpdateService; import ua.everybuy.routing.dto.AdvertisementDto; import ua.everybuy.routing.dto.request.UpdateAdvertisementRequest; import ua.everybuy.routing.dto.response.*; diff --git a/src/main/java/ua/everybuy/routing/controller/CategoryController.java b/src/main/java/ua/everybuy/routing/controller/CategoryController.java index 624788e..1e1d0ad 100644 --- a/src/main/java/ua/everybuy/routing/controller/CategoryController.java +++ b/src/main/java/ua/everybuy/routing/controller/CategoryController.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.category.CategoryService; +import ua.everybuy.service.category.CategoryService; import ua.everybuy.database.entity.Category; import java.util.List; diff --git a/src/main/java/ua/everybuy/routing/controller/CityController.java b/src/main/java/ua/everybuy/routing/controller/CityController.java index 281c022..0cb7459 100644 --- a/src/main/java/ua/everybuy/routing/controller/CityController.java +++ b/src/main/java/ua/everybuy/routing/controller/CityController.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.location.CityService; +import ua.everybuy.service.location.CityService; import ua.everybuy.database.entity.City; import ua.everybuy.routing.dto.response.StatusResponse; import java.util.List; diff --git a/src/main/java/ua/everybuy/routing/controller/ElasticSearchController.java b/src/main/java/ua/everybuy/routing/controller/ElasticSearchController.java index 264e737..0ebc680 100644 --- a/src/main/java/ua/everybuy/routing/controller/ElasticSearchController.java +++ b/src/main/java/ua/everybuy/routing/controller/ElasticSearchController.java @@ -6,15 +6,15 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import ua.everybuy.buisnesslogic.service.advertisement.search.AdvertisementSearchService; import ua.everybuy.routing.dto.AdvertisementSearchResultDto; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; +import ua.everybuy.service.advertisement.search.SearchService; @RestController @RequiredArgsConstructor @RequestMapping("/product/search") public class ElasticSearchController { - private final AdvertisementSearchService elasticSearchService; + private final SearchService searchService; @GetMapping() public AdvertisementSearchResultDto advancedSearchPost( @@ -22,7 +22,7 @@ public AdvertisementSearchResultDto advancedSearchPost( @RequestParam(defaultValue = "1") int page, @RequestParam(defaultValue = "20") int size) { System.out.println(searchParams); - return elasticSearchService.searchAdvertisements(searchParams, page,size); + return searchService.searchAdvertisements(searchParams, page,size); } } diff --git a/src/main/java/ua/everybuy/routing/controller/FavouriteAdvertisementController.java b/src/main/java/ua/everybuy/routing/controller/FavouriteAdvertisementController.java index fc2d5df..bbf4fef 100644 --- a/src/main/java/ua/everybuy/routing/controller/FavouriteAdvertisementController.java +++ b/src/main/java/ua/everybuy/routing/controller/FavouriteAdvertisementController.java @@ -4,7 +4,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.advertisement.FavouriteAdvertisementService; +import ua.everybuy.service.advertisement.FavouriteAdvertisementService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.dto.response.AddToFavouriteResponse; import ua.everybuy.routing.dto.response.FavouriteAdvertisementResponse; diff --git a/src/main/java/ua/everybuy/routing/controller/FilterController.java b/src/main/java/ua/everybuy/routing/controller/FilterController.java index f5b3251..141249c 100644 --- a/src/main/java/ua/everybuy/routing/controller/FilterController.java +++ b/src/main/java/ua/everybuy/routing/controller/FilterController.java @@ -6,7 +6,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; -import ua.everybuy.buisnesslogic.service.advertisement.filter.FilterAdvertisementService; +import ua.everybuy.service.advertisement.filter.FilterAdvertisementService; import org.springframework.web.bind.annotation.RestController; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; import ua.everybuy.routing.dto.AdvertisementSearchResultDto; diff --git a/src/main/java/ua/everybuy/routing/controller/LowLevelSubCategoryController.java b/src/main/java/ua/everybuy/routing/controller/LowLevelSubCategoryController.java index a703ecf..d8903de 100644 --- a/src/main/java/ua/everybuy/routing/controller/LowLevelSubCategoryController.java +++ b/src/main/java/ua/everybuy/routing/controller/LowLevelSubCategoryController.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.category.LowLevelSubCategoryService; +import ua.everybuy.service.category.LowLevelSubCategoryService; import ua.everybuy.routing.dto.SubCategoryDto; import java.util.List; diff --git a/src/main/java/ua/everybuy/routing/controller/RegionController.java b/src/main/java/ua/everybuy/routing/controller/RegionController.java index 82ccc20..11ae00c 100644 --- a/src/main/java/ua/everybuy/routing/controller/RegionController.java +++ b/src/main/java/ua/everybuy/routing/controller/RegionController.java @@ -5,11 +5,10 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseStatus; import org.springframework.web.bind.annotation.RestController; -import ua.everybuy.buisnesslogic.service.location.CityService; -import ua.everybuy.buisnesslogic.service.location.RegionService; +import ua.everybuy.service.location.CityService; +import ua.everybuy.service.location.RegionService; import ua.everybuy.database.entity.City; import ua.everybuy.database.entity.Region; diff --git a/src/main/java/ua/everybuy/routing/controller/TopLevelSubCategoryController.java b/src/main/java/ua/everybuy/routing/controller/TopLevelSubCategoryController.java index 5da2c90..26f044b 100644 --- a/src/main/java/ua/everybuy/routing/controller/TopLevelSubCategoryController.java +++ b/src/main/java/ua/everybuy/routing/controller/TopLevelSubCategoryController.java @@ -3,8 +3,8 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.advertisement.search.category.ElasticSearchCategoryService; -import ua.everybuy.buisnesslogic.service.category.TopLevelSubCategoryService; +import ua.everybuy.service.advertisement.search.category.SearchCategoryService; +import ua.everybuy.service.category.TopLevelSubCategoryService; import ua.everybuy.routing.dto.SubCategoryDto; import ua.everybuy.routing.dto.TopCategorySearchResultDto; @@ -16,7 +16,7 @@ @RequestMapping("/product/category") public class TopLevelSubCategoryController { private final TopLevelSubCategoryService topLevelSubCategoryService; - private final ElasticSearchCategoryService elasticSearchCategoryService; + private final SearchCategoryService searchCategoryService; @GetMapping("/{categoryId}/top-level-subcategories") @ResponseStatus(HttpStatus.OK) @@ -29,6 +29,6 @@ public List getTopLevelSubCategoriesByCategoryId(@PathVariable L @ResponseStatus(HttpStatus.OK) public Map >getUniqueCategories( @RequestParam("keyword") String keyword) { - return elasticSearchCategoryService.findTopCategoriesByKeyword(keyword); + return searchCategoryService.findTopCategoriesByKeyword(keyword); } } diff --git a/src/main/java/ua/everybuy/routing/controller/UserController.java b/src/main/java/ua/everybuy/routing/controller/UserController.java index 4a1810e..068b0c5 100644 --- a/src/main/java/ua/everybuy/routing/controller/UserController.java +++ b/src/main/java/ua/everybuy/routing/controller/UserController.java @@ -5,9 +5,9 @@ import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; -import ua.everybuy.buisnesslogic.service.advertisement.user.AdvertisementUserDeletionService; -import ua.everybuy.buisnesslogic.service.advertisement.user.AdvertisementUserProfileService; -import ua.everybuy.buisnesslogic.service.advertisement.user.AdvertisementUserStatisticService; +import ua.everybuy.service.advertisement.user.AdvertisementUserDeletionService; +import ua.everybuy.service.advertisement.user.AdvertisementUserProfileService; +import ua.everybuy.service.advertisement.user.AdvertisementUserStatisticService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.dto.UserAdvertisementDto; import ua.everybuy.routing.dto.response.AdvertisementWithStatisticResponse; diff --git a/src/main/java/ua/everybuy/routing/dto/request/AdvertisementSearchParametersDto.java b/src/main/java/ua/everybuy/routing/dto/request/AdvertisementSearchParametersDto.java index b7d4299..2230860 100644 --- a/src/main/java/ua/everybuy/routing/dto/request/AdvertisementSearchParametersDto.java +++ b/src/main/java/ua/everybuy/routing/dto/request/AdvertisementSearchParametersDto.java @@ -5,12 +5,14 @@ import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; +import lombok.ToString; import ua.everybuy.database.entity.Advertisement; @Getter @Setter @AllArgsConstructor @NoArgsConstructor +@ToString public class AdvertisementSearchParametersDto { @Min(0) private Double minPrice; diff --git a/src/main/java/ua/everybuy/routing/mapper/AdvertisementDocumentMapper.java b/src/main/java/ua/everybuy/routing/mapper/AdvertisementDocumentMapper.java index dd16ff5..58ac803 100644 --- a/src/main/java/ua/everybuy/routing/mapper/AdvertisementDocumentMapper.java +++ b/src/main/java/ua/everybuy/routing/mapper/AdvertisementDocumentMapper.java @@ -2,11 +2,10 @@ import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.category.AdvertisementSubCategoryService; -import ua.everybuy.buisnesslogic.service.category.CategoryService; -import ua.everybuy.buisnesslogic.service.category.LowLevelSubCategoryService; -import ua.everybuy.buisnesslogic.service.category.TopLevelSubCategoryService; -import ua.everybuy.buisnesslogic.service.location.CityService; +import ua.everybuy.service.category.CategoryService; +import ua.everybuy.service.category.LowLevelSubCategoryService; +import ua.everybuy.service.category.TopLevelSubCategoryService; +import ua.everybuy.service.location.CityService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementDocument; import ua.everybuy.database.entity.Category; @@ -21,7 +20,6 @@ @Component @RequiredArgsConstructor public class AdvertisementDocumentMapper { - private final AdvertisementSubCategoryService subCategoryService; private final CategoryService categoryService; private final CityService cityService; private final TopLevelSubCategoryService topLevelSubCategoryService; diff --git a/src/main/java/ua/everybuy/routing/mapper/AdvertisementFilterMapper.java b/src/main/java/ua/everybuy/routing/mapper/AdvertisementFilterMapper.java index eb8311a..1b5a743 100644 --- a/src/main/java/ua/everybuy/routing/mapper/AdvertisementFilterMapper.java +++ b/src/main/java/ua/everybuy/routing/mapper/AdvertisementFilterMapper.java @@ -4,7 +4,6 @@ import org.mapstruct.Mapping; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.dto.AdvertisementSearchResultDto; -import ua.everybuy.routing.dto.CategoryDto; import ua.everybuy.routing.mapper.helper.CityMappingHelper; import ua.everybuy.routing.mapper.helper.DescriptionHelper; import ua.everybuy.routing.dto.response.FilteredAdvertisementsResponse; @@ -18,6 +17,7 @@ }) public interface AdvertisementFilterMapper { + @Mapping(source = "advertisement.id", target = "advertisementId") @Mapping(source = "advertisement.description", target = "description", qualifiedByName = "truncateDescription") @Mapping(source = "advertisement.topSubCategory", target = "topSubCategory", qualifiedByName = "mapToSubCategoryDto") @@ -27,6 +27,5 @@ public interface AdvertisementFilterMapper { AdvertisementSearchResultDto mapToAdvertisementPaginationDto(long totalAdvertisements, int totalPages, Double minPrice, Double maxPrice, -// List categories, List advertisements); } diff --git a/src/main/java/ua/everybuy/routing/mapper/AdvertisementUserDtoBuilder.java b/src/main/java/ua/everybuy/routing/mapper/AdvertisementUserDtoBuilder.java index 5ee42d6..67092cc 100644 --- a/src/main/java/ua/everybuy/routing/mapper/AdvertisementUserDtoBuilder.java +++ b/src/main/java/ua/everybuy/routing/mapper/AdvertisementUserDtoBuilder.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.integration.UserProfileService; +import ua.everybuy.service.integration.UserProfileService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.dto.CategoryAdvertisementCount; import ua.everybuy.routing.dto.CategoryAdvertisementCountDto; diff --git a/src/main/java/ua/everybuy/routing/mapper/helper/CategoryMappingHelper.java b/src/main/java/ua/everybuy/routing/mapper/helper/CategoryMappingHelper.java index 874a7df..3b0739a 100644 --- a/src/main/java/ua/everybuy/routing/mapper/helper/CategoryMappingHelper.java +++ b/src/main/java/ua/everybuy/routing/mapper/helper/CategoryMappingHelper.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.mapstruct.Named; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.category.AdvertisementSubCategoryService; +import ua.everybuy.service.category.AdvertisementSubCategoryService; import ua.everybuy.database.entity.LowLevelSubCategory; import ua.everybuy.database.entity.TopLevelSubCategory; import ua.everybuy.routing.dto.request.CategoryRequest; diff --git a/src/main/java/ua/everybuy/routing/mapper/helper/CityMappingHelper.java b/src/main/java/ua/everybuy/routing/mapper/helper/CityMappingHelper.java index c18fde9..db4212a 100644 --- a/src/main/java/ua/everybuy/routing/mapper/helper/CityMappingHelper.java +++ b/src/main/java/ua/everybuy/routing/mapper/helper/CityMappingHelper.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.mapstruct.Named; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.location.CityService; +import ua.everybuy.service.location.CityService; import ua.everybuy.database.entity.City; @Component diff --git a/src/main/java/ua/everybuy/routing/mapper/helper/DeliveryMappingHelper.java b/src/main/java/ua/everybuy/routing/mapper/helper/DeliveryMappingHelper.java index 1b7b833..f878680 100644 --- a/src/main/java/ua/everybuy/routing/mapper/helper/DeliveryMappingHelper.java +++ b/src/main/java/ua/everybuy/routing/mapper/helper/DeliveryMappingHelper.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.mapstruct.Named; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.advertisement.DeliveryService; +import ua.everybuy.service.advertisement.DeliveryService; import ua.everybuy.database.entity.Advertisement; import java.util.Set; diff --git a/src/main/java/ua/everybuy/routing/mapper/helper/PhotoMappingHelper.java b/src/main/java/ua/everybuy/routing/mapper/helper/PhotoMappingHelper.java index c763b49..c1e5545 100644 --- a/src/main/java/ua/everybuy/routing/mapper/helper/PhotoMappingHelper.java +++ b/src/main/java/ua/everybuy/routing/mapper/helper/PhotoMappingHelper.java @@ -2,7 +2,7 @@ import lombok.RequiredArgsConstructor; import org.mapstruct.Named; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.photo.PhotoService; +import ua.everybuy.service.photo.PhotoService; import ua.everybuy.database.entity.Advertisement; import java.util.List; diff --git a/src/main/java/ua/everybuy/routing/mapper/helper/UserMappingHelper.java b/src/main/java/ua/everybuy/routing/mapper/helper/UserMappingHelper.java index f5ac498..ec7aa0d 100644 --- a/src/main/java/ua/everybuy/routing/mapper/helper/UserMappingHelper.java +++ b/src/main/java/ua/everybuy/routing/mapper/helper/UserMappingHelper.java @@ -3,7 +3,7 @@ import lombok.RequiredArgsConstructor; import org.mapstruct.Named; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.integration.UserProfileService; +import ua.everybuy.service.integration.UserProfileService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.dto.ShortUserInfoDto; diff --git a/src/main/java/ua/everybuy/security/ValidationFilter.java b/src/main/java/ua/everybuy/security/ValidationFilter.java index fb1d593..1b35443 100644 --- a/src/main/java/ua/everybuy/security/ValidationFilter.java +++ b/src/main/java/ua/everybuy/security/ValidationFilter.java @@ -7,7 +7,7 @@ import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.web.authentication.WebAuthenticationDetailsSource; import org.springframework.web.client.HttpStatusCodeException; -import ua.everybuy.buisnesslogic.service.integration.AuthValidationService; +import ua.everybuy.service.integration.AuthValidationService; import ua.everybuy.errorhandling.ErrorResponse; import com.fasterxml.jackson.databind.ObjectMapper; import jakarta.servlet.FilterChain; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementCreationService.java b/src/main/java/ua/everybuy/service/advertisement/AdvertisementCreationService.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementCreationService.java rename to src/main/java/ua/everybuy/service/advertisement/AdvertisementCreationService.java index 183b11e..fd06fa3 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementCreationService.java +++ b/src/main/java/ua/everybuy/service/advertisement/AdvertisementCreationService.java @@ -1,11 +1,11 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; -import ua.everybuy.buisnesslogic.service.photo.PhotoService; +import ua.everybuy.service.photo.PhotoService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementPhoto; import ua.everybuy.database.entity.AdvertisementStatistics; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementManagementService.java b/src/main/java/ua/everybuy/service/advertisement/AdvertisementManagementService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementManagementService.java rename to src/main/java/ua/everybuy/service/advertisement/AdvertisementManagementService.java index 5d690b4..b80d587 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementManagementService.java +++ b/src/main/java/ua/everybuy/service/advertisement/AdvertisementManagementService.java @@ -1,11 +1,11 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.integration.ChatService; -import ua.everybuy.buisnesslogic.service.photo.PhotoService; +import ua.everybuy.service.integration.ChatService; +import ua.everybuy.service.photo.PhotoService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementPhoto; import ua.everybuy.routing.dto.AdvertisementDto; @@ -72,7 +72,7 @@ public void deleteAdvertisement(Long advertisementId, Principal principal) throw Long.parseLong(principal.getName())); photoService.deletePhotosByAdvertisementId(advertisement); advertisement.setIsEnabled(false); - pushAdvertisementChangeToChatService(advertisement); +// pushAdvertisementChangeToChatService(advertisement); advertisementStorageService.delete(advertisement); } diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementStorageService.java b/src/main/java/ua/everybuy/service/advertisement/AdvertisementStorageService.java similarity index 93% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementStorageService.java rename to src/main/java/ua/everybuy/service/advertisement/AdvertisementStorageService.java index 98dbe97..63e9227 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementStorageService.java +++ b/src/main/java/ua/everybuy/service/advertisement/AdvertisementStorageService.java @@ -1,10 +1,10 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.advertisement.search.ElasticSearchAdvertisementIndexService; +import ua.everybuy.service.advertisement.search.ElasticSearchAdvertisementIndexService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.repository.advertisement.AdvertisementRepository; import ua.everybuy.errorhandling.message.AdvertisementValidationMessages; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementUpdateService.java b/src/main/java/ua/everybuy/service/advertisement/AdvertisementUpdateService.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementUpdateService.java rename to src/main/java/ua/everybuy/service/advertisement/AdvertisementUpdateService.java index 09f7708..8f59227 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementUpdateService.java +++ b/src/main/java/ua/everybuy/service/advertisement/AdvertisementUpdateService.java @@ -1,11 +1,11 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; -import ua.everybuy.buisnesslogic.service.photo.PhotoService; +import ua.everybuy.service.photo.PhotoService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementPhoto; import ua.everybuy.routing.mapper.AdvertisementResponseMapper; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementValidationService.java b/src/main/java/ua/everybuy/service/advertisement/AdvertisementValidationService.java similarity index 74% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementValidationService.java rename to src/main/java/ua/everybuy/service/advertisement/AdvertisementValidationService.java index b5d9b61..c0d5b8e 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/AdvertisementValidationService.java +++ b/src/main/java/ua/everybuy/service/advertisement/AdvertisementValidationService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import org.springframework.security.access.AccessDeniedException; import org.springframework.stereotype.Service; @@ -14,13 +14,6 @@ public void validate(Advertisement advertisement) { } } - public void validateIsActive(Advertisement advertisement) { - if (!advertisement.getIsEnabled()) { - throw new AccessDeniedException(AdvertisementValidationMessages - .INACTIVE_ADVERTISEMENT_MESSAGE); - } - } - public void validateUserAccess(Advertisement advertisement, Long userId) { if (!advertisement.getUserId().equals(userId)) { throw new AccessDeniedException(String.format( diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/DeliveryService.java b/src/main/java/ua/everybuy/service/advertisement/DeliveryService.java similarity index 92% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/DeliveryService.java rename to src/main/java/ua/everybuy/service/advertisement/DeliveryService.java index ef05653..4b344ea 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/DeliveryService.java +++ b/src/main/java/ua/everybuy/service/advertisement/DeliveryService.java @@ -1,10 +1,10 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import ua.everybuy.buisnesslogic.strategy.delivery.DeliveryMethod; -import ua.everybuy.buisnesslogic.strategy.delivery.DeliveryMethodFactory; +import ua.everybuy.service.advertisement.delivery.DeliveryMethod; +import ua.everybuy.service.advertisement.delivery.DeliveryMethodFactory; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementDelivery; import ua.everybuy.database.repository.advertisement.AdvertisementDeliveryRepository; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/FavouriteAdvertisementService.java b/src/main/java/ua/everybuy/service/advertisement/FavouriteAdvertisementService.java similarity index 97% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/FavouriteAdvertisementService.java rename to src/main/java/ua/everybuy/service/advertisement/FavouriteAdvertisementService.java index 86309a0..763bf2a 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/FavouriteAdvertisementService.java +++ b/src/main/java/ua/everybuy/service/advertisement/FavouriteAdvertisementService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import jakarta.persistence.EntityNotFoundException; import jakarta.transaction.Transactional; @@ -10,7 +10,7 @@ import org.springframework.data.jpa.domain.Specification; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.category.CategoryService; +import ua.everybuy.service.category.CategoryService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.FavouriteAdvertisement; import ua.everybuy.database.repository.advertisement.FavouriteAdvertisementRepository; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/StatisticsService.java b/src/main/java/ua/everybuy/service/advertisement/StatisticsService.java similarity index 94% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/StatisticsService.java rename to src/main/java/ua/everybuy/service/advertisement/StatisticsService.java index 8693c5f..74e4cac 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/StatisticsService.java +++ b/src/main/java/ua/everybuy/service/advertisement/StatisticsService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement; +package ua.everybuy.service.advertisement; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethod.java b/src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethod.java similarity index 69% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethod.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethod.java index 84469c3..61f52fa 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethod.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethod.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; import org.springframework.stereotype.Component; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethodFactory.java b/src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethodFactory.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethodFactory.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethodFactory.java index 764701b..6a6a17b 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/DeliveryMethodFactory.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/DeliveryMethodFactory.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; import jakarta.annotation.PostConstruct; import org.springframework.stereotype.Service; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/MeestExpress.java b/src/main/java/ua/everybuy/service/advertisement/delivery/MeestExpress.java similarity index 72% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/MeestExpress.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/MeestExpress.java index fd4e4b5..76e39c1 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/MeestExpress.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/MeestExpress.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; public class MeestExpress implements DeliveryMethod { @Override diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/NovaPost.java b/src/main/java/ua/everybuy/service/advertisement/delivery/NovaPost.java similarity index 71% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/NovaPost.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/NovaPost.java index 1d72d3b..c77faa4 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/NovaPost.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/NovaPost.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; public class NovaPost implements DeliveryMethod { @Override diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/OtherDeliveryMethod.java b/src/main/java/ua/everybuy/service/advertisement/delivery/OtherDeliveryMethod.java similarity index 72% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/OtherDeliveryMethod.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/OtherDeliveryMethod.java index 29ba4d7..b0f6ee3 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/OtherDeliveryMethod.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/OtherDeliveryMethod.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; public class OtherDeliveryMethod implements DeliveryMethod { @Override diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/UkrPost.java b/src/main/java/ua/everybuy/service/advertisement/delivery/UkrPost.java similarity index 70% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/UkrPost.java rename to src/main/java/ua/everybuy/service/advertisement/delivery/UkrPost.java index c2853a9..036973b 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/delivery/UkrPost.java +++ b/src/main/java/ua/everybuy/service/advertisement/delivery/UkrPost.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.delivery; +package ua.everybuy.service.advertisement.delivery; public class UkrPost implements DeliveryMethod { @Override diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterAdvertisementService.java b/src/main/java/ua/everybuy/service/advertisement/filter/FilterAdvertisementService.java similarity index 77% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterAdvertisementService.java rename to src/main/java/ua/everybuy/service/advertisement/filter/FilterAdvertisementService.java index 592836a..4e0e266 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterAdvertisementService.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/FilterAdvertisementService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.filter; +package ua.everybuy.service.advertisement.filter; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; @@ -7,12 +7,11 @@ import org.springframework.data.domain.Sort; import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory; +import ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.repository.advertisement.AdvertisementRepository; import ua.everybuy.database.repository.advertisement.spec.factory.AdvertisementDistinctTopCategorySpecificationFactory; import ua.everybuy.database.repository.advertisement.spec.factory.AdvertisementSearchSpecificationFactory; -import ua.everybuy.routing.dto.CategoryDto; import ua.everybuy.routing.dto.PriceRangeDto; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; import ua.everybuy.routing.dto.response.FilteredAdvertisementsResponse; @@ -22,7 +21,7 @@ import java.util.List; import java.util.stream.Collectors; -import static ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory.*; +import static ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory.DATE_DESCENDING; @Service @RequiredArgsConstructor @@ -47,7 +46,6 @@ public AdvertisementSearchResultDto getFilteredAdvertisements(AdvertisementSearc PriceRangeDto priceRange = filterPriceRangeService.getPriceRange(searchParametersDto); List advertisements = mapToResponse(filteredAds); -// List distinctTopCategories = getDistinctTopCategories(searchParametersDto.getKeyword()); return advertisementFilterMapper.mapToAdvertisementPaginationDto(totalAdvertisements, totalPages, priceRange.getMinPrice(), priceRange.getMaxPrice(), advertisements); @@ -77,18 +75,4 @@ private Sort buildSort(String sortOrder) { return priceSort.and(dateSort); } - private List getDistinctTopCategories(String keyword) { - Specification spec = distinctTopCategorySpecFactory.createSpecification(keyword); - advertisementRepository.findAll(spec) - .stream() - .map(a-> a.getTopSubCategory().getCategory()) - .map(subCategoryMapper::mapToCategoryDto) - .toList() - .forEach(c -> System.out.println(c.getCategoryName())); - return advertisementRepository.findAll(spec) - .stream() - .map(a-> a.getTopSubCategory().getCategory()) - .map(subCategoryMapper::mapToCategoryDto) - .toList(); - } } diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterPriceRangeService.java b/src/main/java/ua/everybuy/service/advertisement/filter/FilterPriceRangeService.java similarity index 85% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterPriceRangeService.java rename to src/main/java/ua/everybuy/service/advertisement/filter/FilterPriceRangeService.java index 0e3fbf0..95b73ea 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterPriceRangeService.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/FilterPriceRangeService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.filter; +package ua.everybuy.service.advertisement.filter; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; @@ -6,15 +6,15 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory; +import ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.repository.advertisement.AdvertisementRepository; import ua.everybuy.database.repository.advertisement.spec.factory.AdvertisementSearchSpecificationFactory; import ua.everybuy.routing.dto.PriceRangeDto; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; -import static ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory.PRICE_ASCENDING; -import static ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory.PRICE_DESCENDING; +import static ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory.PRICE_ASCENDING; +import static ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory.PRICE_DESCENDING; @Service @RequiredArgsConstructor diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterValidator.java b/src/main/java/ua/everybuy/service/advertisement/filter/FilterValidator.java similarity index 79% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterValidator.java rename to src/main/java/ua/everybuy/service/advertisement/filter/FilterValidator.java index e8a6832..53cddd1 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/filter/FilterValidator.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/FilterValidator.java @@ -1,12 +1,12 @@ -package ua.everybuy.buisnesslogic.service.advertisement.filter; +package ua.everybuy.service.advertisement.filter; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.category.CategoryService; -import ua.everybuy.buisnesslogic.service.category.LowLevelSubCategoryService; -import ua.everybuy.buisnesslogic.service.category.TopLevelSubCategoryService; -import ua.everybuy.buisnesslogic.service.location.CityService; -import ua.everybuy.buisnesslogic.service.location.RegionService; +import ua.everybuy.service.category.CategoryService; +import ua.everybuy.service.category.LowLevelSubCategoryService; +import ua.everybuy.service.category.TopLevelSubCategoryService; +import ua.everybuy.service.location.CityService; +import ua.everybuy.service.location.RegionService; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; @Service diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateAscendingSortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DateAscendingSortStrategy.java similarity index 80% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateAscendingSortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/DateAscendingSortStrategy.java index 2beba21..1b22c20 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateAscendingSortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DateAscendingSortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateDescendingSortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DateDescendingSortStrategy.java similarity index 80% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateDescendingSortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/DateDescendingSortStrategy.java index 683f0b9..80181ab 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DateDescendingSortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DateDescendingSortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DefaultSortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DefaultSortStrategy.java similarity index 77% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DefaultSortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/DefaultSortStrategy.java index 65e81fa..aedbfe8 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/DefaultSortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/DefaultSortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceAscendingSortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceAscendingSortStrategy.java similarity index 80% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceAscendingSortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceAscendingSortStrategy.java index a7f1751..f732986 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceAscendingSortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceAscendingSortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceDescendingSortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceDescendingSortStrategy.java similarity index 80% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceDescendingSortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceDescendingSortStrategy.java index ad9622c..a1dbc61 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/PriceDescendingSortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/PriceDescendingSortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategy.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategy.java similarity index 65% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategy.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategy.java index f14f2a5..df6a1a5 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategy.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategy.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import org.springframework.data.domain.Sort; diff --git a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategyFactory.java b/src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategyFactory.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategyFactory.java rename to src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategyFactory.java index f9a4782..054aa3f 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/strategy/sort/SortStrategyFactory.java +++ b/src/main/java/ua/everybuy/service/advertisement/filter/sort/SortStrategyFactory.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.strategy.sort; +package ua.everybuy.service.advertisement.filter.sort; import jakarta.annotation.PostConstruct; import org.springframework.stereotype.Service; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchAdvertisementIndexService.java b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchAdvertisementIndexService.java similarity index 96% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchAdvertisementIndexService.java rename to src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchAdvertisementIndexService.java index cd63780..c8becfb 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchAdvertisementIndexService.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchAdvertisementIndexService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/PriceAggregationExtractor.java b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchPriceAggregationExtractor.java similarity index 91% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/PriceAggregationExtractor.java rename to src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchPriceAggregationExtractor.java index db67794..2d67084 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/PriceAggregationExtractor.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchPriceAggregationExtractor.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import org.elasticsearch.search.aggregations.Aggregations; import org.elasticsearch.search.aggregations.metrics.Max; @@ -7,7 +7,7 @@ import ua.everybuy.routing.dto.PriceRangeDto; @Service -public class PriceAggregationExtractor { +public class ElasticSearchPriceAggregationExtractor { public PriceRangeDto extractPriceRange(Aggregations aggregations) { if (aggregations == null) return new PriceRangeDto(0.0, 0.0); diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchQueryBuilder.java b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchQueryBuilder.java similarity index 90% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchQueryBuilder.java rename to src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchQueryBuilder.java index 47d79fc..c193ede 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchQueryBuilder.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchQueryBuilder.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import lombok.RequiredArgsConstructor; import org.elasticsearch.action.search.SearchRequest; @@ -8,7 +8,7 @@ import org.elasticsearch.search.builder.SearchSourceBuilder; import org.elasticsearch.search.sort.SortOrder; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.processor.FilterAdvertisementProcessor; +import ua.everybuy.service.advertisement.search.filters.processors.FilterAdvertisementProcessor; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; @Component @@ -18,6 +18,7 @@ public class ElasticSearchQueryBuilder implements QueryBuilder { private final FilterAdvertisementProcessor filterAdvertisementProcessor; private final SortBuilder sortBuilder; + @Override public SearchRequest buildSearchRequest(AdvertisementSearchParametersDto dto, int page, int size) { SearchSourceBuilder sourceBuilder = new SearchSourceBuilder() .query(buildBoolQuery(dto)) diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchService.java b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchService.java similarity index 84% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchService.java rename to src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchService.java index 27893cb..477bfda 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/ElasticSearchService.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/ElasticSearchService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.RequiredArgsConstructor; @@ -6,11 +6,8 @@ import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestHighLevelClient; -import org.elasticsearch.search.aggregations.Aggregations; -import org.elasticsearch.search.aggregations.metrics.Max; -import org.elasticsearch.search.aggregations.metrics.Min; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.advertisement.filter.FilterValidator; +import ua.everybuy.service.advertisement.filter.FilterValidator; import ua.everybuy.database.entity.AdvertisementDocument; import ua.everybuy.routing.dto.AdvertisementSearchResultDto; import ua.everybuy.routing.dto.PriceRangeDto; @@ -25,13 +22,13 @@ @Service @RequiredArgsConstructor -public class ElasticSearchService implements AdvertisementSearchService { +public class ElasticSearchService implements SearchService { private final RestHighLevelClient client; private final QueryBuilder searchQueryBuilder; private final AdvertisementDocumentMapper mapper; private final ObjectMapper objectMapper; private final FilterValidator validator; - private final PriceAggregationExtractor priceAggregationExtractor; + private final ElasticSearchPriceAggregationExtractor elasticSearchPriceAggregationExtractor; @Override public AdvertisementSearchResultDto searchAdvertisements(AdvertisementSearchParametersDto searchDto, int page, int size) { @@ -42,7 +39,7 @@ public AdvertisementSearchResultDto searchAdvertisements(AdvertisementSearchPara List advertisements = parseSearchHits(response); long totalHits = response.getHits().getTotalHits().value; - PriceRangeDto priceRange = priceAggregationExtractor.extractPriceRange(response.getAggregations()); + PriceRangeDto priceRange = elasticSearchPriceAggregationExtractor.extractPriceRange(response.getAggregations()); return buildSearchResultDto(advertisements, totalHits, size, priceRange); diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/QueryBuilder.java b/src/main/java/ua/everybuy/service/advertisement/search/QueryBuilder.java similarity index 80% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/QueryBuilder.java rename to src/main/java/ua/everybuy/service/advertisement/search/QueryBuilder.java index 2f1c0f6..5685a89 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/QueryBuilder.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/QueryBuilder.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import org.elasticsearch.action.search.SearchRequest; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/AdvertisementSearchService.java b/src/main/java/ua/everybuy/service/advertisement/search/SearchService.java similarity index 70% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/AdvertisementSearchService.java rename to src/main/java/ua/everybuy/service/advertisement/search/SearchService.java index efbe693..5bee7ab 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/AdvertisementSearchService.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/SearchService.java @@ -1,8 +1,8 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import ua.everybuy.routing.dto.AdvertisementSearchResultDto; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; -public interface AdvertisementSearchService { +public interface SearchService { AdvertisementSearchResultDto searchAdvertisements(AdvertisementSearchParametersDto searchDto, int page, int size); } diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/SortBuilder.java b/src/main/java/ua/everybuy/service/advertisement/search/SortBuilder.java similarity index 94% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/SortBuilder.java rename to src/main/java/ua/everybuy/service/advertisement/search/SortBuilder.java index ffe98f4..c5c464f 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/SortBuilder.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/SortBuilder.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search; +package ua.everybuy.service.advertisement.search; import io.micrometer.common.util.StringUtils; import org.elasticsearch.search.builder.SearchSourceBuilder; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java b/src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java similarity index 88% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java rename to src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java index 9c9bc9e..6a342ec 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryAggregationQueryBuilder.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.category; +package ua.everybuy.service.advertisement.search.category; import lombok.RequiredArgsConstructor; import org.elasticsearch.action.search.SearchRequest; @@ -8,13 +8,13 @@ import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder; import org.elasticsearch.search.builder.SearchSourceBuilder; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.processor.FilterAdvertisementCategoryProcessor; +import ua.everybuy.service.advertisement.search.filters.processors.FilterAdvertisementCategoryProcessor; import java.util.List; @Component @RequiredArgsConstructor -public class ElasticSearchCategoryAggregationQueryBuilder { +public class ElasticSearchCategoryAggregationQueryBuilder implements QueryBuilder { private static final String SECTION_FIELD = "section"; private static final String CATEGORY_FIELD = "topSubCategoryId"; private static final String INDEX_NAME = "advertisements"; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryService.java b/src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryService.java rename to src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryService.java index eb0ce14..7ce04f8 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/category/ElasticSearchCategoryService.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/category/ElasticSearchCategoryService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.category; +package ua.everybuy.service.advertisement.search.category; import lombok.RequiredArgsConstructor; import org.elasticsearch.action.search.SearchRequest; @@ -7,7 +7,7 @@ import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.search.aggregations.bucket.terms.Terms; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.category.TopLevelSubCategoryService; +import ua.everybuy.service.category.TopLevelSubCategoryService; import ua.everybuy.errorhandling.custom.SearchServiceException; import ua.everybuy.routing.dto.TopCategorySearchResultDto; @@ -19,7 +19,7 @@ @Service @RequiredArgsConstructor -public class ElasticSearchCategoryService { +public class ElasticSearchCategoryService implements SearchCategoryService { private static final String CATEGORY_AGG = "topCategories"; private static final String SECTION_AGG = "by_section"; private static final List SECTIONS = List.of("SELL", "BUY"); @@ -34,6 +34,7 @@ public class ElasticSearchCategoryService { * @param keyword Search term * @return Map where key is section, value is list of categories with counts */ + @Override public Map> findTopCategoriesByKeyword(String keyword) { Map> sectionStats = getSectionStats(keyword); diff --git a/src/main/java/ua/everybuy/service/advertisement/search/category/QueryBuilder.java b/src/main/java/ua/everybuy/service/advertisement/search/category/QueryBuilder.java new file mode 100644 index 0000000..f9e49e3 --- /dev/null +++ b/src/main/java/ua/everybuy/service/advertisement/search/category/QueryBuilder.java @@ -0,0 +1,9 @@ +package ua.everybuy.service.advertisement.search.category; + +import org.elasticsearch.action.search.SearchRequest; + +import java.util.List; + +public interface QueryBuilder { + SearchRequest buildSearchRequest(String keyword, List sections); +} diff --git a/src/main/java/ua/everybuy/service/advertisement/search/category/SearchCategoryService.java b/src/main/java/ua/everybuy/service/advertisement/search/category/SearchCategoryService.java new file mode 100644 index 0000000..f17424a --- /dev/null +++ b/src/main/java/ua/everybuy/service/advertisement/search/category/SearchCategoryService.java @@ -0,0 +1,10 @@ +package ua.everybuy.service.advertisement.search.category; + +import ua.everybuy.routing.dto.TopCategorySearchResultDto; + +import java.util.List; +import java.util.Map; + +public interface SearchCategoryService { + Map> findTopCategoriesByKeyword(String keyword); +} diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CategoryFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/CategoryFilter.java similarity index 85% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CategoryFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/CategoryFilter.java index 389e85b..90b8ce2 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CategoryFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/CategoryFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CityFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/CityFilter.java similarity index 85% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CityFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/CityFilter.java index 5d6fd11..d05a30b 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/CityFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/CityFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/EnabledFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/EnabledFilter.java similarity index 84% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/EnabledFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/EnabledFilter.java index f844ac5..70169ef 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/EnabledFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/EnabledFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/KeywordFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/KeywordFilter.java similarity index 90% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/KeywordFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/KeywordFilter.java index d1e1140..a37f132 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/KeywordFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/KeywordFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/LowSubCategoryFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/LowSubCategoryFilter.java similarity index 86% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/LowSubCategoryFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/LowSubCategoryFilter.java index 7524215..2af5a4b 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/LowSubCategoryFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/LowSubCategoryFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/PriceFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/PriceFilter.java similarity index 91% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/PriceFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/PriceFilter.java index 4e306ae..43481e8 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/PriceFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/PriceFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/ProductTypeFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/ProductTypeFilter.java similarity index 88% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/ProductTypeFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/ProductTypeFilter.java index 6425589..eb76368 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/ProductTypeFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/ProductTypeFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/RegionFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/RegionFilter.java similarity index 85% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/RegionFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/RegionFilter.java index 8013bf1..e889e48 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/RegionFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/RegionFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SearchFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/SearchFilter.java similarity index 66% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SearchFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/SearchFilter.java index 4213895..2d4008e 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SearchFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/SearchFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SectionFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/SectionFilter.java similarity index 89% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SectionFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/SectionFilter.java index 9b493e4..94c459b 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/SectionFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/SectionFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/TopSubCategoryFilter.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/TopSubCategoryFilter.java similarity index 86% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/TopSubCategoryFilter.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/TopSubCategoryFilter.java index 3246aa2..6187a89 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/TopSubCategoryFilter.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/TopSubCategoryFilter.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters; +package ua.everybuy.service.advertisement.search.filters; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementCategoryProcessor.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementCategoryProcessor.java similarity index 66% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementCategoryProcessor.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementCategoryProcessor.java index b191239..3bd2909 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementCategoryProcessor.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementCategoryProcessor.java @@ -1,10 +1,10 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters.processor; +package ua.everybuy.service.advertisement.search.filters.processors; import lombok.RequiredArgsConstructor; import org.elasticsearch.index.query.BoolQueryBuilder; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.EnabledFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.KeywordFilter; +import ua.everybuy.service.advertisement.search.filters.EnabledFilter; +import ua.everybuy.service.advertisement.search.filters.KeywordFilter; @RequiredArgsConstructor @Component @@ -13,7 +13,6 @@ public class FilterAdvertisementCategoryProcessor { private final KeywordFilter keywordFilter; public void process(BoolQueryBuilder query, String keyword) { - enabledFilter.apply(query, new Object()); keywordFilter.apply(query,keyword); diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementProcessor.java b/src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementProcessor.java similarity index 62% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementProcessor.java rename to src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementProcessor.java index bdd4e40..484169e 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/search/filters/processor/FilterAdvertisementProcessor.java +++ b/src/main/java/ua/everybuy/service/advertisement/search/filters/processors/FilterAdvertisementProcessor.java @@ -1,18 +1,18 @@ -package ua.everybuy.buisnesslogic.service.advertisement.search.filters.processor; +package ua.everybuy.service.advertisement.search.filters.processors; import lombok.RequiredArgsConstructor; import org.elasticsearch.index.query.BoolQueryBuilder; import org.springframework.stereotype.Component; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.CategoryFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.CityFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.EnabledFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.KeywordFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.LowSubCategoryFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.PriceFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.ProductTypeFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.RegionFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.SectionFilter; -import ua.everybuy.buisnesslogic.service.advertisement.search.filters.TopSubCategoryFilter; +import ua.everybuy.service.advertisement.search.filters.CategoryFilter; +import ua.everybuy.service.advertisement.search.filters.CityFilter; +import ua.everybuy.service.advertisement.search.filters.EnabledFilter; +import ua.everybuy.service.advertisement.search.filters.KeywordFilter; +import ua.everybuy.service.advertisement.search.filters.LowSubCategoryFilter; +import ua.everybuy.service.advertisement.search.filters.PriceFilter; +import ua.everybuy.service.advertisement.search.filters.ProductTypeFilter; +import ua.everybuy.service.advertisement.search.filters.RegionFilter; +import ua.everybuy.service.advertisement.search.filters.SectionFilter; +import ua.everybuy.service.advertisement.search.filters.TopSubCategoryFilter; import ua.everybuy.routing.dto.PriceRangeDto; import ua.everybuy.routing.dto.request.AdvertisementSearchParametersDto; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserDeletionService.java b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserDeletionService.java similarity index 87% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserDeletionService.java rename to src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserDeletionService.java index 7bf72bf..c9a76a7 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserDeletionService.java +++ b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserDeletionService.java @@ -1,11 +1,11 @@ -package ua.everybuy.buisnesslogic.service.advertisement.user; +package ua.everybuy.service.advertisement.user; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import ua.everybuy.buisnesslogic.service.advertisement.AdvertisementManagementService; -import ua.everybuy.buisnesslogic.service.photo.PhotoService; +import ua.everybuy.service.advertisement.AdvertisementManagementService; +import ua.everybuy.service.photo.PhotoService; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.entity.AdvertisementPhoto; import ua.everybuy.database.repository.advertisement.AdvertisementRepository; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserProfileService.java b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserProfileService.java similarity index 94% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserProfileService.java rename to src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserProfileService.java index 6ffbd26..2330909 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserProfileService.java +++ b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserProfileService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.advertisement.user; +package ua.everybuy.service.advertisement.user; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; @@ -7,8 +7,8 @@ import org.springframework.data.domain.Sort; import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.category.CategoryService; -import ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory; +import ua.everybuy.service.category.CategoryService; +import ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.database.repository.advertisement.AdvertisementRepository; import ua.everybuy.database.repository.advertisement.spec.factory.AdvertisementUserFilterSpecificationFactory; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserStatisticService.java b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserStatisticService.java similarity index 90% rename from src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserStatisticService.java rename to src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserStatisticService.java index 30cbbaa..63fe484 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/advertisement/user/AdvertisementUserStatisticService.java +++ b/src/main/java/ua/everybuy/service/advertisement/user/AdvertisementUserStatisticService.java @@ -1,12 +1,12 @@ -package ua.everybuy.buisnesslogic.service.advertisement.user; +package ua.everybuy.service.advertisement.user; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; -import ua.everybuy.buisnesslogic.service.advertisement.AdvertisementStorageService; -import ua.everybuy.buisnesslogic.strategy.sort.SortStrategyFactory; +import ua.everybuy.service.advertisement.AdvertisementStorageService; +import ua.everybuy.service.advertisement.filter.sort.SortStrategyFactory; import ua.everybuy.database.entity.Advertisement; import ua.everybuy.routing.mapper.AdvertisementResponseMapper; import ua.everybuy.routing.dto.response.AdvertisementWithStatisticResponse; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/category/AdvertisementSubCategoryService.java b/src/main/java/ua/everybuy/service/category/AdvertisementSubCategoryService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/category/AdvertisementSubCategoryService.java rename to src/main/java/ua/everybuy/service/category/AdvertisementSubCategoryService.java index dfee26e..7f37b1c 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/category/AdvertisementSubCategoryService.java +++ b/src/main/java/ua/everybuy/service/category/AdvertisementSubCategoryService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.category; +package ua.everybuy.service.category; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/category/CategoryService.java b/src/main/java/ua/everybuy/service/category/CategoryService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/category/CategoryService.java rename to src/main/java/ua/everybuy/service/category/CategoryService.java index e87b784..6fe6355 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/category/CategoryService.java +++ b/src/main/java/ua/everybuy/service/category/CategoryService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.category; +package ua.everybuy.service.category; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/category/LowLevelSubCategoryService.java b/src/main/java/ua/everybuy/service/category/LowLevelSubCategoryService.java similarity index 98% rename from src/main/java/ua/everybuy/buisnesslogic/service/category/LowLevelSubCategoryService.java rename to src/main/java/ua/everybuy/service/category/LowLevelSubCategoryService.java index bc9538e..55bde82 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/category/LowLevelSubCategoryService.java +++ b/src/main/java/ua/everybuy/service/category/LowLevelSubCategoryService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.category; +package ua.everybuy.service.category; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/category/TopLevelSubCategoryService.java b/src/main/java/ua/everybuy/service/category/TopLevelSubCategoryService.java similarity index 98% rename from src/main/java/ua/everybuy/buisnesslogic/service/category/TopLevelSubCategoryService.java rename to src/main/java/ua/everybuy/service/category/TopLevelSubCategoryService.java index 6fba5b1..0475af0 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/category/TopLevelSubCategoryService.java +++ b/src/main/java/ua/everybuy/service/category/TopLevelSubCategoryService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.category; +package ua.everybuy.service.category; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/integration/AuthValidationService.java b/src/main/java/ua/everybuy/service/integration/AuthValidationService.java similarity index 93% rename from src/main/java/ua/everybuy/buisnesslogic/service/integration/AuthValidationService.java rename to src/main/java/ua/everybuy/service/integration/AuthValidationService.java index 51478a7..a9a8e0e 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/integration/AuthValidationService.java +++ b/src/main/java/ua/everybuy/service/integration/AuthValidationService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.integration; +package ua.everybuy.service.integration; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/integration/ChatService.java b/src/main/java/ua/everybuy/service/integration/ChatService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/integration/ChatService.java rename to src/main/java/ua/everybuy/service/integration/ChatService.java index b19d30f..fa34d9e 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/integration/ChatService.java +++ b/src/main/java/ua/everybuy/service/integration/ChatService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.integration; +package ua.everybuy.service.integration; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/integration/ExchangeService.java b/src/main/java/ua/everybuy/service/integration/ExchangeService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/integration/ExchangeService.java rename to src/main/java/ua/everybuy/service/integration/ExchangeService.java index 94e026e..15b2e1f 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/integration/ExchangeService.java +++ b/src/main/java/ua/everybuy/service/integration/ExchangeService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.integration; +package ua.everybuy.service.integration; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/integration/UserProfileService.java b/src/main/java/ua/everybuy/service/integration/UserProfileService.java similarity index 95% rename from src/main/java/ua/everybuy/buisnesslogic/service/integration/UserProfileService.java rename to src/main/java/ua/everybuy/service/integration/UserProfileService.java index 446a082..528e29d 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/integration/UserProfileService.java +++ b/src/main/java/ua/everybuy/service/integration/UserProfileService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.integration; +package ua.everybuy.service.integration; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Value; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/integration/WakeUpService.java b/src/main/java/ua/everybuy/service/integration/WakeUpService.java similarity index 94% rename from src/main/java/ua/everybuy/buisnesslogic/service/integration/WakeUpService.java rename to src/main/java/ua/everybuy/service/integration/WakeUpService.java index 93aff45..2c0cfb4 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/integration/WakeUpService.java +++ b/src/main/java/ua/everybuy/service/integration/WakeUpService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.integration; +package ua.everybuy.service.integration; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/location/CityService.java b/src/main/java/ua/everybuy/service/location/CityService.java similarity index 97% rename from src/main/java/ua/everybuy/buisnesslogic/service/location/CityService.java rename to src/main/java/ua/everybuy/service/location/CityService.java index c444cfa..635deec 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/location/CityService.java +++ b/src/main/java/ua/everybuy/service/location/CityService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.location; +package ua.everybuy.service.location; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/location/RegionService.java b/src/main/java/ua/everybuy/service/location/RegionService.java similarity index 94% rename from src/main/java/ua/everybuy/buisnesslogic/service/location/RegionService.java rename to src/main/java/ua/everybuy/service/location/RegionService.java index 3a49188..85ef713 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/location/RegionService.java +++ b/src/main/java/ua/everybuy/service/location/RegionService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.location; +package ua.everybuy.service.location; import jakarta.persistence.EntityNotFoundException; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/photo/AmazonS3Service.java b/src/main/java/ua/everybuy/service/photo/AmazonS3Service.java similarity index 97% rename from src/main/java/ua/everybuy/buisnesslogic/service/photo/AmazonS3Service.java rename to src/main/java/ua/everybuy/service/photo/AmazonS3Service.java index 5a4f52e..c789e94 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/photo/AmazonS3Service.java +++ b/src/main/java/ua/everybuy/service/photo/AmazonS3Service.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.photo; +package ua.everybuy.service.photo; import com.amazonaws.SdkClientException; import com.amazonaws.services.s3.model.ObjectMetadata; diff --git a/src/main/java/ua/everybuy/buisnesslogic/service/photo/PhotoService.java b/src/main/java/ua/everybuy/service/photo/PhotoService.java similarity index 98% rename from src/main/java/ua/everybuy/buisnesslogic/service/photo/PhotoService.java rename to src/main/java/ua/everybuy/service/photo/PhotoService.java index ba3b7b0..482d16f 100644 --- a/src/main/java/ua/everybuy/buisnesslogic/service/photo/PhotoService.java +++ b/src/main/java/ua/everybuy/service/photo/PhotoService.java @@ -1,4 +1,4 @@ -package ua.everybuy.buisnesslogic.service.photo; +package ua.everybuy.service.photo; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; From 323888c68dceadaefe93cf7703bc750c7c34dbfe Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 21:54:39 +0200 Subject: [PATCH 2/6] chore: add CodeRabbit review config --- coderabbit.yml => .github/coderabbit.yml | 0 .github/workflows/ci.yml | 5 +++++ 2 files changed, 5 insertions(+) rename coderabbit.yml => .github/coderabbit.yml (100%) diff --git a/coderabbit.yml b/.github/coderabbit.yml similarity index 100% rename from coderabbit.yml rename to .github/coderabbit.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eeae6bc..0658075 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,3 +30,8 @@ jobs: - name: Build without tests run: ./gradlew build -x test + + - name: CodeRabbit Review + uses: coderabbitai/coderabbit-action@v1 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} From 42468fe281a852bfb1ab36d90069869ab5d24639 Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 21:56:06 +0200 Subject: [PATCH 3/6] chore: add CodeRabbit review config --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0658075..973ed26 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,6 +32,6 @@ jobs: run: ./gradlew build -x test - name: CodeRabbit Review - uses: coderabbitai/coderabbit-action@v1 + uses: coderabbitai/coderabbit-action@v0.9.14 with: github-token: ${{ secrets.GITHUB_TOKEN }} From 8095f9875e31624bb4fa3e4368bcef0468395658 Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 21:58:34 +0200 Subject: [PATCH 4/6] chore: add CodeRabbit review config --- .github/workflows/ci.yml | 37 +++++++++++++------------------------ 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 973ed26..5b43ae7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,37 +1,26 @@ -name: Code Review & Build +name: Code Review (AI PR Reviewer) on: - push: - branches: [ master ] pull_request: - branches: [ master ] + pull_request_review_comment: + types: [created] permissions: contents: read pull-requests: write jobs: - build: + review: runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Set up JDK 17 - uses: actions/setup-java@v4 - with: - java-version: '17' - distribution: 'temurin' - cache: gradle - - - name: Make Gradle wrapper executable - run: chmod +x gradlew - - - name: Build without tests - run: ./gradlew build -x test + - uses: actions/checkout@v4 - - name: CodeRabbit Review - uses: coderabbitai/coderabbit-action@v0.9.14 + - name: AI PR Review and Summary + uses: coderabbitai/ai-pr-reviewer@latest + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} with: - github-token: ${{ secrets.GITHUB_TOKEN }} + debug: false + review_simple_changes: false + review_comment_lgtm: false From 75ba43986e01449cabf6743184f0f1be68c2af4b Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 22:01:48 +0200 Subject: [PATCH 5/6] chore: add CodeRabbit review config --- .github/workflows/ci.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5b43ae7..595b15a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,8 +2,7 @@ name: Code Review (AI PR Reviewer) on: pull_request: - pull_request_review_comment: - types: [created] + types: [opened, synchronize, reopened] permissions: contents: read @@ -16,11 +15,13 @@ jobs: - uses: actions/checkout@v4 - name: AI PR Review and Summary - uses: coderabbitai/ai-pr-reviewer@latest + uses: coderabbitai/ai-pr-reviewer@v1.11.0 + with: + debug: false + review_simple_changes: true + review_comment_lgtm: true + review_comment_in_diff: true + summarize_changes: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} - with: - debug: false - review_simple_changes: false - review_comment_lgtm: false From 775fdddff738ffa2cc1593d7de7c4d83d20b92e7 Mon Sep 17 00:00:00 2001 From: smagles Date: Mon, 16 Jun 2025 22:05:13 +0200 Subject: [PATCH 6/6] chore: add CodeRabbit review config --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 595b15a..9f28462 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,13 +15,13 @@ jobs: - uses: actions/checkout@v4 - name: AI PR Review and Summary - uses: coderabbitai/ai-pr-reviewer@v1.11.0 + uses: fluxninja/openai-pr-reviewer@latest + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} with: debug: false review_simple_changes: true review_comment_lgtm: true review_comment_in_diff: true summarize_changes: true - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}