From 33f8c5e33fa40072948d44f415cad64ab93d3b04 Mon Sep 17 00:00:00 2001 From: EunjiShin Date: Thu, 9 Nov 2023 23:24:15 +0900 Subject: [PATCH] =?UTF-8?q?feat=20:=20=ED=81=AC=EB=A1=AC=20=EC=9D=B5?= =?UTF-8?q?=EC=8A=A4=ED=85=90=EC=85=98=EC=9A=A9=20=EB=B6=81=EB=A7=88?= =?UTF-8?q?=ED=81=AC=20=EA=B2=80=EC=83=89=20API=20=EC=B6=94=EA=B0=80=20=3D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BookmarkController.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pickly-service/src/main/java/org/pickly/service/application/controller/BookmarkController.java b/pickly-service/src/main/java/org/pickly/service/application/controller/BookmarkController.java index ea1d8325..96b82dae 100644 --- a/pickly-service/src/main/java/org/pickly/service/application/controller/BookmarkController.java +++ b/pickly-service/src/main/java/org/pickly/service/application/controller/BookmarkController.java @@ -346,4 +346,27 @@ public PageResponse searchBookmarks( return bookmarkFacade.searchBookmarks(pageRequest, memberId, keyword); } + @Operation( + summary = "[크롬 익스텐션] 타이틀 값을 이용해 특정 유저의 북마크를 검색한다.", + description = "검색 값이 제목에 포함되는 북마크를 반환한다. 대소문자를 구분하지 않는다." + ) + @GetMapping("/members/bookmarks/search/chrome-extension") + public PageResponse searchBookmarksForExtension( + @Parameter(name = "memberId", description = "암호화된 유저 ID 값", example = "11a9892", required = true) + @NotBlank(message = "유저 ID를 입력해주세요.") @RequestParam final String memberId, + + @Parameter(name = "keyword", description = "검색어", example = "ww0077", required = true) + @RequestParam final String keyword, + + @Parameter(description = "커서 ID 값 :: default value = null", example = "3") + @RequestParam(required = false) final Long cursorId, + + @Parameter(description = "한 페이지에 출력할 아이템 수 :: default value = 15", example = "10") + @RequestParam(required = false) final Integer pageSize + ) { + ExtensionKey key = encryptService.getKey(); + PageRequest pageRequest = new PageRequest(cursorId, pageSize); + return bookmarkFacade.searchBookmarks(pageRequest, key.decrypt(memberId), keyword); + } + }