이제 예약 내역 페이지를 만들 건데
1. 예약시간이 지난 예약은 표시해주지 않는다
2. 히스토리를 같이 표시해준다
vo를 고쳐주자!
추후 수정/삭제를 위해 몇 가지를 추가해주자!
@Column(name = "rid",nullable = false)
int rid;
@Column(name="email",nullable = false)
String email;
@Column(name = "seat",nullable = false)
String seat;
controller
예약 내역 페이지에 갈 때 필요한 것들이다
reservationservice.getReservationByEmail(email)는 시간이 아직인 예약
historyservice.getHistories(email,page,totalpages)는 히스토리를 가져오는 함수
히스토리는 많이 쌓일 가능 성이 커서 페이징으로 가져오자
(추후 날짜별 예약을 받게 할 수 있게 된 후에 reservation도 페이징으로 가져오게 만들 것이다)
service
이거는 현재 미완성이다
이유는 예약시간이 지났을 때와 상관없이
모든 예약을 들고 오기 때문이다
service
자 근데
int totalpages=0;
try {
int count=historydao.countByEmailNative(email);
totalpages=count/pagesize;
if(count%pagesize>0){
totalpages++;
}
return totalpages;
} catch (Exception e) {
e.printStackTrace();
}
return 0;
보면 이 함수는
댓글/게시물 등 여러 상황에서
쓰이고 있다 그러므로 유틸로 묶어 주도록 하겠다!
service
훨씬 깔끔해진다
service
도 바꿔준다
아는데 여전히 불편하다
array=historydao.findByEmailNative(email,fisrt-1, end+1);
array=historydao.findByEmailNative2(email);
는 공식만 제대로 알면 합칠 수 있는 건데 참...
fisrt=(page-1)*pagesize+1;
end=fisrt+pagesize-1;
얘도 유틸로 합쳐주자!
service
사실 어차피 고쳐야 해서 의미는 없지만 이렇게 따로 빼주는 연습!
(괜한 짓 한 거 같다 ㅋㅋㅋ)
service
dao
html
결과
자 근데 현재 2시 13분 즉 40번째 예약인
14시 거는 위에 표시되면 안 된다 다음번엔 그 작업을 해보자
아 맥북으로 오래 코딩하려니까 정신이 없다
모니터도 작아서 코드가 잘 써지고 있나 이런 생각도 들고
어서 집 가서 컴퓨터로 하고 싶다 ㅠㅠ
'Spring boot kim's cafe > 예약시스템' 카테고리의 다른 글
Springboot 결제 시스템 만들기! (1) 토큰 발급받기 with 아임포트, HttpHeaders ,RestTemplate,Response (7) | 2021.07.07 |
---|---|
Springboot 예약내역 페이지 만들기!(2) 날짜를 비교하자 with Timestamp and LocalDateTime (0) | 2021.07.06 |
Springboot 당일 예약 시스템 만들기!(3) with json and Transactional (0) | 2021.07.05 |
Springboot 당일 예약시스템 만들기!(2) with Enum (0) | 2021.07.05 |
Springboot 당일 예약시스템 만들기!(1) (0) | 2021.06.30 |