Explorar o código

Merge remote-tracking branch 'origin/order' into jsh77b

jsh77b %!s(int64=5) %!d(string=hai) anos
pai
achega
c3cda0bb02

+ 33 - 10
src/main/java/com/style24/core/biz/service/TscKakaoPayService.java

@@ -1,5 +1,9 @@
 package com.style24.core.biz.service;
 
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Service;
@@ -9,6 +13,7 @@ import org.springframework.util.MultiValueMap;
 import org.springframework.web.client.RestTemplate;
 
 import com.style24.core.biz.thirdparty.KakaoPayApi;
+import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.persistence.domain.KakaoPay;
 import com.style24.persistence.domain.Order;
@@ -100,6 +105,8 @@ public class TscKakaoPayService {
 			payment.setPgTradeNo(kakaoPay.getAid());
 			payment.setPgTid(kakaoPay.getTid());
 			payment.setPgShopId(kakaoPay.getCid());
+			payment.setPayDt(convertDateFormat(kakaoPay.getApproved_at()));
+			payment.setPayStat(TscConstants.PaymentStat.PAYMENT_COMPLETE.value());
 			payment.setOrdNo(Integer.parseInt(kakaoPay.getPartner_order_id()));
 			payment.setCustNo(Integer.parseInt(kakaoPay.getPartner_user_id()));
 			payment.setKakaoMethodType(kakaoPay.getPayment_method_type());
@@ -118,18 +125,33 @@ public class TscKakaoPayService {
 			payment.setResCd(String.valueOf(statusCode));
 			payment.setResMsg(message.getMessage("SUCC_0004"));
 		} else {
-			int code = Integer.parseInt(kakaoPay.getCode());
-			String msg = kakaoPay.getMsg();
-			String resultCode = kakaoPay.getExtras().getMethod_result_code();
+			// int code = Integer.parseInt(kakaoPay.getCode());
+			// String msg = kakaoPay.getMsg();
+			// String resultCode = kakaoPay.getExtras().getMethod_result_code();
 			String resultMessage = kakaoPay.getExtras().getMethod_result_message();
 
-			payment.setResCd(String.valueOf(code));
-			payment.setResMsg(resultMessage);
+			throw new IllegalStateException(resultMessage);
+			// payment.setResCd(String.valueOf(code));
+			// payment.setResMsg(resultMessage);
 		}
 
 		return payment;
 	}
 
+	private String convertDateFormat(String date) {
+		String result = "";
+		try {
+			SimpleDateFormat parseSdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
+			SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+			Date parseDate = parseSdf.parse(date);
+			result = sdf.format(parseDate);
+		} catch (ParseException e) {
+			e.printStackTrace();
+		}
+
+		return result;
+	}
+
 	/**
 	 * 카카오페이 주문 조회
 	 *
@@ -193,13 +215,14 @@ public class TscKakaoPayService {
 			payment.setResCd(String.valueOf(statusCode));
 			payment.setResMsg(message.getMessage("SUCC_0004"));
 		} else {
-			int code = Integer.parseInt(kakaoPay.getCode());
-			String msg = kakaoPay.getMsg();
-			String resultCode = kakaoPay.getExtras().getMethod_result_code();
+			// int code = Integer.parseInt(kakaoPay.getCode());
+			// String msg = kakaoPay.getMsg();
+			// String resultCode = kakaoPay.getExtras().getMethod_result_code();
 			String resultMessage = kakaoPay.getExtras().getMethod_result_message();
 
-			payment.setResCd(String.valueOf(code));
-			payment.setResMsg(resultMessage);
+			throw new IllegalStateException(resultMessage);
+			// payment.setResCd(String.valueOf(code));
+			// payment.setResMsg(resultMessage);
 		}
 
 		return payment;

+ 13 - 4
src/main/java/com/style24/core/biz/service/TscNaverPayService.java

@@ -1,6 +1,9 @@
 package com.style24.core.biz.service;
 
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 import org.apache.commons.lang3.StringUtils;
@@ -15,6 +18,7 @@ import org.springframework.web.client.RestTemplate;
 import com.gagaframework.web.parameter.GagaMap;
 import com.style24.core.biz.thirdparty.KakaoPayApi;
 import com.style24.core.biz.thirdparty.NaverPayApi;
+import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.persistence.domain.KakaoPay;
 import com.style24.persistence.domain.NaverPay;
@@ -94,7 +98,7 @@ public class TscNaverPayService {
 		// 네이버페이 API 전송
 		NaverPay naverPay = naverPayApi.naverPaymentApi(params, approvePaymentUrl);
 
-		// 카카오페이 API 전송 결과 처리
+		// 네이버페이 API 전송 결과 처리
 		int statusCode = naverPay.getStatusCode();
 
 		// 승인 성공일때 200
@@ -102,6 +106,8 @@ public class TscNaverPayService {
 			payment.setPgTradeNo(naverPay.getBody().getPayHistId());
 			payment.setPgTid(naverPay.getBody().getDetail().getPaymentId());
 			payment.setPgShopId(naverPay.getBody().getDetail().getMerchantId());
+			payment.setPayDt(naverPay.getBody().getDetail().getAdmissionYmdt());
+			payment.setPayStat(TscConstants.PaymentStat.PAYMENT_COMPLETE.value());
 			payment.setOrdNo(Integer.parseInt(naverPay.getBody().getDetail().getMerchantPayKey()));
 			payment.setCustNo(Integer.parseInt(naverPay.getBody().getDetail().getMerchantUserKey()));
 			payment.setNaverMethodType(naverPay.getBody().getDetail().getPrimaryPayMeans());
@@ -111,6 +117,7 @@ public class TscNaverPayService {
 			// 네이버페이 카드결제 시 카드정보 설정
 			if ("CARD".equals(naverPay.getBody().getDetail().getPrimaryPayMeans())) {
 				payment.setCardNm(getCardNm(naverPay.getBody().getDetail().getCardCorpCode()));
+				payment.setCardType("N");	// 신용카드 결제
 				payment.setCardMips(String.valueOf(naverPay.getBody().getDetail().getCardInstCount()));
 			}
 		}
@@ -163,7 +170,7 @@ public class TscNaverPayService {
 		// naverPay.setPageNumber(order.getPageNo());
 		// naverPay.setRowsPerPage(order.getPageSize());
 
-		// 카카오페이 API 전송
+		// 네이버페이 API 전송
 		return naverPayApi.naverPaymentJsonApi(naverPay, paymentOrderUrl);
 	}
 
@@ -185,6 +192,8 @@ public class TscNaverPayService {
 		params.add("paymentId", payment.getPgTid());
 		params.add("cancelReason", payment.getChgReasonNm());
 		params.add("cancelAmount", String.valueOf(payment.getPayAmt()));
+		params.add("taxScopeAmount", String.valueOf(payment.getPayAmt()));
+		params.add("taxExScopeAmount", "0");
 
 		// 취소 요청자 설정
 		String cancelRequester = "2";
@@ -193,10 +202,10 @@ public class TscNaverPayService {
 		}
 		params.add("cancelRequester", cancelRequester);
 
-		// 카카오페이 API 전송
+		// 네이버페이 API 전송
 		NaverPay naverPay = naverPayApi.naverPaymentApi(params, cancelPaymentUrl);
 
-		// 카카오페이 API 전송 결과 처리
+		// 네이버페이 API 전송 결과 처리
 		int statusCode = naverPay.getStatusCode();
 
 		// 승인 성공일때 200

+ 5 - 5
src/main/java/com/style24/core/support/env/TscConstants.java

@@ -293,9 +293,9 @@ public class TscConstants {
 
 	// 결제상태
 	public enum PaymentStat {
-		PAYMENT_WAIT("G016_00"),				// 결제대기
-		PAYMENT_SUCCESS("G016_20"),			// 결제성공
-		PAYMENT_COMPLETE("G016_30"),			// 결제완료
+		PAYMENT_WAIT("G016_00"),			// 결제대기
+		// PAYMENT_SUCCESS("G016_20"),			// 결제성공
+		PAYMENT_COMPLETE("G016_30"),		// 결제완료
 		DB_FAIL("G016_97"),					// 결제성공후DB실패
 		PAYMENT_CANCEL("G016_99");			// 결제취소
 
@@ -684,8 +684,8 @@ public class TscConstants {
 	// 장바구니 구분
 	public enum CartGb {
 		CART("G026_BC"),			// 장바구니
-		PC_ORDER("G026_DM"),		// 바로구매(모바일)
-		MOB_ORDER("G026_DP"),		// 바로구매(PC)
+		PC_ORDER("G026_DP"),		// 바로구매(모바일)
+		MOB_ORDER("G026_DM"),	// 바로구매(PC)
 		CREATE_ORDER("G026_PP");	// 주문생성
 
 		private String value;