Forráskód Böngészése

이태영 - 20210304 임시커밋

xodud1202 5 éve
szülő
commit
a61d123464

+ 31 - 0
src/main/java/com/style24/front/biz/web/TsfCartController.java

@@ -4,6 +4,9 @@ import java.text.SimpleDateFormat;
 import java.util.Collection;
 import java.util.Date;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 import com.gagaframework.web.rest.server.GagaResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
@@ -207,4 +210,32 @@ public class TsfCartController extends TsfBaseController {
 		cartService.updateCartOption(param);
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
+
+	/**
+	 * 주문페이지
+	 *
+	 * @param
+	 * @return
+	 * @author xodud1202
+	 * @since 2021. 03. 05
+	 */
+	@ResponseBody
+	@RequestMapping(value = "/kcp/vBankEnd")
+	public String vBankEnd(Payment param, HttpServletRequest request, HttpServletResponse response) {
+
+		log.info("CHECK site_cd ::::: {}", request.getParameter("site_cd"));
+		log.info("CHECK tno ::::: {}", request.getParameter("tno"));
+		log.info("CHECK order_no ::::: {}", request.getParameter("order_no"));
+		log.info("CHECK tx_cd ::::: {}", request.getParameter("tx_cd")); // 무통장 입금 통보는 TX00
+		log.info("CHECK result ::::: {}", request.getParameter("result"));
+		log.info("CHECK noti_id ::::: {}", request.getParameter("noti_id"));
+		log.info("CHECK ipgm_mnyx ::::: {}", request.getParameter("ipgm_mnyx"));
+		log.info("CHECK totl_mnyx ::::: {}", request.getParameter("totl_mnyx"));
+		log.info("CHECK noti_id ::::: {}", request.getParameter("noti_id"));
+		log.info("CHECK op_cd ::::: {}", request.getParameter("op_cd"));	// 13이 오면 입금이 잘못된 경우로 취소 노티가 온다고함.
+		log.info("CHECK cash_a_no ::::: {}", request.getParameter("cash_a_no"));
+		log.info("CHECK cash_no ::::: {}", request.getParameter("cash_no"));
+
+		return "0000";
+	}
 }

+ 13 - 5
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -258,15 +258,19 @@ public class TsfOrderController extends TsfBaseController {
 	 *
 	 * @param
 	 * @return
-	 * @author jsh77b
-	 * @since 2021. 02. 02
+	 * @author xodud1202
+	 * @since 2021. 03. 05
 	 */
+	@ResponseBody
 	@RequestMapping(value = "/pay/result/response")
 	public ModelAndView payResultResponse(Payment param, HttpServletRequest request, HttpServletResponse response) {
 		ModelAndView mav = new ModelAndView();
 
+		param.setPayGb("KCP");
 		orderService.orderPgPayResult(param, request, response);
-		
+
+		mav.addObject("payment", param);
+
 		mav.setViewName(super.getDeviceViewName("pg/kcpOrder"));
 		return mav;
 	}
@@ -400,7 +404,7 @@ public class TsfOrderController extends TsfBaseController {
 		// KCP 주문요청 공통 데이터
 		payment.setReqTx("pay");						// 필수 (주문시 only "pay")
 		payment.setOrdrIdxx((int)(Math.random()*10000));// 필수
-		payment.setPayMethod("100000000000");			// 필수 결제수단코드(신용카드 : 100000000000, 계좌이체 : 010000000000, 가상계좌 : 001000000000, 포인트 : 000100000000, 휴대폰 : 000010000000, 상품권 : 000000001000, ARS : 000000000010)
+		payment.setPayMethod("001000000000");			// 필수 결제수단코드(신용카드 : 100000000000, 계좌이체 : 010000000000, 가상계좌 : 001000000000, 포인트 : 000100000000, 휴대폰 : 000010000000, 상품권 : 000000001000, ARS : 000000000010)
 		payment.setGoodName("LTY_TEST_GOODS_NAME");		// 필수
 		payment.setGoodMny(1779);						// 필수
 		payment.setBuyrName("LTY");						// 필수
@@ -418,7 +422,11 @@ public class TsfOrderController extends TsfBaseController {
 		// KCP 신용카드 옵션
 		payment.setQuotaopt(12);						// 최대 할부 개월 수
 
-		// KCP PAYCO
+		// KCP 무통장입금 옵션
+		payment.setVcntExpireTerm(3);					// 무통장입금 유효기간
+		payment.setDispTaxYn("Y");
+
+		// KCP PAYCO 호출
 		if(!StringUtils.isEmpty(payment.getPgGb()) && TscConstants.PgGb.PAYCO.value().equals(payment.getPgGb())) {		// PAYCO일경우
 			payment.setPaycoDirect("Y");
 			payment.setPayMthod("100000000000");		// PAYCO일때 payMethod 뿐 아니라 payMthod도 송부해야함. cart와 동일하게 송부하면됨.

+ 7 - 2
src/main/resources/config/application-locd.yml

@@ -57,13 +57,18 @@ download.path: /WIDE/workspace/files/data
 # PG
 pg:
     kcp:
-        log.dir: D:\\WIDE\\workspace\\webapps\\style24\\STYLE24\\style24.front\\src\\main\\webapp\\logs
-        gw:
+        log.dir: D:\\WIDE\\workspace\\files\\data\\style24\\logs\\front
+        user.type: PGNW
+        gw:     # CARD
+            url: testpaygw.kcp.co.kr
+            port: 8090
+        pa:     # 무통장입금
             url: testpaygw.kcp.co.kr
             port: 8090
         js.url: https://testpay.kcp.co.kr/plugin/payplus_web.jsp
         server: false
         site:
+            id: T0000
             cd: T0000
             key: 3grptw1.zW0GSo4PQdaGvsF__
             name: KCP TEST SHOP

+ 1 - 1
src/main/resources/config/application-tsit.yml

@@ -20,7 +20,7 @@ logging:
 
 domain:
     admin: //tdadmin.style24.com
-    front: //tdfront.style24.com
+    front: //http://ts5000.ipdisk.co.kr/
     style24: //tdfront.style24.com
     image: //tdimage.style24.com
     cdnimage: //tdimage.style24.com

+ 2 - 11
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -33,8 +33,7 @@
 		/* 해당 함수의 위치는 payplus.js 보다먼저 선언되어여 합니다.    */
 		/* Web 방식의 경우 리턴 값이 form 으로 넘어옴                   */
 		/****************************************************************/
-		function m_Completepayment( FormOrJson, closeEvent )
-		{
+		function m_Completepayment( FormOrJson, closeEvent ) {
 			var frm = document.order_info;
 
 			/********************************************************************/
@@ -44,15 +43,7 @@
 			/********************************************************************/
 			GetField( frm, FormOrJson );
 
-
-			if( frm.res_cd.value == "0000" )
-			{
-				alert("결제 승인 요청 전,\n\n반드시 결제창에서 고객님이 결제 인증 완료 후\n\n리턴 받은 ordr_chk 와 업체 측 주문정보를\n\n다시 한번 검증 후 결제 승인 요청하시기 바랍니다."); //업체 연동 시 필수 확인 사항.
-				alert(frm);
-				/*
-					가맹점 리턴값 처리 영역
-				*/
-
+			if( frm.res_cd.value == "0000" ) {
 				frm.submit();
 			} else {
 				alert( "[" + frm.res_cd.value + "] " + frm.res_msg.value );

+ 21 - 1
src/main/webapp/WEB-INF/views/web/pg/kcpOrderWeb.html

@@ -1,4 +1,12 @@
 <html lang="ko" xmlns:th="http://www.thymeleaf.org">
+	<th:block th:if="${payment.reqTx} == null or ${payment.reqTx} == ''">
+		<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
+		<script src="/ux/pc/js/slick.min.js"></script>
+		<script src="/ux/pc/js/jquery-ui.js"></script>
+		<script src="/ux/pc/js/jquery.modal.min.js"></script>
+		<script src="/ux/pc/js/jquery.ui.datepicker.monthyearpicker.js"></script>
+	</th:block>
+
 	<!-- 선택, 상점이름(영문으로 작성권장) -->
 	<input type="hidden" name="site_name"	th:value="${payment.siteName}" />
 	<!-- 필수, 상점코드 -->
@@ -22,8 +30,13 @@
 	<input type="hidden" name="currency"		th:value="${payment.currency}" />	<!-- 필수, 원화 : WON / 달러 : USD -->
 	<input type="hidden" name="shop_user_id"	th:value="${payment.shopUserId}" />	<!-- 필수, 쇼핑몰회원ID 기관에 따라 RM 조치를 위해 쇼핑몰 관리 ID를 필수로 요청 -->
 
+	<!-- 신용카드 정보 -->
 	<input type="hidden" name="quotaopt"		th:value="${payment.quotaopt}"/>	<!-- 최대 할부 개월 수(0 ~ 18까지 설정 가능) -->
 
+	<!-- 무통장입금 정보 -->
+	<input type="hidden" name="vcnt_expire_term"	th:value="${payment.vcntExpireTerm}"/>	<!-- 무통장입금 유효기간 설정 (3 = 3일) -->
+	<input type="hidden" name="disp_tax_yn"	th:value="${payment.dispTaxYn}"/>	<!-- 무통장입금 유효기간 설정 (3 = 3일) -->
+
 	<!-- 2012년 8월 18일 전자상거래법 개정 관련 설정 부분 -->
 	<!-- 제공 기간 설정 0:일회성 1:기간설정(ex 1:2012010120120131)  -->
 	<input type="hidden" name="good_expr"		th:value="${payment.goodExpr}" />
@@ -42,7 +55,7 @@
 	<input type="hidden" name="enc_data"        value=""/>
 	<input type="hidden" name="ret_pay_method"  value=""/>
 	<input type="hidden" name="tran_cd"         value=""/>
-	<input type="hidden" name="use_pay_method"  value=""/>
+	<input type="hidden" name="use_pay_method"  th:value="${payment.usePayMethod}"/>
 
 	<!-- 주문정보 검증 관련 정보 : 표준웹 에서 설정하는 정보입니다 -->
 	<input type="hidden" name="ordr_chk"        value=""/>
@@ -52,4 +65,11 @@
 	<input type="hidden" name="cash_tr_code"    value=""/>
 	<input type="hidden" name="cash_id_info"    value=""/>
 
+
+	<script th:inline="javascript">
+		if([[${payment.reqTx}]] == null || [[${payment.reqTx}]] == "") {
+			receiptWin3 = "http://devadmin.kcp.co.kr/Modules/Noti/TEST_Vcnt_Noti.jsp";
+			window.open(receiptWin3, "", "width=520, height=300");
+		}
+	</script>
 </html>