견적요청은 navbar 상단을 통해서 들어갈 수 있는데 로그인 하지 않으면 견적요청 버튼 자체가 안나오게 처리를 했다
(위 코드 사진 )
그래도 url을 통해 들어오는 것을 방지하기 위해 견적요청폼 페이지에도 따로 코드를 넣어놨다 (아래 코드 사진)
코드의 줄 친 곳을보면 name은 다 동일한데 value는 다 다른것을 알 수 있다
예시를 들어 어떤 종류의 이사를 하는지 고르는 영역에서의 name은 다 동일하게 moveType 이지만 value의 값들은 1, 2, 3으로 다 다르다
나중에 전달되는 파라미터값이 name=???&value=??? 이 구분되기 때문에 같은 구분의 영역들은 다 같은 이름으로 지정했다
estimateform.jsp 에서 제출버튼을 누르면 estimate.jsp로 각 파라미터 값들을 보낸다
그 보낸 값들을 저장하는 코드가 위 사진첨부한 코드이다
한 테이블을 사용하는 것이 아닌 여러 테이블을 사용하다보니 기존처럼 insert 할 때 seq.nextval을 사용하면 같은 견적번호에 들어가야 할 견적들이 따로 들어가서 sequence 번호를 따로 증가시키고 그 번호를 기입하는 방식으로 사용하였다
(Ex. 같은 주문에 옵션이 추가된다고 주문번호가 다르게 들어가는 것이 아닌 같은 주문번호로 들어가게끔 하는 방식이라고 생각한다 )
받아온 값들을 다 UserEstimate 객체에 저장하는 과정이다
UserEstimateObject 는 주요 물품을 저장하는 테이블인데 파라미터값들을 배열로 저장해서 for문을 통해
주요물품 항목과 그 양을 하나씩 저장해서 insert 한다
objNo와 objAmount는 주요 물품의 종류에 따라 번호로 나누었고 Amount는 주요 물품의 갯수를 나타낸다
가장 신경을 많이 썼던 부분인 주요 물품 이다
다른 부분은 단순히 radio 타입으로 해서 여러 개중 하나 선택하기만 하면 됐었는데
다른 타입들과 달리 여러개 있을 수 있는 부분이라 숫자를 가운데 두고 양 옆에 '-' '+' 버튼을 누르면 숫자가 줄어들게 해놨다
견적을 다 작성해서 제출버튼을 누르면 alert 알람이 나오면서 견적이 완료됬음을 알 수 있다
'프로젝트' 카테고리의 다른 글
파이널 프로젝트_ @Scheduler를 활용한 통계 저장 기능 (0) | 2024.05.01 |
---|---|
파이널 프로젝트_로그인, 로그아웃(Spring Boot, Session ) (0) | 2024.04.20 |
파이널 프로젝트_회원가입(Spring Boot, @Valid , MySQL) (0) | 2024.04.20 |
세미프로젝트_마이페이지, 개인정보 수정 (0) | 2024.02.07 |
세미프로젝트_로그인, 회원가입 정리 (0) | 2024.02.04 |