Spring boot kim's Shop/음식구매시스템

Springboot 음식구매시스템!(2) 구매하기!

디비드킴 2021. 9. 27. 15:35

이제 구매만 만들고 게시판 만들러 가자!

 

프런트 서버

buyFoodPopUP

html
js

부모 창 함수 호출

 selectItems=opener.parent.getSelectItems();

삭제 발동될 함수

function deleteItem(className)

for(var i=0;i<selectItems.length;i++)

이렇게 해줘야 꼬이지가 않는다

 

상품 구매 시 이름 만들기

function makeItemName() 

for(var i=0;i<selectItems.length;i++)

(말 그대로 창에만 띄어지는 것이고 db에는 각제품 별 이름/수량이 들어간다)

 

js

예약 페이지와 동일한 구매 요청이다

카드/가상계좌

 

 

백엔드 서버는 

결제시스템 리팩터링 시리즈 때 사용한 로직을 사용할 예정이다

(사실 저 로직이 다른 상품 구매에도 잘 작동하는지 확인하려고 만들고 있는 것이기도 하다)

https://cordingmonster.tistory.com/160?category=1041862 

 

Springboot 결제 시스템 리팩토링!(1) 카드/가상계좌 세틀뱅크

바보였다 테스트 신청하자마자 하면 되는 거였는데 3일 전에 알고 부랴부랴 시스템을 개편했다 진짜 힘들었다 변동사항 결제 요청 이전 아임 포트-> 세틀 뱅크 현재 세틀 뱅크 디렉트 연결 예약

cordingmonster.tistory.com

https://cordingmonster.tistory.com/162?category=1041862 

 

Spring boot 결제시스템 리팩토링!(2) with 세틀뱅크/카카오페이

일반 결제 취소 = 카드/카카오페이/가상계좌 입금 후 = 돈이 들어온 후 환불만 해주면 됨 시나리오 요청-> 취소가능 여부 검증-> 예약/상품 테이블 선택 아이템 삭제-> 각 아이템별 결제수단 추출->

cordingmonster.tistory.com

https://cordingmonster.tistory.com/163?category=1041862 

 

Springboot 결제시스템 리팩토링!(3) 가상계좌 입금전 부분취소 with 세틀뱅크

마지막 페이즈이다 제일 어려웠다 가상계좌는 입금 전/후로 나뉜다 거기서도 부분취소가 제일 문제가 된다 입금 후라면 그냥 환불이지만 입금 전이라면... 복잡해진다 일단 세틀 뱅크 사이트를

cordingmonster.tistory.com

테스트

mysql

제품 정보 테이블

구매요청

https://localhost:8443/buyFoodPopUP.html

s/m/r/l을 각 고르고

여기서 사용자가 변심해서 m사이즈 취소

s사이즈 1개 r사이즈 2개 l사이즈 1개

500+1500*2+2000=5500 잘 맞다!

mysql

 

db에 잘 들어갔고

product테이블에서도 잘 count가 minus 되었다

물론 너무 대충 만든 페이지여서 버그가 좀 있는데

백엔드 로직이 잘 돌아가는 게 확인되었으니 

이제 진짜 게시판 만들러 가자

공교롭게도 학원에서 jsp 마지막 과제로 

게시판을 만드는 중인데 토이 프로젝트도 게시판 차례이다 ㅎㅎ