Просмотр исходного кода

Merge branch 'develop' into jmh

jmh 4 лет назад
Родитель
Сommit
7c43396978

+ 1 - 1
src/main/java/com/style24/front/support/config/TsfWebMvcConfig.java

@@ -68,7 +68,7 @@ public class TsfWebMvcConfig implements WebMvcConfigurer {
 			"/", "/index", "/signin/**",
 			"/images/**", "/ux/**",
 			"/error/**", "/data/**",
-			"/login", "/logout", "/noMember/**"
+			"/login", "/logout", "/noMember/**", "/app/splash/image/url"
 		};
 
 		// 디바이스 해석

+ 5 - 5
src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml

@@ -293,7 +293,7 @@
 		           , O.OPT_CD1
 		           , SUM(CASE WHEN O.SOLDOUT_YN = 'Y' THEN 0
 		                      WHEN VS.CURR_STOCK_QTY  <![CDATA[<=]]> 0 THEN 0
-		                      WHEN VS.CURR_STOCK_QTY - G.MIN_ORD_QTY >= 0 THEN VS.CURR_STOCK_QTY
+		                      WHEN VS.CURR_STOCK_QTY >= G.MIN_ORD_QTY THEN VS.CURR_STOCK_QTY
 		                      ELSE 0 END) AS STOCK_QTY
 		           , IFNULL(GC.QTY , 1) AS QTY
 		      FROM TB_GOODS G
@@ -350,7 +350,7 @@
 		     , IFNULL(C.COLOR_KNM, B.OPT_CD1) AS OPT_CD1_NM
 		     , OPT_CD2
 		     , ADD_PRICE 
-		     , (CASE WHEN STOCK_QTY - MIN_ORD_QTY >= 0 THEN STOCK_QTY
+		     , (CASE WHEN STOCK_QTY >= MIN_ORD_QTY THEN STOCK_QTY
 		             ELSE 0
 		        END ) AS STOCK_QTY
 		     , SOLDOUT_YN
@@ -400,7 +400,7 @@
 		     , OPT_CD2
 		     , CONCAT(OPT_CD1,'/', OPT_CD2) AS OPT_NM
 		     , ADD_PRICE 
-		     , (CASE WHEN STOCK_QTY - MIN_ORD_QTY >= 0 THEN STOCK_QTY
+		     , (CASE WHEN STOCK_QTY >= MIN_ORD_QTY THEN STOCK_QTY
 		             ELSE 0
 		        END ) AS STOCK_QTY
 		     , SOLDOUT_YN
@@ -696,7 +696,7 @@
 	<!-- 상품 사이즈 선택 시 재고수량 가져오기 -->
 	<select id="getGoodsStockQty_ORG"  parameterType="GoodsStock" resultType="int">
 		/* TsfGoods.getGoodsStockQty_ORG */
-		SELECT (CASE WHEN STOCK_QTY - MIN_ORD_QTY >= 0 THEN STOCK_QTY
+		SELECT (CASE WHEN STOCK_QTY >= MIN_ORD_QTY THEN STOCK_QTY
 		             ELSE 0 END ) AS STOCK_QTY
 		FROM ( 
 		    SELECT CASE WHEN A.SOLDOUT_YN = 'Y' THEN 0
@@ -737,7 +737,7 @@
 	<!-- 상품 사이즈  매장 쵀대 재고수량 가져오기 -->
 	<select id="getGoodsStoreStockQty"  parameterType="GoodsStock" resultType="int">
 		/* TsfGoods.getGoodsStoreStockQty */
-		SELECT CASE WHEN STORE_MAX_QTY - MIN_ORD_QTY >= 0 THEN STORE_MAX_QTY
+		SELECT CASE WHEN STORE_MAX_QTY >= MIN_ORD_QTY THEN STORE_MAX_QTY
 		            ELSE 0 END
 		FROM (
 		    SELECT (CASE

+ 1 - 1
src/main/java/com/style24/persistence/mybatis/shop/TsfNotice.xml

@@ -38,7 +38,7 @@
 		     , NOTICE_CONTENT                                /*공지내용*/
 		     , URGENT_YN                                     /*긴급여부*/
 		     , READ_CNT                                      /*조회수*/
-		     , DATE_FORMAT(REG_DT,'%Y.%m.%d')    AS REG_DT   /*등록일자*/
+		     , DATE_FORMAT(REG_DT,'%Y%m%d')    AS REG_DT     /*등록일자*/
 		     , (SELECT COUNT(1)
 		        FROM   TB_NOTICE_FILE
 		        WHERE  NOTICE_SQ = A.NOTICE_SQ

+ 3 - 1
src/main/webapp/WEB-INF/views/mob/callcenter/NoticeFormMob.html

@@ -95,7 +95,9 @@
 				tag += '	</div>\n';
 				tag += '	<div class="fold_cont">\n';
 				tag += '		<div class="fold_answer">\n';
-				tag += '			<div class="answer_body">' + item.noticeContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"') + '</div>\n';
+				
+				// 2021.08.13 &nbsp; 제거
+				tag += '			<div>' + item.noticeContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"').replaceAll('&amp;nbsp;', ' ') + '</div>\n';
 				tag += '		</div>\n';
 				tag += '	</div>\n';
 				tag += '</li>\n';

+ 26 - 11
src/main/webapp/WEB-INF/views/mob/mypage/MypageCancelFormMob.html

@@ -456,30 +456,45 @@ var fnChangeCancelQty = function(param) {
 		let spanGfcdUseAmt 		= Number(result.spanGfcdUseAmt);						// 환불 상품권 금액
 		let spanDelvGfcdUseAmt 	= Number(result.spanDelvGfcdUseAmt);					// 환불 배송비 상품권 금액
 		let spanCnclRtnAmt 		= Number(result.spanCnclRtnAmt);						// 환불 상품 금액
-		let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);							// 쿠폰 할인 차감 금액
+		let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);							// 쿠폰 할인 차감 금액 (즉시할인쿠폰 + 상품쿠폰 + 장바구니쿠폰 + 배송비쿠폰)
 		let spanCpn1DcAmt 		= Number(result.spanCpn1DcAmt);							// 즉시할인 쿠폰 차감 금액
 		let spanTmtbDcAmt 		= Number(result.spanTmtbDcAmt);							// 다다익선 할인 차감 금액
 		let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);						// 선포인트 할인 차감 금액
 		let sumDeliveryFee 		= Number(result.sumDeliveryFee);						// 원주문배송비
 		let spanTotDeliveryFee 	= Number(result.spanTotDeliveryFee);					// 추가배송비 (무료배송비 허들 깨져서 발생한 배송비)
-		let spanRefundAmt 		= Number(result.spanRefundAmt);							// 환불 예정 금액 ((취소 상품 실결제 금액 + 원주문 배송비) - 배송비쿠폰 - 추가배송비)
+		let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);					// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
 		let goodsCancelAmt 		= spanCnclRtnAmt + spanCpn1DcAmt;						// 상품취소금액
-		let deliveryFee 		= sumDeliveryFee - spanTotDeliveryFee;					// 배송비 (마지막 취소 시 돌려줘야할 원주문 배송비 - 추가배송비)
 		let deductDcAmt 		= 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;	// 할인금액 차감 (쿠폰+다다익선+선포인트)
-		let refundGiftCard 		= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 품권 금액 합계
-		let refundPayAmt		= spanRefundAmt - spanDelvGfcdUseAmt;					// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액)
-		let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;			// 환불예정금액
+		let refundGiftCard		= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 품권 금액 합계
+		let spanRefundAmt 		= spanRealCnclRtnAmt + sumDeliveryFee;					// 환불예정금액 (환불상품실결제금액 + 원주문배송비)
+		let deliveryFee 		= sumDeliveryFee - spanTotDeliveryFee;					// 배송비 (마지막 취소 시 돌려줘야할 원주문 배송비 - 추가배송비)
 
-		// 추가배송비 영역 설
-		if (refundPayAmt < 0) {
-			//refundPayAmt = spanRefundAmt;
-			//$('#addDeliveryFee').css('display', '');
-			//$('#addPayCost').text(spanTotDeliveryFee.addComma() + '원');
+		// 2021.08.10 card007 상품권100% 결제 로직 수
+		let refundAmt = spanRefundAmt + spanGfcdUseAmt;
+		let leftAddDelvFee = spanTotDeliveryFee;
+
+		if (refundAmt < spanTotDeliveryFee) {
 			addPayCost = spanTotDeliveryFee;
 		} else {
+			if (leftAddDelvFee > spanRefundAmt) {
+				leftAddDelvFee -= spanRefundAmt;
+				spanRefundAmt = 0;
+			} else {
+				spanRefundAmt -= leftAddDelvFee;
+				leftAddDelvFee = 0;
+			}
+
+			if (leftAddDelvFee > 0) {
+				refundGiftCard -= leftAddDelvFee;
+				leftAddDelvFee = 0;
+			}
+
 			addPayCost = 0;
 		}
 
+		let refundPayAmt		= spanRefundAmt - spanDelvGfcdUseAmt - leftAddDelvFee;	// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액)
+		let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;			// 환불예정금액
+
 		// 금액 설정
 		$('#returnAmt').text(returnAmt.addComma());
 		$('#goodsCancelAmt').text(goodsCancelAmt.addComma());

+ 1 - 0
src/main/webapp/WEB-INF/views/mob/mypage/MypageCreReturnDetailFormMob.html

@@ -240,6 +240,7 @@
 												<span th:if="${oneData.pgGb == 'NAVER'}">네이버페이</span>
 												<span th:if="${oneData.pgGb == 'KAKAO'}">카카오페이</span>
 												<span th:if="${oneData.pgGb == 'PAYCO'}">PAYCO</span>
+												<span th:if="${oneData.pgGb == 'ISTYLE'}">상품권</span>
 											</div>
 										</dd>
 									</div>

+ 7 - 3
src/main/webapp/WEB-INF/views/mob/mypage/MypageGiftcardFormMob.html

@@ -114,13 +114,15 @@ function appendYear() {
 }
 appendYear($("#month"));
 
-//사용내역 조회
+// 사용내역 조회
 $("#SearchUseGiftcard").click(function() {
 	// class제거 추가
 	$("#SearchOwnGiftcard").removeClass("active");
 	$("#SearchUseGiftcard").addClass("active");
 	$("#giftcardList").attr("class", "tab_cont active");
-	$(".select_box").show();
+	
+	// 2021.08.13 날짜 선택박스 활성화 처리
+	$(".select_box select").removeAttr("disabled");
 
 	// 날짜 필드 
 	$("#dateField").css("display", "block");
@@ -197,7 +199,9 @@ $("#SearchOwnGiftcard").click(function() {
 	$("#SearchUseGiftcard").removeClass("active");
 	$("#SearchOwnGiftcard").addClass("active");
 	$("#giftcardList").attr("class", "tab_cont active");
-	$(".select_box").hide();
+	
+	// 2021.08.13 날짜 선택박스 disabled 처리
+	$(".select_box select").attr("disabled","disabled");
 
 	let data = {};
 

+ 43 - 40
src/main/webapp/WEB-INF/views/mob/mypage/MypageReturnFormMob.html

@@ -661,62 +661,65 @@ var fnChangeReturnQty = function(param) {
 		let jsonData = JSON.stringify(data);
 		
 		gagajf.ajaxJsonSubmit(url, jsonData, function (result) {
-			let refundPoint 		= Number(result.spanPntDcAmt);				// 환불 포인트 금액
-			let spanGfcdUseAmt 		= Number(result.spanGfcdUseAmt);			// 환불 상품권 금액
-			let spanDelvGfcdUseAmt 	= Number(result.spanDelvGfcdUseAmt);		// 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
-			let spanCnclRtnAmt 		= Number(result.spanCnclRtnAmt);			// 환불 상품 금액
-			let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);				// 쿠폰 할인 차감 금액
-			let spanCpn1DcAmt 		= Number(result.spanCpn1DcAmt);				// 즉시할인 쿠폰 차감 금액
-			let spanTmtbDcAmt 		= Number(result.spanTmtbDcAmt);				// 다다익선 할인 차감 금액
-			let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);			// 선포인트 할인 차감 금액
-			let sumDeliveryFee 		= Number(result.sumDeliveryFee);			// 원주문배송비 (반품에서는 안돌려줘서 항상 0일듯)
-			//let spanTotDeliveryFee = Number(result.spanTotDeliveryFee);		// 추가배송비 (무료배송비 허들 깨져서 발생한 배송비) - 추가배송비는 환불컨펌에서 처리
-			let spanTotDeliveryFee 	= 0;
-			let spanTotRtnDelvFee 	= Number(result.spanTotRtnDelvFee);			// 반품배송비 (회수요청으로 인한 반품 배송비)
-			let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);		// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
-			let refundGiftCard 		= spanGfcdUseAmt + spanDelvGfcdUseAmt;		// 환불 상품권 금액 합계
-			let spanRefundAmt 		= spanRealCnclRtnAmt + sumDeliveryFee;		// 환불예정금액 (환불상품실결제금액 - 원주문배송비)
+			let refundPoint 		= Number(result.spanPntDcAmt);							// 환불 포인트 금액
+			let spanGfcdUseAmt 		= Number(result.spanGfcdUseAmt);						// 환불 상품권 금액
+			let spanDelvGfcdUseAmt 	= Number(result.spanDelvGfcdUseAmt);					// 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
+			let spanCnclRtnAmt 		= Number(result.spanCnclRtnAmt);						// 환불 상품 금액
+			let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);							// 쿠폰 할인 차감 금액
+			let spanCpn1DcAmt 		= Number(result.spanCpn1DcAmt);							// 즉시할인 쿠폰 차감 금액
+			let spanTmtbDcAmt 		= Number(result.spanTmtbDcAmt);							// 다다익선 할인 차감 금액
+			let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);						// 선포인트 할인 차감 금액
+			let spanTotRtnDelvFee 	= Number(result.spanTotRtnDelvFee);						// 반품배송비 (회수요청으로 인한 반품 배송비)
+			let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);					// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
+			let goodsCancelAmt 		= spanCnclRtnAmt + spanCpn1DcAmt;						// 상품취소금액
+			let deductDcAmt 		= 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;	// 할인금액 차감 (쿠폰+다다익선+선포인트)
+			let refundGiftCard 		= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 상품권 금액 합계
+			let spanRefundAmt 		= spanRealCnclRtnAmt;									// 환불예정금액 (환불상품실결제금액)
 
 			// 반품 사유 및 반품 방식 배송비 계산
-			if (result.spanRealCnclRtnAmt > 0) {
-				let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
-				// 회사사유 : 추가배송비 0, 반품배송비 0
-				if (!isCustomer) {
-					spanTotRtnDelvFee = 0;
-					//spanTotDeliveryFee = 0;									// 추가배송비는 환불컨펌에서 처리
-				}
-				// 고객사유(직접발송) : 반품배송비 0
-				else if (wdGb == 'D') {
-					spanTotRtnDelvFee = 0;
-				}
-			} else {
+			let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
+
+			// 2021.08.10 card007 상품권 100% 결제 관련 로직 변경
+			// 회사귀책이거나 직접배송일때 반품배송비 0
+			if (!isCustomer || wdGb == 'D') {
 				spanTotRtnDelvFee = 0;
-				//spanTotDeliveryFee = 0;										// 추가배송비는 환불컨펌에서 처리
 			}
 
-			let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt;				// 상품취소금액
-			let addDelvFee = spanTotRtnDelvFee + spanTotDeliveryFee;			// 추가배송비
-			let deductDcAmt = spanCpnDcAmt + spanTmtbDcAmt + spanPrePntDcAmt;	// 할인금액 차감(쿠폰+다다익선+선포인트)
-			let refundPayAmt = spanRefundAmt - addDelvFee;						// 결제금액 환불
-
 			// 추가배송비 영역 설정
-			if (refundPayAmt < 0) {
-				refundPayAmt += addDelvFee;
+			// 2021.08.10 card007 상품권100% 결제 로직 수정
+			let refundAmt 			= spanRefundAmt + spanGfcdUseAmt;
+			let leftAddDelvFee 		= spanTotRtnDelvFee;
+
+			if (refundAmt < spanTotRtnDelvFee) {
 				$('#addDeliveryFee').css('display', '');
-				$('#addPayCost').text(addDelvFee.addComma() + '원');
-				$('#returnForm input[name=addPayCost]').val(addDelvFee);
+				$('#addPayCost').text(spanTotRtnDelvFee.addComma() + '원');
+				$('#returnForm input[name=addPayCost]').val(spanTotRtnDelvFee);
 			} else {
+				if (leftAddDelvFee > spanRefundAmt) {
+					leftAddDelvFee -= spanRefundAmt;
+					spanRefundAmt = 0;
+				} else {
+					spanRefundAmt -= leftAddDelvFee;
+					leftAddDelvFee = 0;
+				}
+				
+				if (leftAddDelvFee > 0) {
+					refundGiftCard -= leftAddDelvFee;
+					leftAddDelvFee = 0;
+				}
+
 				$('#addDeliveryFee').css('display', 'none');
 				$('#returnForm input[name=addPayCost]').val(0);
 			}
 
-			let returnAmt = refundPayAmt + refundPoint + refundGiftCard;		// 환불예정금액
+			let refundPayAmt 		= spanRefundAmt - leftAddDelvFee;					// 결제금액 환불
+			let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;		// 환불예정금액
 
 			// 금액 설정
 			$('#returnAmt').text(returnAmt.addComma());
 			$('#goodsCancelAmt').text(goodsCancelAmt.addComma());
-			$('#deliveryFee').text((0 - addDelvFee).addComma());
-			$('#deductDcAmt').text((0 - deductDcAmt).addComma());
+			$('#deliveryFee').text((0 - spanTotRtnDelvFee).addComma());
+			$('#deductDcAmt').text(deductDcAmt.addComma());
 			$('#refundPayAmt').text(refundPayAmt.addComma());
 			$('#refundPoint').text(refundPoint.addComma());
 			$('#refundGiftCard').text(refundGiftCard.addComma());

+ 3 - 1
src/main/webapp/WEB-INF/views/web/callcenter/NoticeFormWeb.html

@@ -127,7 +127,9 @@
 				tag += '	</div>\n';
 				tag += '	<div class="fold_cont" style="display: none;">\n';
 				tag += '		<div class="fold_detail">\n';
-				tag += '			<div>' + item.noticeContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"') + '</div>\n';
+				
+				// 2021.08.13 &nbsp; 제거
+				tag += '			<div>' + item.noticeContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"').replaceAll('&amp;nbsp;', ' ') + '</div>\n';
 				tag += '		</div>\n';
 				tag += '	</div>\n';
 				tag += '</li>\n';

+ 24 - 9
src/main/webapp/WEB-INF/views/web/mypage/MypageCancelFormWeb.html

@@ -358,23 +358,38 @@
 			let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);						// 선포인트 할인 차감 금액
 			let sumDeliveryFee 		= Number(result.sumDeliveryFee);						// 원주문배송비
 			let spanTotDeliveryFee 	= Number(result.spanTotDeliveryFee);					// 추가배송비 (무료배송비 허들 깨져서 발생한 배송비)
-			let spanRefundAmt 		= Number(result.spanRefundAmt);							// 환불 예정 금액 ((취소 상품 실결제 금액 + 원주문 배송비) - 배송비쿠폰 - 추가배송비)
+			let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);					// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
 			let goodsCancelAmt 		= spanCnclRtnAmt + spanCpn1DcAmt;						// 상품취소금액
-			let deliveryFee 		= sumDeliveryFee - spanTotDeliveryFee;					// 배송비 (마지막 취소 시 돌려줘야할 원주문 배송비 - 추가배송비)
 			let deductDcAmt 		= 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;	// 할인금액 차감 (쿠폰+다다익선+선포인트)
 			let refundGiftCard		= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 상품권 금액 합계
-			let refundPayAmt		= spanRefundAmt - spanDelvGfcdUseAmt;					// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액)
-			let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;			// 환불예정금액
+			let spanRefundAmt 		= spanRealCnclRtnAmt + sumDeliveryFee;					// 환불예정금액 (환불상품실결제금액 + 원주문배송비)
+			let deliveryFee 		= sumDeliveryFee - spanTotDeliveryFee;					// 배송비 (마지막 취소 시 돌려줘야할 원주문 배송비 - 추가배송비)
 
-			// 추가배송비 영역 설
-			if (refundPayAmt < 0) {
-				//refundPayAmt = spanRefundAmt;
-				//$('#addDeliveryFee').css('display', '');
-				//$('#addPayCost').text(spanTotDeliveryFee.addComma() + '원');
+			// 2021.08.10 card007 상품권100% 결제 로직 수
+			let refundAmt 			= spanRefundAmt + spanGfcdUseAmt;
+			let leftAddDelvFee 		= spanTotDeliveryFee;
+
+			if (refundAmt < spanTotDeliveryFee) {
 				addPayCost = spanTotDeliveryFee;
 			} else {
+				if (leftAddDelvFee > spanRefundAmt) {
+					leftAddDelvFee -= spanRefundAmt;
+					spanRefundAmt = 0;
+				} else {
+					spanRefundAmt -= leftAddDelvFee;
+					leftAddDelvFee = 0;
+				}
+
+				if (leftAddDelvFee > 0) {
+					refundGiftCard -= leftAddDelvFee;
+					leftAddDelvFee = 0;
+				}
+
 				addPayCost = 0;
 			}
+
+			let refundPayAmt		= spanRefundAmt - spanDelvGfcdUseAmt - leftAddDelvFee;	// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액)
+			let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;			// 환불예정금액
 			
 			// 금액 설정
 			$('#returnAmt').text(returnAmt.addComma());

+ 1 - 0
src/main/webapp/WEB-INF/views/web/mypage/MypageCreReturnDetailFormWeb.html

@@ -241,6 +241,7 @@
 												<dd th:if="${oneData.pgGb == 'NAVER'}">네이버페이</dd>
 												<dd th:if="${oneData.pgGb == 'KAKAO'}">카카오페이</dd>
 												<dd th:if="${oneData.pgGb == 'PAYCO'}">PAYCO</dd>
+												<dd th:if="${oneData.pgGb == 'ISTYLE'}">상품권</dd>
 											</div>
 											<div th:if="${refundYn == 'Y' and oneData.pgGb == 'KCP' and oneData.payMeans == 'G014_30'}">
 												<dt class="sr-only">영수증 확인</dt>

+ 46 - 41
src/main/webapp/WEB-INF/views/web/mypage/MypageReturnFormWeb.html

@@ -279,6 +279,7 @@
 													<dd th:if="${paymentInfo.pgGb == 'NAVER'}">네이버페이</dd>
 													<dd th:if="${paymentInfo.pgGb == 'KAKAO'}">카카오페이</dd>
 													<dd th:if="${paymentInfo.pgGb == 'PAYCO'}">PAYCO</dd>
+													<dd th:if="${paymentInfo.pgGb == 'ISTYLE'}">상품권</dd>
 												</div>
 												<div>
 													<dt>결제 금액 환불</dt>
@@ -507,62 +508,65 @@
 			let jsonData = JSON.stringify(data);
 			
 			gagajf.ajaxJsonSubmit(url, jsonData, function (result) {
-				let refundPoint 		= Number(result.spanPntDcAmt);				// 환불 포인트 금액
-				let spanGfcdUseAmt 		= Number(result.spanGfcdUseAmt);			// 환불 상품권 금액
-				let spanDelvGfcdUseAmt 	= Number(result.spanDelvGfcdUseAmt);		// 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
-				let spanCnclRtnAmt 		= Number(result.spanCnclRtnAmt);			// 환불 상품 금액
-				let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);				// 쿠폰 할인 차감 금액
-				let spanCpn1DcAmt 		= Number(result.spanCpn1DcAmt);				// 즉시할인 쿠폰 차감 금액
-				let spanTmtbDcAmt 		= Number(result.spanTmtbDcAmt);				// 다다익선 할인 차감 금액
-				let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);			// 선포인트 할인 차감 금액
-				let sumDeliveryFee 		= Number(result.sumDeliveryFee);			// 원주문배송비 (반품에서는 안돌려줘서 항상 0일듯)
-				//let spanTotDeliveryFee = Number(result.spanTotDeliveryFee);		// 추가배송비 (무료배송비 허들 깨져서 발생한 배송비) - 추가배송비는 환불컨펌에서 처리
-				let spanTotDeliveryFee 	= 0;
-				let spanTotRtnDelvFee 	= Number(result.spanTotRtnDelvFee);			// 반품배송비 (회수요청으로 인한 반품 배송비)
-				let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);		// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
-				let refundGiftCard 		= spanGfcdUseAmt + spanDelvGfcdUseAmt;		// 환불 상품권 금액 합계
-				let spanRefundAmt 		= spanRealCnclRtnAmt + sumDeliveryFee;		// 환불예정금액 (환불상품실결제금액 - 원주문배송비)
+				let refundPoint 		= Number(result.spanPntDcAmt);							// 환불 포인트 금액
+				let spanGfcdUseAmt 		= Number(result.spanGfcdUseAmt);						// 환불 상품권 금액
+				let spanDelvGfcdUseAmt 	= Number(result.spanDelvGfcdUseAmt);					// 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
+				let spanCnclRtnAmt 		= Number(result.spanCnclRtnAmt);						// 환불 상품 금액
+				let spanCpnDcAmt 		= Number(result.spanCpnDcAmt);							// 쿠폰 할인 차감 금액
+				let spanCpn1DcAmt 		= Number(result.spanCpn1DcAmt);							// 즉시할인 쿠폰 차감 금액
+				let spanTmtbDcAmt 		= Number(result.spanTmtbDcAmt);							// 다다익선 할인 차감 금액
+				let spanPrePntDcAmt 	= Number(result.spanPrePntDcAmt);						// 선포인트 할인 차감 금액
+				let spanTotRtnDelvFee 	= Number(result.spanTotRtnDelvFee);						// 반품배송비 (회수요청으로 인한 반품 배송비)
+				let spanRealCnclRtnAmt 	= Number(result.spanRealCnclRtnAmt);					// 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
+				let goodsCancelAmt 		= spanCnclRtnAmt + spanCpn1DcAmt;						// 상품취소금액
+				let deductDcAmt 		= 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;	// 할인금액 차감 (쿠폰+다다익선+선포인트)
+				let refundGiftCard 		= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 상품권 금액 합계
+				let spanRefundAmt 		= spanRealCnclRtnAmt;									// 환불예정금액 (환불상품실결제금액)
 
 				// 반품 사유 및 반품 방식 배송비 계산
-				if (result.spanRealCnclRtnAmt > 0) {
-					let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
-					// 회사사유 : 추가배송비 0, 반품배송비 0
-					if (!isCustomer) {
-						spanTotRtnDelvFee = 0;
-						//spanTotDeliveryFee = 0;									// 추가배송비는 환불컨펌에서 처리
-					}
-					// 고객사유(직접발송) : 반품배송비 0
-					else if (wdGb == 'D') {
-						spanTotRtnDelvFee = 0;
-					}
-				} else {
+				let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
+
+				// 2021.08.10 card007 상품권 100% 결제 관련 로직 변경
+				// 회사귀책이거나 직접배송일때 반품배송비 0
+				if (!isCustomer || wdGb == 'D') {
 					spanTotRtnDelvFee = 0;
-					//spanTotDeliveryFee = 0;										// 추가배송비는 환불컨펌에서 처리
 				}
 
-				let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt;				// 상품취소금액
-				let addDelvFee = spanTotRtnDelvFee + spanTotDeliveryFee;			// 추가배송비
-				let deductDcAmt = spanCpnDcAmt + spanTmtbDcAmt + spanPrePntDcAmt;	// 할인금액 차감(쿠폰+다다익선+선포인트)
-				let refundPayAmt = spanRefundAmt - addDelvFee;						// 결제금액 환불
-
 				// 추가배송비 영역 설정
-				if (refundPayAmt < 0) {
-					refundPayAmt += addDelvFee;
+				// 2021.08.10 card007 상품권100% 결제 로직 수정
+				let refundAmt 			= spanRefundAmt + spanGfcdUseAmt;
+				let leftAddDelvFee 		= spanTotRtnDelvFee;
+
+				if (refundAmt < spanTotRtnDelvFee) {
 					$('#addDeliveryFee').css('display', '');
-					$('#addPayCost').text(addDelvFee.addComma() + '원');
-					$('#returnForm input[name=addPayCost]').val(addDelvFee);
+					$('#addPayCost').text(spanTotRtnDelvFee.addComma() + '원');
+					$('#returnForm input[name=addPayCost]').val(spanTotRtnDelvFee);
 				} else {
+					if (leftAddDelvFee > spanRefundAmt) {
+						leftAddDelvFee -= spanRefundAmt;
+						spanRefundAmt = 0;
+					} else {
+						spanRefundAmt -= leftAddDelvFee;
+						leftAddDelvFee = 0;
+					}
+
+					if (leftAddDelvFee > 0) {
+						refundGiftCard -= leftAddDelvFee;
+						leftAddDelvFee = 0;
+					}
+
 					$('#addDeliveryFee').css('display', 'none');
 					$('#returnForm input[name=addPayCost]').val(0);
 				}
-
-				let returnAmt = refundPayAmt + refundPoint + refundGiftCard;		// 환불예정금액
+				
+				let refundPayAmt 		= spanRefundAmt - leftAddDelvFee;					// 결제금액 환불
+				let returnAmt 			= refundPayAmt + refundPoint + refundGiftCard;		// 환불예정금액
 
 				// 금액 설정
 				$('#returnAmt').text(returnAmt.addComma());
 				$('#goodsCancelAmt').text(goodsCancelAmt.addComma());
-				$('#deliveryFee').text((0 - addDelvFee).addComma());
-				$('#deductDcAmt').text((0 - deductDcAmt).addComma());
+				$('#deliveryFee').text((0 - spanTotRtnDelvFee).addComma());
+				$('#deductDcAmt').text(deductDcAmt.addComma());
 				$('#refundPayAmt').text(refundPayAmt.addComma());
 				$('#refundPoint').text(refundPoint.addComma());
 				$('#refundGiftCard').text(refundGiftCard.addComma());
@@ -597,6 +601,7 @@
 		// 반품 사유 설정
 		$(param).parent().parent().find('input[name=chgReason]').val(chgReason);
 
+		console.log('isCustomer : ' + isCustomer);
 		// 환불금액 계산
 		fnChangeReturnQty();
 	}