diff --git a/infra/sql/ddl.sql b/infra/sql/ddl.sql index 997b8a4a..b552128c 100644 --- a/infra/sql/ddl.sql +++ b/infra/sql/ddl.sql @@ -107,6 +107,7 @@ create table owned_menu_search ( menu_id bigint not null, modified_at datetime(6), user_id bigint not null, + map_id bigint not null, menu_title varchar(255) not null, store_address varchar(255) not null, store_title varchar(255) not null, diff --git a/src/main/java/com/ourmenu/backend/domain/menu/api/MapController.java b/src/main/java/com/ourmenu/backend/domain/menu/api/MapController.java index c15e6451..9b839b4d 100644 --- a/src/main/java/com/ourmenu/backend/domain/menu/api/MapController.java +++ b/src/main/java/com/ourmenu/backend/domain/menu/api/MapController.java @@ -2,7 +2,6 @@ import com.ourmenu.backend.domain.menu.application.MapService; import com.ourmenu.backend.domain.menu.dto.MapSearchDto; -import com.ourmenu.backend.domain.menu.dto.MapSearchHistoryDto; import com.ourmenu.backend.domain.menu.dto.MenuInfoOnMapDto; import com.ourmenu.backend.domain.menu.dto.MenuOnMapDto; import com.ourmenu.backend.domain.user.domain.CustomUserDetails; @@ -62,9 +61,9 @@ public ApiResponse findMenuInfoByMenuId(@PathVariable Long men @Operation(summary = "지도 검색 기록 조회", description = "지도에서 식당 검색 기록을 조회한다.") @GetMapping("/maps/search-history") - public ApiResponse> findSearchHistoryOnMap( + public ApiResponse> findSearchHistoryOnMap( @AuthenticationPrincipal CustomUserDetails userDetails) { - List response = mapService.findSearchHistoryOnMap(userDetails.getId()); + List response = mapService.findSearchHistoryOnMap(userDetails.getId()); return ApiUtil.success(response); } } diff --git a/src/main/java/com/ourmenu/backend/domain/menu/application/MapService.java b/src/main/java/com/ourmenu/backend/domain/menu/application/MapService.java index 51016535..f4a1b1be 100644 --- a/src/main/java/com/ourmenu/backend/domain/menu/application/MapService.java +++ b/src/main/java/com/ourmenu/backend/domain/menu/application/MapService.java @@ -8,7 +8,6 @@ import com.ourmenu.backend.domain.menu.domain.MenuFolder; import com.ourmenu.backend.domain.menu.domain.MenuImg; import com.ourmenu.backend.domain.menu.dto.MapSearchDto; -import com.ourmenu.backend.domain.menu.dto.MapSearchHistoryDto; import com.ourmenu.backend.domain.menu.dto.MenuFolderInfoOnMapDto; import com.ourmenu.backend.domain.menu.dto.MenuInfoOnMapDto; import com.ourmenu.backend.domain.menu.dto.MenuOnMapDto; @@ -112,7 +111,7 @@ public List findSearchResultOnMap(String title, double mapX, doubl * @param userId * @return */ - public List findSearchHistoryOnMap(Long userId) { + public List findSearchHistoryOnMap(Long userId) { Pageable pageable = PageRequest.of( 0, 10, Sort.by(Sort.Direction.DESC, "modifiedAt") ); @@ -121,7 +120,7 @@ public List findSearchHistoryOnMap(Long userId) { .findByUserId(userId, pageable); return searchHistoryPage.stream() - .map(MapSearchHistoryDto::from) + .map(MapSearchDto::from) .collect(Collectors.toList()); } @@ -178,6 +177,7 @@ private void saveOwnedMenuSearchHistory(Long userId, Menu menu) { } OwnedMenuSearch ownedMenuSearch = OwnedMenuSearch.builder() + .mapId(menu.getStore().getMap().getId()) .menuId(menu.getId()) .menuTitle(menu.getTitle()) .storeTitle(menu.getStore().getTitle()) diff --git a/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchDto.java b/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchDto.java index 75d818fc..4aa9b356 100644 --- a/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchDto.java +++ b/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchDto.java @@ -12,12 +12,16 @@ @AllArgsConstructor(access = AccessLevel.PRIVATE) public class MapSearchDto { + private Long mapId; + private Long menuId; private String menuTitle; private String storeTitle; private String storeAddress; public static MapSearchDto from(Menu menu){ return MapSearchDto.builder() + .mapId(menu.getStore().getMap().getId()) + .menuId(menu.getId()) .menuTitle(menu.getTitle()) .storeTitle(menu.getStore().getTitle()) .storeAddress(menu.getStore().getAddress()) @@ -26,6 +30,8 @@ public static MapSearchDto from(Menu menu){ public static MapSearchDto from(OwnedMenuSearch ownedMenuSearch){ return MapSearchDto.builder() + .mapId(ownedMenuSearch.getMapId()) + .menuId(ownedMenuSearch.getMenuId()) .menuTitle(ownedMenuSearch.getMenuTitle()) .storeTitle(ownedMenuSearch.getStoreTitle()) .storeAddress(ownedMenuSearch.getStoreAddress()) diff --git a/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchHistoryDto.java b/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchHistoryDto.java deleted file mode 100644 index 02a26286..00000000 --- a/src/main/java/com/ourmenu/backend/domain/menu/dto/MapSearchHistoryDto.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.ourmenu.backend.domain.menu.dto; - -import com.ourmenu.backend.domain.search.domain.OwnedMenuSearch; -import lombok.AccessLevel; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Getter; - -import java.time.LocalDateTime; - -@Getter -@Builder(access = AccessLevel.PRIVATE) -@AllArgsConstructor(access = AccessLevel.PRIVATE) -public class MapSearchHistoryDto { - - private Long menuId; - private String menuTitle; - private String storeTitle; - private String storeAddress; - - public static MapSearchHistoryDto from(OwnedMenuSearch ownedMenuSearch){ - return MapSearchHistoryDto.builder() - .menuId(ownedMenuSearch.getMenuId()) - .menuTitle(ownedMenuSearch.getMenuTitle()) - .storeTitle(ownedMenuSearch.getStoreTitle()) - .storeAddress(ownedMenuSearch.getStoreAddress()) - .build(); - } -} diff --git a/src/main/java/com/ourmenu/backend/domain/search/domain/OwnedMenuSearch.java b/src/main/java/com/ourmenu/backend/domain/search/domain/OwnedMenuSearch.java index 223cf16f..e8aa9318 100644 --- a/src/main/java/com/ourmenu/backend/domain/search/domain/OwnedMenuSearch.java +++ b/src/main/java/com/ourmenu/backend/domain/search/domain/OwnedMenuSearch.java @@ -6,8 +6,6 @@ import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.Table; -import jakarta.validation.constraints.NotNull; -import java.time.LocalDateTime; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; @@ -26,18 +24,15 @@ public class OwnedMenuSearch extends BaseEntity { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; - @NotNull private Long menuId; - @NotNull private String menuTitle; - @NotNull private String storeTitle; - @NotNull private String storeAddress; - @NotNull private Long userId; + + private Long mapId; }