|
|
@@ -8,6 +8,8 @@ import org.springframework.core.env.Environment;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
+import org.springframework.web.context.request.RequestContextHolder;
|
|
|
+import org.springframework.web.context.request.ServletRequestAttributes;
|
|
|
|
|
|
import com.gagaframework.web.parameter.GagaMap;
|
|
|
import com.kcp.J_PP_CLI_N;
|
|
|
@@ -215,21 +217,18 @@ public class TscKcpService {
|
|
|
/**
|
|
|
* KCP 취소 (pgTid, regNo, updNo)
|
|
|
* ** 주문 로직 진행 중 에러로 인한 취소
|
|
|
- * result.setIpAddress(request.getRemoteAddr());
|
|
|
* result.setPayStat(TscConstants.PaymentStat.DB_FAIL.value());
|
|
|
* result.setPayGb("E"); // O:주문시결제, D:배송시결제, E:에러(강제 결제 태울 때 또는 에러일 때)
|
|
|
* result.setModType("STSC");
|
|
|
* result.setModDesc("가맹점 결과 처리 오류 - 가맹점에서 취소 요청");
|
|
|
*
|
|
|
* ** 전체취소 필요 정보
|
|
|
- * result.setIpAddress(request.getRemoteAddr());
|
|
|
* param.setPayStat(TscConstants.PaymentStat.PAYMENT_CANCEL.value());
|
|
|
* param.setPayGb("O"); // O:주문시결제, D:배송시결제, E:에러(강제 결제 태울 때 또는 에러일 때)
|
|
|
* param.setModType("STSC"); // 전체취소
|
|
|
* param.setModDesc("가맹점 취소 - 전체 취소");
|
|
|
*
|
|
|
* ** 부분취소 필요 정보
|
|
|
- * result.setIpAddress(request.getRemoteAddr());
|
|
|
* param.setPayStat(TscConstants.PaymentStat.PAYMENT_CANCEL.value());
|
|
|
* param.setPayGb("O"); // O:주문시결제, D:배송시결제, E:에러(강제 결제 태울 때 또는 에러일 때)
|
|
|
* param.setModType("STPC");
|
|
|
@@ -255,6 +254,8 @@ public class TscKcpService {
|
|
|
@Transactional("shopTxnManager")
|
|
|
public void kcpCancel(Payment param) {
|
|
|
// try { request.setCharacterEncoding("euc-kr"); } catch(Exception e) {e.printStackTrace();}
|
|
|
+ HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
|
|
|
+ String cust_ip = request.getRemoteAddr();
|
|
|
|
|
|
J_PP_CLI_N c_PayPlus = new J_PP_CLI_N();
|
|
|
Payment payment = new Payment();
|
|
|
@@ -287,9 +288,10 @@ public class TscKcpService {
|
|
|
c_PayPlus.mf_set_us( mod_data_set_no, "mod_depositor", param.getAccountNm()); // 환불 요청 계좌주명
|
|
|
}
|
|
|
|
|
|
+ // 일반 취소의 모듈 실행 mf_do_tx 에는 값이 안들어가고, 무통장입금 환불계좌 취소에는 custIp가 들어가도록 되어있어 계좌취소용 변수 사용
|
|
|
String custIp = "";
|
|
|
if("STHD".equals(param.getModType()) || "STPD".equals(param.getModType())) {
|
|
|
- custIp = f_get_parm(param.getIpAddress());
|
|
|
+ custIp = request.getRemoteAddr();
|
|
|
}
|
|
|
|
|
|
param.setTranCd("00200000");
|
|
|
@@ -367,7 +369,9 @@ public class TscKcpService {
|
|
|
c_PayPlus.mf_init( "", pgUrl, pgPort, 0, env.getProperty("pg.kcp.log.dir") );
|
|
|
c_PayPlus.mf_init_set();
|
|
|
|
|
|
- String custIp = custAccount.getIpAddress();
|
|
|
+ HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
|
|
|
+ String custIp = request.getRemoteAddr();
|
|
|
+ //String custIp = custAccount.getIpAddress();
|
|
|
String ordNo = String.valueOf(custAccount.getOrdNo());
|
|
|
String bankCode = custAccount.getBankCd();
|
|
|
String accountNo = custAccount.getAccountNo();
|