diff --git a/src/main/java/com/example/demo/controller/BookLendController.java b/src/main/java/com/example/demo/controller/BookLendController.java index 6683951..06e2c20 100644 --- a/src/main/java/com/example/demo/controller/BookLendController.java +++ b/src/main/java/com/example/demo/controller/BookLendController.java @@ -3,13 +3,20 @@ package com.example.demo.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; -import com.example.demo.entity.Employee; import com.example.demo.repository.EmployeeRepository; +import com.example.demo.service.BookServiceImpl; + +import lombok.RequiredArgsConstructor; @Controller +@RequiredArgsConstructor public class BookLendController { + + @Autowired + private final BookServiceImpl bookServiceImpl; @Autowired private EmployeeRepository employeeRepository; @@ -19,12 +26,13 @@ public class BookLendController { return "bookLend"; } - // 社員IDを取得してプルダウンに表示させる - @PostMapping("/bookLend/employeeId") - public String selectEmployeeId(Employee employee, Model model) { - model.addAttribute("employeeList", employeeRepository.findByEmployeeId(employee.getEmployeeId())); - model.addAttribute("bookLend", employee); + @PostMapping("/bookLend/{id}") + public String bookLend(@PathVariable int id, Model model) { + System.out.println(id); + model.addAttribute("book", bookServiceImpl.findById(id)); return "bookLend"; } + + } diff --git a/src/main/java/com/example/demo/repository/BookLendRepository.java b/src/main/java/com/example/demo/repository/BookLendRepository.java index 68d2681..5c0b5f1 100644 --- a/src/main/java/com/example/demo/repository/BookLendRepository.java +++ b/src/main/java/com/example/demo/repository/BookLendRepository.java @@ -1,5 +1,7 @@ package com.example.demo.repository; +import java.util.List; + import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @@ -8,4 +10,6 @@ import com.example.demo.entity.BookLend; @Repository public interface BookLendRepository extends JpaRepository { + List findBybookStatus(Integer bookStatus); + } diff --git a/src/main/java/com/example/demo/service/BookServiceImpl.java b/src/main/java/com/example/demo/service/BookServiceImpl.java index da7268a..0b6c00d 100644 --- a/src/main/java/com/example/demo/service/BookServiceImpl.java +++ b/src/main/java/com/example/demo/service/BookServiceImpl.java @@ -1,14 +1,20 @@ package com.example.demo.service; import java.util.List; +import java.util.Optional; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; +import org.springframework.web.server.ResponseStatusException; import com.example.demo.entity.Book; import com.example.demo.repository.BookRepository; +import lombok.RequiredArgsConstructor; + @Service +@RequiredArgsConstructor public class BookServiceImpl { @Autowired @@ -17,9 +23,19 @@ public class BookServiceImpl { public List findAll() { return bookRepository.findAll(); } - - public List findBooks(String keyword){ + + public List findBooks(String keyword) { return bookRepository.searchBooks(keyword); } + public Book findById(int bookId) { + Optional book = bookRepository.findById(bookId); + if (book.isEmpty()) { + throw new ResponseStatusException( + HttpStatus.NOT_FOUND, "図書情報が見つかりません"); + } + + return book.get(); + } + } diff --git a/src/main/java/com/example/demo/service/EmployeeService.java b/src/main/java/com/example/demo/service/EmployeeService.java new file mode 100644 index 0000000..0f94b99 --- /dev/null +++ b/src/main/java/com/example/demo/service/EmployeeService.java @@ -0,0 +1,24 @@ +package com.example.demo.service; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.example.demo.entity.Employee; +import com.example.demo.repository.EmployeeRepository; + +import lombok.RequiredArgsConstructor; + +@Service +@RequiredArgsConstructor +public class EmployeeService { + + @Autowired + private EmployeeRepository employeeRepository; + + public List findAll() { + return employeeRepository.findAll(); + } + +} diff --git a/src/main/resources/templates/book.html b/src/main/resources/templates/book.html index 38231ea..dc8d5d0 100644 --- a/src/main/resources/templates/book.html +++ b/src/main/resources/templates/book.html @@ -80,6 +80,7 @@ + @@ -106,8 +107,8 @@ -
- + + - - - +
@@ -201,6 +129,19 @@ } } + // カレンダーを当日以前の日付を入力できないようにする + const today = new Date(); + function dateFormat(today, format) { + format = format.replace("YYYY", today.getFullYear()); + format = format.replace("MM", ("0" + (today.getMonth() + 1)).slice(-2)); + format = format.replace("DD", ("0" + today.getDate()).slice(-2)); + return format; + } + + const data = dateFormat(today, 'YYYY-MM-DD'); + const field = document.getElementById('returnDate'); + field.setAttribute("min", data); +