🏫 Open API_JAVA

[100일차] 관리자 주문관리 페이지 (검색 / 페이징 / 전체 클릭)

Dorothy_YANG 2022. 12. 16. 14:15
728x90

20221214(수)

  • 목차
    - 관리자 - 주문 기간 검색 및 페이징
    - 관리자 주문목록 - 페이징번호 기능
    - 관리자 주문목록 - 전체 클릭 시 초기화

< 관리자 - 주문 기간 검색 및 페이징 >

  • orderList.jsp

  • 페이지 번호 추가


  • AdOrder 컨트롤러
  • 클라이언트에서 페이지번호 클릭, 검색 클릭, 주문상태 버튼 클릭하게되면
  • @GetMapping("/orderList")

 

  • 3가지를 충족하는 파라미터를 가진다.
@GetMapping("/orderList")
public void orderList(Criteria cri, @ModelAttribute("odr_status") String odr_status, Model model) {

  • 시작날짜와 종료날짜 파라미터 추가하기
    ➡ 다른 코드영향 받음(매퍼 / 서비스 / 컨트롤러 수정하기)


  • AdOrderMapper.java
    같은 파라미터를 사용하는 것이 getOrderList와 getOrderTotalCount이므로 두곳 다 파라미터 추가!


  • AdOrderMapper.xml
     <if test ~ 구간> : 날짜검색이 사용이되는 사용이 안되든 문제가 발생하지 않도록 하는 것


  • <include refid = "period"> : 반복되는 쿼리 묶기 


  ✨ AND를 갖고있어야 한다.

   <include> 3개 모두 AND가 들어가 있어야 한다.

   세개가 다 사용이 안되었을 경우 앞에 where가 존재하기때문에 사용에 이상이 없음.

   odrstatus와 period, criteria는 모두 AND를 갖고있어야 한다.

   ** suffix 사용 시 AND가 들어간다!

 

  • AdOrder 매퍼 수정


  • AdOrder 서비스 수정


  • AdOrder 컨트롤러 수정

 

 


< 관리자 주문목록 - 페이징번호 기능 >

  • @ModelAttribute 추가(startDate, endDate)
  • @ModelAttribute : 파라미터에 들어있는 값을 jsp에서 참조하고자 할 때 사용한다.


  • orderList.jsp
    - 기존에 있던 코드 사용해서 작업하기(actionForm.*)

 

ex) 실행화면

  • 꼼꼼하게 날짜별 작업도 확인해야 한다.. 주소 파라미터는 참 중요한 의미를 갖고있다 :)
  • 페이징도 날짜 관련 정보를 갖고있어야 한다!

 


< 관리자 주문목록 - 전체 클릭 시 초기화 >

  • 검색한 후 다시 전체를 눌렀을 때 초기화되도록 설정하기
  • (지금은 주문번호가 필터링된 상태 그대로 있다.)


  • orderList.jsp 검색필드 초기화 코드 추가

 


< 관리자 주문목록 - 상품 상세보기 클릭 시 모달창 띄우기 >

ex) 예시화면

 

 

Modal

Use Bootstrap’s JavaScript modal plugin to add dialogs to your site for lightboxes, user notifications, or completely custom content.

getbootstrap.com


  • orderList.jsp에 script 코드 추가
  • 주문상세내역 버튼이벤트 설정
  • 다른 jsp코드는 건들지 않고 안의 내용만 바뀌어야 할 경우 ajax를 활용한다.


  • AdOrderMapper에 결제정보와 주문정보 추가


  • AdOrderService에 결제정보와 주문정보 추가


  • AdOrderController에 코드추가


  • orderList.jsp 수정

 

ex) 실행화면 - css 수정하기!

 

728x90