|
|
@@ -26,8 +26,7 @@ public class TscKcpService {
|
|
|
return val;
|
|
|
}
|
|
|
|
|
|
- public GagaMap kcpPayRequest(Payment param, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
|
|
- GagaMap result = new GagaMap();
|
|
|
+ public Payment kcpPayRequest(Payment param, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
|
|
// PC pay_method
|
|
|
/* = 신용카드 : 100000000000, 계좌이체 : 010000000000, 가상계좌 : 001000000000 = */
|
|
|
/* = 포인트 : 000100000000, 휴대폰 : 000010000000, 상품권 : 000000001000, ARS : 000000000010 = */
|
|
|
@@ -73,46 +72,40 @@ public class TscKcpService {
|
|
|
// 06. 승인 결과 값 추출
|
|
|
if ("pay".equals(param.getReqTx())) {
|
|
|
if ("0000".equals(param.getResCd())) {
|
|
|
- param.setTno(c_PayPlus.mf_get_res("tno")); // KCP 거래 고유 번호
|
|
|
- param.setPntIssue(c_PayPlus.mf_get_res("pnt_issue")); // 결제 포인트사 코드
|
|
|
- param.setAmount(c_PayPlus.mf_get_res("amount").isEmpty() ? 0 : Integer.parseInt(c_PayPlus.mf_get_res("amount"))); // KCP 실제 거래 금액
|
|
|
- param.setCouponMny(c_PayPlus.mf_get_res("coupon_mny").isEmpty() ? 0 : Integer.parseInt(c_PayPlus.mf_get_res("coupon_mny"))); // 쿠폰금액
|
|
|
+ param.setPgTid(c_PayPlus.mf_get_res("tno")); // KCP 거래 고유 번호
|
|
|
+ //param.setPntIssue(c_PayPlus.mf_get_res("pnt_issue")); // 결제 포인트사 코드
|
|
|
+ param.setPayAmt(Integer.parseInt(c_PayPlus.mf_get_res("amount"))); // KCP 실제 거래 금액
|
|
|
+ param.setPgCpnAmt(c_PayPlus.mf_get_res("coupon_mny").isEmpty() ? 0 : Integer.parseInt(c_PayPlus.mf_get_res("coupon_mny"))); // 쿠폰 할인금액
|
|
|
|
|
|
/* = -------------------------------------------------------------------------- = */
|
|
|
/* = 06-1. 신용카드 승인 결과 처리 = */
|
|
|
/* = -------------------------------------------------------------------------- = */
|
|
|
if ("100000000000".equals(param.getUsePayMethod())) {
|
|
|
- /*card_cd = c_PayPlus.mf_get_res("card_cd"); // 카드사 코드
|
|
|
- card_name = c_PayPlus.mf_get_res("card_name"); // 카드사 명
|
|
|
- app_time = c_PayPlus.mf_get_res("app_time"); // 승인시간
|
|
|
- app_no = c_PayPlus.mf_get_res("app_no"); // 승인번호
|
|
|
- noinf = c_PayPlus.mf_get_res("noinf"); // 무이자 여부
|
|
|
- quota = c_PayPlus.mf_get_res("quota"); // 할부 개월 수
|
|
|
- partcanc_yn = c_PayPlus.mf_get_res("partcanc_yn"); // 부분취소 가능유무
|
|
|
- card_bin_type_01 = c_PayPlus.mf_get_res("card_bin_type_01"); // 카드구분1
|
|
|
- card_bin_type_02 = c_PayPlus.mf_get_res("card_bin_type_02"); // 카드구분2
|
|
|
- card_mny = c_PayPlus.mf_get_res("card_mny"); // 카드결제금액*/
|
|
|
-
|
|
|
- /* = -------------------------------------------------------------- = */
|
|
|
- /* = 06-1.1. 복합결제(포인트+신용카드) 승인 결과 처리 = */
|
|
|
- /* = -------------------------------------------------------------- = */
|
|
|
- /*if (pnt_issue.equals("SCSK") || pnt_issue.equals("SCWB")) {
|
|
|
- pnt_amount = c_PayPlus.mf_get_res("pnt_amount"); // 적립금액 or 사용금액
|
|
|
- pnt_app_time = c_PayPlus.mf_get_res("pnt_app_time"); // 승인시간
|
|
|
- pnt_app_no = c_PayPlus.mf_get_res("pnt_app_no"); // 승인번호
|
|
|
- add_pnt = c_PayPlus.mf_get_res("add_pnt"); // 발생 포인트
|
|
|
- use_pnt = c_PayPlus.mf_get_res("use_pnt"); // 사용가능 포인트
|
|
|
- rsv_pnt = c_PayPlus.mf_get_res("rsv_pnt"); // 총 누적 포인트
|
|
|
- total_amount = amount + pnt_amount; // 복합결제시 총 거래금액
|
|
|
- }*/
|
|
|
+ param.setCardKind(c_PayPlus.mf_get_res("card_cd")); // 카드종류. 결제수단이 "30:신용카드"일 때 사용. PG사에서 받은 값 ?? card_cd: 카드 발급사 코드
|
|
|
+ param.setCardBank(c_PayPlus.mf_get_res("card_cd")); // 카드발급은행. 결제수단이 "30:신용카드"일 때 사용. PG사에서 받은 값 ?? card_cd: 카드 발급사 코드
|
|
|
+ param.setCardNm(c_PayPlus.mf_get_res("card_name")); // 카드명. 결제수단이 "30:신용카드"일 때 사용. PG사에서 받은 값 card_name: 결제건의 발급 사 명
|
|
|
+ log.info("CHECK c_PayPlus.mf_get_res(\"app_time\") :::: {}", c_PayPlus.mf_get_res("app_time"));
|
|
|
+ param.setPayDt(c_PayPlus.mf_get_res("app_time"));
|
|
|
+ param.setPgTradeNo(c_PayPlus.mf_get_res("app_no")); // PG거래번호(승인번호)
|
|
|
+ param.setCardMips(c_PayPlus.mf_get_res("quota")); // 할부개월수
|
|
|
+ //noinf = c_PayPlus.mf_get_res("noinf"); // 무이자 여부
|
|
|
+ param.setCardPcableYn(c_PayPlus.mf_get_res("partcanc_yn")); // 부분취소 가능유무
|
|
|
+ if("0".equals(c_PayPlus.mf_get_res("card_bin_type_02"))) { // 결제건의 카드 구분 정보 (일반 : 0, 체크 : 1)
|
|
|
+ param.setCardType("N"); // 신용카드
|
|
|
+ } else {
|
|
|
+ param.setCardType("Y"); // 체크카드, 기프트카드(G)는 어떻게 알아봐야하는지 확인 ?
|
|
|
+ }
|
|
|
}
|
|
|
+ } else {
|
|
|
+ throw new IllegalArgumentException("결제 실패하였습니다.");
|
|
|
}
|
|
|
+ } else {
|
|
|
+ // PAY가 아닐 경우 ?? 다른 메서드로 진행할지 확인 후 Exception 처리할건지 취소가 진행될건지 소스 진행
|
|
|
+ int a = 1;
|
|
|
}
|
|
|
|
|
|
- /* = -------------------------------------------------------------------------- = */
|
|
|
- /* = 06-2. 계좌이체 승인 결과 처리 = */
|
|
|
- /* = -------------------------------------------------------------------------- = */
|
|
|
|
|
|
- return result;
|
|
|
+
|
|
|
+ return param;
|
|
|
}
|
|
|
}
|