아임포트 7

Springboot 결제시스템!(6) 아임포트 환불!(미완성)

경우의 수가 있었다 1. 결제된 상품 환불/부분 환불 2. 가상계좌로 결제된 상품 환불/부분 환불 3. 미입금 계좌 환불/부분 환불 테스트 계정으로 할 수 있는 건 1번이었다 2/3번은 세틀 뱅크로 하면 가능 하지만 현재 isp카드결제에서 오류가 나서(j999) 문의를 넣어놓은 상태이다 토이 프로젝트여서 더는 시간을 끌 수 가없다 다음 토이 프로젝트에서 집중적으로 다뤄봐야 할 거 같다 그래서 문의를 했다 디렉트로 pg사로 테스트할 수없는지 kg이니시스는 사업자 등록이 꼭 필요하다고 해서 불가능했다 설명도 딱히 할 게 없다 코드도 길어지기만 했고 미완성인 상태이다 재밌게 만들고 있었는데 김이 확 빠졌다 대충 하고.. 게시판으로 가자 설명도 딱히 할 게 없어서 사진 한 장으로 대체한다 optional은 까먹..

Springboot 예약변경 시스템!(1) with 아임포트

마지막이다 답글은 다음 kimsshop을 만들면서 할 생각이다 예약 변경 기능을 만들건대 예약/취소 두 개를 합치면 된다 순서는 수정 예약이 반영된 후 예약이 끝나면 이전 예약을 환불 처리한다 기존 만들어놓은 함수를 이용하면 된다 restcontroller 이메일 검사를 한다 if(userservice.getEmailCheck(email) 전화인증 검사를 한다 if(userservice.getPhoneCheck(email) 좌석 선택 시 session에 담아 놓았던 좌석 이름을 가져온다 seatInforVo seatInforVo=(seatInforVo)httpSession.getAttribute("seat"); 결제를 검증한다 iamportservice.confrimBuyerInfor(imp_uid,re..

Springboot 결제+예약(2) 부분취소/환불 하기 with 아임포트

예약 취소는 db에 있는 imp_uid를 사용하면 된다 예약을 했다면 imp_uid도 같이 들어가 있다 이제 삭제 로직을 만들건대 개별 취소가 가능해야 하기 때문에 가격이 들어올 수 있게 코드를 바꾸자 restcontroller reservationdto.setPrice(seatInforVo.getPrice()); dto에 넣어주고 vo @Column(name = "price",nullable = false) private int price; this.price=reservationdto.getPrice(); 추가해주면 테이블이 바뀌고 save 할 때 자동으로 들어간다 service는 바꿀 필요가 없다 이제 환불을 구현해보자 service 검증을 해준다 존재하는 예약인지 올바른 예약인지 그리고 맞다면 객..

Springboot 결제+예약!(1) 당일 예약 시스템 with 아임포트 ,j쿼리,HttpSession

이전 예약 시스템은 결제 시스템이 없는 시스템이었다 예약하는데 꼭 결제 시스템을 넣어 보고 싶어서 이틀 동안 고생한 결과 아임 포트를 이용해서 성공했다 다만 순수 자바스크립트가 아닌 j쿼리의 힘을 어느 정도 빌려서 만들었다 시작해보자! 예약결제 자체는 아임 포트에서 자체적으로 제공해줘서 별로 어렵지 않다 하지만 검증/취소가 서버 쪽에서 이뤄져야 해서 아임 포트 api를 열심히 뒤져서 만들었다 html 그다음 좌석에 맞는 예약 가능 시간을 가져온다 j쿼리를 사용해서 서버에서 예약 가능 시간을 가져와서 개수만큼 체크 박스를 만들어준다 $('#requesthourdiv').append(""+alreadytime[i]+"시~"+ii+"시"); 정말 편리하다 j 쿼리 서버소스는 이전에 여기서 구현했다 https:..

Springboot 결제시스템 만들기!(3) 결제취소 with 아임포트,HttpEntity,RestTemplate,HttpHeaders,Json

토큰을 발급받고 나니까 얼추 적응을 했는지 또 금방 환불을 구현했다 어떻게 api와 통신하는지 감을 좀 잡은 거 같다 service 헤더에는 토큰을 넣어주고 바디에는 결제 id를 넣어준다 그다음 주소로 쏴주고 dto를 만들어서 받아준다! dto 진짜 편리하다 dto로 받는 기능 결과 너무 기쁘다 ㅠㅠㅠ 외부 api 사용하기! 포기하고 싶었던 구간을 넘었다! 첫날 진짜 몇 시간 동안 토큰 받는 거에 매달렸는데 그다음 감을 잡았는지 일사천리로 했다 ㅠㅠㅠ 토큰/결제정보 받기/결제 취소, 환불 모두 터득했다 ㅠㅠㅠ 처음에 어 뭐야 겁나 쉽네 결제시스템 했는데... 검증을 서버에서 해야 한다니ㅋㅋㅋ 하 그래도 아임 포트가 있어서 이 정도지 직접 구현했다가는 어후... 이제 이걸 토대로 예약/변경/취소를 만들자!

Springboot 결제 시스템 만들기!(2) 결제정보 가져오기 with 아임포트,RestTemplate,HttpHeaders,Json,HttpEntity

이제 토큰을 받아왔으니 토큰을 이용해 결제정보가 맞는지 확인하기 위해 결제정보를 가져와보자! 생각보다 빨리 해냈다 https://api.iamport.kr/ API-아임포트 api.iamport.kr apl를 자세히 보면 payments : 결제내역 조회 및 결제 취소 /payments/{imp_uid}를 사용해서 가져왔다 dto service 처음에 nobody오류가 나길래 body로 토큰을 보냈는데 또 같은 오류가 났다 그래서 보통 이런 건 헤더로 보내던데 해서 그냥 헤더로 보내봤다 결과 구매정보를 받았다 근데 분명 api에 get이라고 되어있었는데 postForObject를 사용해서 성공했다.. 이제 가격을 비교해서 좌석 가격과 일치하면 true를 리턴하고 아니라면 결제 취소를 하자!

Springboot 결제 시스템 만들기! (1) 토큰 발급받기 with 아임포트, HttpHeaders ,RestTemplate,Response

진짜 죽는 줄 알았다 결제만 몇 번 한 건지 모르겠다 오후 2시 부터 했는데 현재 8시이다 일단 결제 시스템을 만든 이유는 사실 예약 변경/수정/삭제는 이제 db에서 delete/update/insert 하는 일만 남았었다 또 똑같이 만들기엔 좀 발전이 없는거 같아서 결제 시스템을 적용 하려고 한다! 처음 결제를 하는건 어렵지 않다 그냥 프론트에서 해주면 되는데 문제는 서버였다 검증을 해주려면 일단 토큰부터 발급받아야 하는데 진짜 겁나 힘들었다 내가 찾은 해답은 이것이다 js 알아서 제공해주는 기능이고 rsp가 오면 성공적이라면 rsp id를 서버로 준다 restcontroller 일단 서비스고 뭐고 빠른 테스트를 위해 컨트롤러에서 테스트 중이었다 진짜 죽는 줄 알았다 진짜 서버로 통신 어떻게 해야 하는..