5 Commits

Author SHA1 Message Date
s-sakiyama
e1563118a5 pom.xmlの余計なところの削除 2026-10-22 09:05:10 +09:00
s-sakiyama
3576a76137 返却の更新部分をserviceに追加 2026-10-21 15:36:24 +09:00
s-sakiyama
53fd6ae2db serviceの作成及び仕様 2026-10-21 14:10:37 +09:00
s-sakiyama
6b7c6d3abf Entityの型、インポートの変更 2026-10-21 14:03:22 +09:00
s-sakiyama
02eb671aab Serviceの追加 2026-10-21 10:36:30 +09:00
7 changed files with 187 additions and 111 deletions

View File

@@ -74,16 +74,6 @@
<artifactId>spring-boot-starter-webmvc-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.example</groupId>
<artifactId>HelloSpring</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.example.rhizome</groupId>
<artifactId>EM-Spring</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<build>

View File

@@ -1,15 +1,28 @@
package com.example.demo.controller;
import jakarta.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.example.demo.form.ReturnForm;
import com.example.demo.service.ReturnService;
//返却完了用のコントローラー
@Controller
public class returnCompleteController {
public class ReturnCompleteController {
HttpSession httpSession;
ReturnService rerurnService;
@Autowired
public ReturnCompleteController(HttpSession httpSession, ReturnService rerurnService) {
this.httpSession = httpSession;
this.rerurnService = rerurnService;
}
@ModelAttribute
ReturnForm returnForm() {
@@ -21,14 +34,13 @@ public class returnCompleteController {
public String returnComplete(ReturnForm returnForm) {
try {
System.out.println(returnForm.getNmBook());
//セッションからIDを拾いたい
httpSession.getAttribute("");
//いったん1ということで
int id = 1;
rerurnService.setReturn(returnForm.getIdRequest(), id);
//各種 必要な値をDBから取得,セッションからログイン者の情報
//蔵書テーブルの貸出フラグを貸出可、
//貸出テーブルのステータスを返却済、
//返却日を当日日付、
//更新者を更新した人のID、
//更新日を当日日付に更新する。
return "returnComplete";
} catch (Exception e) {

View File

@@ -1,7 +1,6 @@
package com.example.demo.controller;
import java.util.Date;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
@@ -9,23 +8,35 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.example.demo.form.ReturnForm;
import com.example.demo.service.ReturnService;
@Controller
public class ReturnConfirmController {
ReturnService rerurnService;
@Autowired
ReturnConfirmController(ReturnService rerurnService) {
this.rerurnService = rerurnService;
}
@ModelAttribute
ReturnForm returnForm() {
Date date = new Date();
return new ReturnForm(1, "テスト名", date, date, date, "ISBN", "書籍名", "出版社", "特記事項");
return new ReturnForm();
}
@RequestMapping(value = "/returnConfirm", method = { RequestMethod.POST, RequestMethod.GET })
public String returnConfirm(Model model) {
try {
//申請IDを元に取得
//returnFormに値をセット
//仮の値を入れる
Integer id = 1;
//申請IDを元に取得
ReturnForm resultForm = rerurnService.getReturnForm(id);
resultForm.setIdRequest(id);
//returnFormに値をセット
// 画面に返す為の情報をセット
model.addAttribute("returnForm", returnForm());
model.addAttribute("returnForm", resultForm);
return "returnConfirm";
} catch (Exception e) {
e.printStackTrace();

View File

@@ -1,6 +1,6 @@
package com.example.demo.entity;
import java.sql.Timestamp;
import java.util.Date;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -23,7 +23,6 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor
public class Book_collectionEntity {
//蔵書ID
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@@ -47,7 +46,7 @@ public class Book_collectionEntity {
private String pubLisher;
//特記事項
@Column(name = "note text", nullable = true)
@Column(name = "note", nullable = true)
private String noteText;
//貸出フラグ -> charに変更する
@@ -61,7 +60,7 @@ public class Book_collectionEntity {
//更新日
@Column(name = "date_update", nullable = false)
@LastModifiedDate
private Timestamp dateUpdate;
private Date dateUpdate;
// public static Book_collection convertFrom(Book_collection book_collection) {
// // 値を既に持ったインスタンスの生成に、コンストラクタを使用するとこうなります。
@@ -92,7 +91,6 @@ public class Book_collectionEntity {
// employeeEntity.setidUpdate(searchConditionEmployee.getidUpdate());
// employeeEntity.setdateUpdate(searchConditionEmployee.getdateUupdate());
//
//// public static List<book_collection> createbook_collectionList(List<EmployeeEntity> employeeEntityList) {
//// return employeeEntityList.stream().map(EmployeeEntity::createbook_collection).toList();

View File

@@ -1,6 +1,5 @@
package com.example.demo.entity;
import java.security.Timestamp;
import java.util.Date;
import jakarta.persistence.Column;
@@ -8,8 +7,9 @@ import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import org.hibernate.annotations.Audited.Table;
//import org.hibernate.annotations.Audited.Table;
import org.springframework.data.annotation.LastModifiedDate;
import lombok.AllArgsConstructor;
@@ -97,5 +97,5 @@ public class Borrow_booksEntity {
* */
@Column(name = "date_update", nullable = false)
@LastModifiedDate
private Timestamp dateUpdate;
private Date dateUpdate;
}

View File

@@ -1,6 +1,6 @@
package com.example.demo.entity;
import java.security.Timestamp;
import java.util.Date;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
@@ -81,7 +81,7 @@ public class EmployeeEntity {
*/
@Column(name = "date_update", nullable = false)
@LastModifiedDate
private Timestamp dateUpdate;
private Date dateUpdate;
}
// public static EmployeeEntity convertForm(Employee employee) {

View File

@@ -0,0 +1,65 @@
package com.example.demo.service;
import java.util.Date;
import java.util.Optional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.entity.Borrow_booksEntity;
import com.example.demo.form.ReturnForm;
import com.example.demo.repository.Book_CollectionRepository;
import com.example.demo.repository.Borrow_BooksRepository;
import com.example.demo.repository.EmployeeRepository;
@Service
public class ReturnService {
Book_CollectionRepository book_CollectionRepository;
Borrow_BooksRepository borrowRepository;
EmployeeRepository employeeRepository;
@Autowired
public ReturnService(
Book_CollectionRepository book_CollectionRepository,
Borrow_BooksRepository borrowRepository,
EmployeeRepository employeeRepository) {
this.book_CollectionRepository = book_CollectionRepository;
this.borrowRepository = borrowRepository;
this.employeeRepository = employeeRepository;
}
public ReturnForm getReturnForm(int id) {
ReturnForm result = new ReturnForm();
Optional<Borrow_booksEntity> borrow = borrowRepository.findById(id);
// System.out.println(borrow);
result.setDateRequest(borrow.get().getDateRequest());//申請日
result.setDateBorrow(borrow.get().getDateBorrow());//貸出日
result.setDateScheduledReturn(borrow.get().getDateScheduledReturn());//返却予定日
var emp = employeeRepository.findById(borrow.get().getIdApplicant());
result.setNmEmployee(emp.get().getNmEmployee());//申請者名、社員名
var book = book_CollectionRepository.findById(borrow.get().getIdBook());
result.setIsBn(book.get().getIsBn());//ISBN
result.setNmBook(book.get().getNmBook());//書籍名
result.setPubLisher(book.get().getPubLisher());//出版社
result.setNoteText(book.get().getNoteText());
return result;
}
public void setReturn(int id_request, int id_employee) {
var borrow = borrowRepository.findById(id_request);
var book = book_CollectionRepository.findById(borrow.get().getIdBook());
book.get().setFlgLending('0');//「貸出フラグ」を【貸出可】
borrow.get().setStatus('0');//貸出テーブルの「ステータス」を【返却済
borrow.get().setDateReturn(new Date());//「返却日」を当日日付
borrow.get().setIdUpdate(id_employee);//「更新者」を更新した人のID
borrow.get().setDateUpdate(new Date());//「更新日」を当日日付に更新する。
borrowRepository.save(borrow.get());
book_CollectionRepository.save(book.get());
}
}