diff --git a/team1/src/main/java/com/example/demo/repository/Book_CollectionRepository.java b/team1/src/main/java/com/example/demo/repository/Book_CollectionRepository.java index 5025ade..39c6c80 100644 --- a/team1/src/main/java/com/example/demo/repository/Book_CollectionRepository.java +++ b/team1/src/main/java/com/example/demo/repository/Book_CollectionRepository.java @@ -1,11 +1,28 @@ package com.example.demo.repository; +import java.util.List; + import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; import com.example.demo.entity.Book_collectionEntity; @Repository public interface Book_CollectionRepository extends JpaRepository { + List findByFlgLending(Character flgLending); + @Query(""" + SELECT b FROM Book_collectionEntity b + WHERE b.flgLending='0' + AND (:nmBook = '' OR b.nmBook LIKE CONCAT('%', :nmBook,'%')) + AND (:pubLisher = '' OR b.pubLisher LIKE CONCAT('%', :pubLisher,'%')) + AND (:noteText = '' OR b.noteText LIKE CONCAT('%',:noteText,'%')) + ORDER BY b.idBook + """) + List searchBooks( + @Param("nmBook") String nmBook, + @Param("pubLisher") String pubLisher, + @Param(" noteText") String noteText); } diff --git a/team1/src/main/java/com/example/demo/service/ReturnService.java b/team1/src/main/java/com/example/demo/service/ReturnService.java index 3b6d189..7821f1c 100644 --- a/team1/src/main/java/com/example/demo/service/ReturnService.java +++ b/team1/src/main/java/com/example/demo/service/ReturnService.java @@ -1,13 +1,16 @@ package com.example.demo.service; import java.util.Date; +import java.util.List; import java.util.Optional; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import com.example.demo.entity.Book_collectionEntity; import com.example.demo.entity.Borrow_booksEntity; import com.example.demo.form.ReturnForm; +import com.example.demo.form.SearchConditionBookForm; import com.example.demo.repository.Book_CollectionRepository; import com.example.demo.repository.Borrow_BooksRepository; import com.example.demo.repository.EmployeeRepository; @@ -94,4 +97,24 @@ public class ReturnService { book_CollectionRepository.save(book.get()); } + //貸し出し可能な書籍の全権取得 + public List availableSelectAll() { + return book_CollectionRepository.findByFlgLending('0'); + } + + //書籍名・出版社・特記事項の部分一致検索 + public List searchByWithLike( + SearchConditionBookForm form) { + String nmBook = form.getNmBook(); + String pubLisher = form.getPubLisher(); + String noteText = form.getNoteText(); + nmBook = nmBook == null ? "" : nmBook; + pubLisher = pubLisher == null ? "" : pubLisher; + noteText = noteText == null ? "" : noteText; + return book_CollectionRepository.searchBooks( + nmBook, + pubLisher, + noteText); + } + }