Java SpringBoot, DateTime,Timestamp автоматическое заполнение в БД, как сделать через Model и Controller
import com.company.blog.models.*;
import com.company.blog.repo.RequestRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.sql.Timestamp;
@Controller
public class AccountClientControllers {
@Autowired
private RequestRepository requestRepository;
@GetMapping("/Request")
public String Request(Model model){
model.addAttribute("title", "Заявки");
return "ClientHTML/request";
}
@PostMapping("/Request")
public String Request( @RequestParam Timestamp createDate,
@RequestParam String korpus,
@RequestParam String myRoomId,
@RequestParam String textRequest,
@RequestParam String toWhom,
@RequestParam Timestamp createEndDate,
@RequestParam String fulfilled,
Model model) {
Request post = new Request (createDate,korpus, myRoomId, textRequest,
toWhom,createEndDate,fulfilled);
requestRepository.save(post);
return "request";
}
}
import org.hibernate.annotations.CreationTimestamp;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.sql.Timestamp;
@Entity
public class Request {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long request_id;
@CreationTimestamp
private Timestamp createDate;
private String korpus;
private String myRoomId;
private String textRequest;
private String toWhom;
@CreationTimestamp
private Timestamp createEndDate;
private String fulfilled;
public Request(Timestamp createDate, String korpus, String myRoomId, String textRequest,
String toWhom, Timestamp createEndDate, String fulfilled) {
this.createDate=createDate;
this.korpus = korpus;
this.myRoomId = myRoomId;
this.textRequest = textRequest;
this.toWhom = toWhom;
this.createEndDate = createEndDate;
this.fulfilled = fulfilled;
}
public Request (){
}
public Long getRequest_id() {
return request_id;
}
public void setRequest_id(Long request_id) {
this.request_id = request_id;
}
public Timestamp getCreateDate() {
return createDate;
}
public void setCreateDate(Timestamp createDate) {
this.createDate = createDate;
}
public String getKorpus() {
return korpus;
}
public void setKorpus(String korpus) {
this.korpus = korpus;
}
public String getMyRoomId() {
return myRoomId;
}
public void setMyRoomId(String myRoomId) {
this.myRoomId = myRoomId;
}
public String getTextRequest() {
return textRequest;
}
public void setTextRequest(String textRequest) {
this.textRequest = textRequest;
}
public String getToWhom() {
return toWhom;
}
public void setToWhom(String toWhom) {
this.toWhom = toWhom;
}
public Timestamp getCreateEndDate() {
return createEndDate;
}
public void setCreateEndDate(Timestamp createEndDate) {
this.createEndDate = createEndDate;
}
public String getFulfilled() {
return fulfilled;
}
public void setFulfilled(String fulfilled) {
this.fulfilled = fulfilled;
}
}
import com.company.blog.models.Request;
import org.springframework.data.repository.CrudRepository;
public interface RequestRepository extends CrudRepository <Request, Long> {
}
<section class="newRequest">
<h3 >Написать заявку</h3>
<br>
<form action="/Request" method="post">
<div class="allDivRequest">
<div class="DivRequest">
<input type="text" onkeyup="checkParams()" id="korpus" name="korpus" placeholder="Ваш № корпуса">
</div>
<div class="DivRequest">
<input type="text" onkeyup="checkParams()" id="myRoomId" name="myRoomId" placeholder="Ваш № комнаты">
</div>
<div class="DivRequest">
<textarea class="size" name="text" id="text" placeholder="Опишите проблему"></textarea>
</div>
<div class="DivRequest">
<button type="submit">Добавить</button>
</div>
</div>
</form>
</section>
x
Есть таблица заявок, где первую часть (Дата и время, Корпус, Комната, Описание заявки, Кому) принадлежит
клиенту, ему все поля доступны кроме (Дата и время)
Вторую часть (уже редактирует) сотрудник (Статус, Дата и время, кто выполнил) сотруднику также эти поля доступны для редактирования кроме (Дата и время)
Я хочу чтобы когда клиент заносил (Корпус, Комната, Описание, Кому) (Дата и время) ставилась автоматически, и точно также сотруднику когда тот редактирует (добавляет записи в БД) что выполнил
Как правильно составить Model и Controller, чтобы все работало
Буду рад любой помощи и источникам информации