javaFx/달력

javaFx 예약시스템 시간표시해주기!

디비드킴 2021. 8. 11. 16:16

이제 날짜가 나오니
날짜를 클릭하면 시간이 나오게 해 보자

reservationService

reservationService.java

getTimes(setShowTimePageForm,reservationForm,day);
여기로 가보자

getTimes(setShowTimePageForm,reservationForm,day);

getTimes

정신없이 써져있는 코드들이 보인다

현재 시간을 가져온다
LocalDateTime localDateTime=LocalDateTime.now();
이유는 12시인데 11시 예약이 되면 안 되기 때문!
달력에 표시되어있는 월을 가져온다
Label month=(Label)reservationForm.lookup("#month");

메인을 봐보자
for(int i=openTime;i<=closeTime;i++) {
RadioButton radioButton=(RadioButton) ShowTimePageForm.lookup("#rdaio"+i);
radioButton.setText(i+"시~"+(i+1)+"시");
Label maxOfTime=(Label)ShowTimePageForm.lookup("#maxOfTime"+i);
maxOfTime.setText(maxPeopleByTime+"");
int alreadyPeople=compareTime(month, day,i);
if(alreadyPeople==maxPeopleByTime) {
radioButton.setDisable(true);
}
Label timeOfPeople=(Label)ShowTimePageForm.lookup("#timeOfPeople"+i);
timeOfPeople.setText(alreadyPeople+"");
if(day==localDateTime.getDayOfMonth()) {
if(i<=localDateTime.getHour()) {
radioButton.setDisable(true);
}
}
}
미리 설정해놓은 아이디 값에 접근한다
RadioButton radioButton=(RadioButton) ShowTimePageForm.lookup("#rdaio"+i);
Label maxOfTime=(Label)ShowTimePageForm.lookup("#maxOfTime"+i);
이름을 붙여준다
radioButton.setText(i+"시~"+(i+1)+"시");
최대 인원수 표시해준다
maxOfTime.setText(maxPeopleByTime+"");
수업 정원이 다 찼다면 disable
if(alreadyPeople==maxPeopleByTime) {
radioButton.setDisable(true);
}
현재 수업 인원수 표시하기
Label timeOfPeople=(Label)ShowTimePageForm.lookup("#timeOfPeople"+i);
timeOfPeople.setText(alreadyPeople+"");
이전시간 disabled
if(day==localDateTime.getDayOfMonth()) {
if(i<=localDateTime.getHour()) {
radioButton.setDisable(true);
}
}

compareTime

reservationService.java

테스트

완료!