Skip to content

Commit 3148203

Browse files
committed
[BOOK-79] feat: apis - 알라딘 도서검색, 도서상세검색 Service (#15)
1 parent d91523a commit 3148203

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package org.yapp.apis.book.service
2+
3+
import BookSearchResponse
4+
import mu.KotlinLogging
5+
import org.springframework.stereotype.Service
6+
import org.yapp.apis.book.dto.response.BookDetailResponse
7+
import org.yapp.infra.external.aladin.helper.AladinApiHelper
8+
import org.yapp.infra.external.aladin.response.AladinBookDetailResponse
9+
import org.yapp.infra.external.aladin.response.AladinSearchResponse
10+
11+
@Service
12+
class BookService(
13+
private val aladinApiHelper: AladinApiHelper,
14+
) {
15+
private val log = KotlinLogging.logger {}
16+
17+
18+
fun searchBooks(query: String, params: Map<String, Any>): BookSearchResponse {
19+
log.info("Calling Aladin API for book search with query: $query")
20+
val response: AladinSearchResponse = aladinApiHelper.searchBooks(query, params)
21+
return BookSearchResponse.from(response)
22+
}
23+
24+
fun lookupBook(itemId: String, itemIdType: String, optResult: List<String>?): BookDetailResponse {
25+
log.info("Calling Aladin API for book detail lookup for itemId: $itemId, itemIdType: $itemIdType with optResult: $optResult")
26+
val aladinResponse: AladinBookDetailResponse = aladinApiHelper.lookupBook(itemId, itemIdType, optResult)
27+
return BookDetailResponse.from(aladinResponse)
28+
}
29+
}

0 commit comments

Comments
 (0)