浏览代码

KCP 계좌인증 임시 커밋

card007 5 年之前
父节点
当前提交
7ee31dab84

+ 4 - 8
src/main/java/com/style24/front/biz/service/TsfOrderChangeService.java

@@ -1,20 +1,13 @@
 package com.style24.front.biz.service;
 
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Calendar;
 import java.util.Collection;
-import java.util.Date;
-import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.gagaframework.web.parameter.GagaMap;
-import com.style24.core.support.env.TscConstants;
+import com.style24.core.biz.service.TscOrderChangeService;
 import com.style24.front.biz.dao.TsfOrderChangeDao;
-import com.style24.front.biz.dao.TsfOrderDao;
 import com.style24.persistence.domain.GiftCard;
 import com.style24.persistence.domain.Order;
 import com.style24.persistence.domain.Point;
@@ -34,6 +27,9 @@ public class TsfOrderChangeService {
 	@Autowired
 	private TsfOrderChangeDao orderChangeDao;
 
+	@Autowired
+	private TscOrderChangeService coreOrderChangeService;
+
 	/**
 	 * 마이페이지 취소/반품 목록 조회
 	 *

+ 20 - 3
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -14,6 +14,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
+import com.gagaframework.web.parameter.GagaMap;
+import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.style24.core.biz.service.TscCustomerService;
 import com.style24.core.biz.service.TscKakaoPayService;
 import com.style24.core.biz.service.TscOrderChangeService;
@@ -41,9 +43,6 @@ import com.style24.persistence.domain.WishList;
 
 import lombok.extern.slf4j.Slf4j;
 
-import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
-
 /**
  * 마이페이지 Controller
  * 
@@ -627,6 +626,24 @@ public class TsfMypageController extends TsfBaseController {
 		customerService.deleteWishList(wishList);
 		result.set("status", "200");
 
+		return result;
+	}
+
+	/**
+	 * 마이페이지 주문 취소 처리
+	 *
+	 * @param Order
+	 * @return GagaMap
+	 * @author card007
+	 * @since 2021. 03. 12
+	 */
+	@PostMapping("/order/cancel")
+	@ResponseBody
+	public GagaMap cancelOrder(@RequestBody Order order) {
+		GagaMap result = new GagaMap();
+		
+		
+		
 		return result;
 	}
 }

+ 0 - 80
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -18,12 +18,10 @@ import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.style24.core.biz.service.TscFreegiftService;
 import com.style24.core.biz.service.TscKakaoPayService;
 import com.style24.core.biz.service.TscNaverPayService;
 import com.style24.core.biz.service.TscOrderService;
-import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.front.biz.service.TsfCartService;
 import com.style24.front.biz.service.TsfOrderService;
@@ -911,44 +909,6 @@ public class TsfOrderController extends TsfBaseController {
 		return mav;
 	}
 
-	/**
-	 * 카카오페이 결제 승인 처리 (삭제예졍)
-	 *
-	 * @param Order
-	 * @return GagaMap
-	 * @author card007
-	 * @since 2021. 03. 04
-	 */
-	@RequestMapping(value = "/kakao/payment/approve")
-	@ResponseBody
-	public GagaMap approveKakaoPayment(@RequestBody Payment payment) {
-		GagaMap result = new GagaMap();
-
-		result.set("payment", kakaoPayService.approveKakaoPayment(payment));
-		result.set("status", GagaResponseStatus.SUCCESS.getCode());
-
-		return result;
-	}
-
-	/**
-	 * 카카오페이 결제 취소 (삭제예정)
-	 *
-	 * @param Order
-	 * @return GagaMap
-	 * @author card007
-	 * @since 2021. 03. 04
-	 */
-	@RequestMapping(value = "/kakao/payment/cancel")
-	@ResponseBody
-	public GagaMap cancelKakaoPayment(@RequestBody Payment payment) {
-		GagaMap result = new GagaMap();
-
-		result.set("kakaoPay", kakaoPayService.cancelKakaoPayment(payment));
-		result.set("status", GagaResponseStatus.SUCCESS.getCode());
-
-		return result;
-	}
-
 	/**
 	 * 네이버페이 결제 요청 처리
 	 *
@@ -969,46 +929,6 @@ public class TsfOrderController extends TsfBaseController {
 		return mav;
 	}
 
-	/**
-	 * 네이버페이 결제 승인 처리 (삭제예졍)
-	 *
-	 * @param Order
-	 * @return GagaMap
-	 * @author card007
-	 * @since 2021. 03. 04
-	 */
-	@RequestMapping(value = "/naver/payment/approve")
-	@ResponseBody
-	public GagaMap approveNaverPayment(@RequestBody Payment payment) {
-		GagaMap result = new GagaMap();
-
-		result.set("payment", naverPayService.approveNaverPayment(payment));
-		result.set("status", GagaResponseStatus.SUCCESS.getCode());
-
-		return result;
-	}
-
-	/**
-	 * 네이버페이 결제 취소 (삭제예정)
-	 *
-	 * @param Order
-	 * @return GagaMap
-	 * @author card007
-	 * @since 2021. 03. 09
-	 */
-	@RequestMapping(value = "/naver/payment/cancel")
-	@ResponseBody
-	public GagaMap cancelNaverPayment(@RequestBody Payment payment) {
-		GagaMap result = new GagaMap();
-
-		result.set("naverPay", naverPayService.cancelNaverPayment(payment));
-		result.set("status", GagaResponseStatus.SUCCESS.getCode());
-
-		return result;
-	}
-
-	
-	
 	/**
 	 * 주문 데이터 생성
 	 *

+ 78 - 56
src/main/webapp/WEB-INF/views/web/mypage/MypageReturnFormWeb.html

@@ -87,7 +87,7 @@
 												<div class="form_field">
 													<div class="select_custom type1">
 														<div class="combo">
-<!--															<input type="hidden" name="chgQty" value="0" th:attr="ordDtlNo=${return.ordDtlNo}, ordCanChgQty=${return.ordCanChgQty}"/>-->
+															<input type="hidden" name="chgQty" value="0" th:attr="ordDtlNo=${return.ordDtlNo}, ordCanChgQty=${return.ordCanChgQty}"/>
 															<div class="select">선택</div>
 															<ul class="list" style="width:100px; margin:0 auto">
 																<li class="selected" value="0">선택</li>
@@ -126,7 +126,8 @@
 										<div class="form_field">
 											<div class="select_custom type1">
 												<div class="combo">
-													<div class="select" name="chgReason">반품 사유를 선택하세요</div>
+													<input type="hidden" name="chgReason"/>
+													<div class="select">반품 사유를 선택하세요</div>
 													<ul class="list" style="width:400px">
 														<li class="selected" value="">반품 사유를 선택하세요</li>
 														<li th:if="${returnReason}" th:each="oneData, status : ${returnReason}" th:value="${oneData.cd}" th:text="${oneData.cdNm}" onclick="fnChangeReason(this);"></li>
@@ -146,7 +147,7 @@
 							</table>
 						</div>
 					</section>
-					<section class="order_row">
+					<section class="order_row" id="wdGb">
 						<div class="order_tit">
 							<h3 class="subH3">반품 방식 선택</h3>
 						</div>
@@ -160,11 +161,11 @@
 									<td>
 										<div class="form_field radio_field">
 											<div class="">
-												<input type="radio" name="wdGb" id="withdraw" value="W" onclick="fnChangeWdGb();" checked>
+												<input type="radio" name="wdGb" id="withdraw" value="W" checked>
 												<label for="withdraw"><span>방문회수 <b class="c_primary">택배사에서 방문하여 회수</b></span></label>
 											</div>
 											<div class="">
-												<input type="radio" name="wdGb" id="direct" value="D" onclick="fnChangeWdGb();">
+												<input type="radio" name="wdGb" id="direct" value="D">
 												<label for="direct"><span>직접반송 <b class="c_primary">고객이 직접 반송처리</b></span></label>
 											</div>
 										</div>
@@ -316,6 +317,7 @@
 <script src="/ux/plugins/gaga/gaga.paging.js"></script>
 <script th:inline="javascript">
 	let returnList = [[${returnList.returnList}]];
+	let oneData = [[${returnList.oneData}]];
 	let usedGiftCardInfo = [[${usedGiftCardInfo}]];
 	let usedPointInfo = [[${usedPointInfo}]];
 	let refundPoint = 0;
@@ -332,6 +334,12 @@
 		$('.select_custom.type1').each(function(index) {
 			var selecter01 = new sCombo($(this));
 		});
+
+		// 입점업체의 경우 회수방식 직접배송 처리
+		if (oneData.selfGoodsYn == 'Y') {
+			$('#direct').click();
+			$('#wdGb').css('display','none');
+		}
 	});
 	
 	// 반품 처리
@@ -343,10 +351,14 @@
 	// 반품 수량 변경 이벤트 처리
 	var fnChangeQty = function(param) {
 		let url = '/mypage/cancel/refund/amt/calculate';
-		$(param).parent().parent().find('input[name=chgQty]').val($(param).val());
-		$(param).val();
-		let chgReason = $('div[name=chgReason]').parent().find('li.selected').attr('value');
-		
+
+		if (param != null) {
+			$(param).parent().parent().find('input[name=chgQty]').val($(param).val());
+		}
+
+		let chgReason = $('input[name=chgReason]').val();
+
+		console.log(chgReason);
 		if (!gagajf.isNull(chgReason)) {
 			let returnRequestList = [];
 
@@ -354,71 +366,81 @@
 			let chgQtyArr = [];
 			let ordDtlNoArr = [];
 			let ordCanChgQtyArr = [];
+			let chgQtyChk = 0;
 			$.each($('input[name=chgQty]'), function(idx, item) {
 				let chgQty = $(item).val();
 				let ordDtlNo = $(item).attr('ordDtlNo');
 				let ordCanChgQty = $(item).attr('ordCanChgQty');
-				
-				console.log('chgQty >>> '+chgQty);
-				console.log('ordDtlNo >>> '+ordDtlNo);
-				console.log('ordCanChgQty >>> '+ordCanChgQty);
 
 				chgQtyArr.push(Number(chgQty));
 				ordDtlNoArr.push(Number(ordDtlNo));
 				ordCanChgQtyArr.push(Number(ordCanChgQty));
+				
+				chgQtyChk += Number(chgQty);
 			});
-			
-			// 환불포인트, 환불상품권 금액 계산
-			let refundPoint = fnCalculatePoint(chgQtyArr, ordDtlNoArr, ordCanChgQtyArr);
-			let refundGiftCard = fnCalculateGiftCard(chgQtyArr, ordDtlNoArr, ordCanChgQtyArr);
-
-			$.each(returnList, function(idx, item) {
-				let index = ordDtlNoArr.indexOf(item.ordDtlNo);
-				item.ordCanChgQty = chgQtyArr[index];
 
-				returnRequestList.push(item);
-			})
-			
-			let jsonData = JSON.stringify(returnRequestList);
-			
-			gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
-				let spanCnclRtnAmt = Number(result.spanCnclRtnAmt);
-				let sumDeliveryFee = Number(result.sumDeliveryFee);
-				let spanTotDeliveryFee = Number(result.spanTotDeliveryFee);
-				let spanCpnDcAmt = Number(result.spanCpnDcAmt);
-				let spanTmtbDcAmt = Number(result.spanTmtbDcAmt);
-				let spanPrePntDcAmt = Number(result.spanPrePntDcAmt);
-				let spanRefundAmt = Number(result.spanRefundAmt);
+			if (chgQtyChk > 0) {
+				// 환불포인트, 환불상품권 금액 계산
+				let refundPoint = fnCalculatePoint(chgQtyArr, ordDtlNoArr, ordCanChgQtyArr);
+				let refundGiftCard = fnCalculateGiftCard(chgQtyArr, ordDtlNoArr, ordCanChgQtyArr);
 				
-				let goodsCancelAmt = spanCnclRtnAmt;										// 상품취소금액
-				let deliveryFee = sumDeliveryFee - spanTotDeliveryFee;						// 배송비
-				let deductDcAmt = 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;		// 할인금액 차감(쿠폰+다다익선+선포인트)
-				let refundPayAmt = spanRefundAmt;											// 결제금액 환불
-				let returnAmt = refundPayAmt + refundPoint + refundGiftCard;				// 환불예정금액
-
-				// 금액 설정
-				$('#returnAmt').text(returnAmt.addComma());
-				$('#goodsCancelAmt').text(goodsCancelAmt.addComma());
-				$('#deliveryFee').text(deliveryFee.addComma());
-				$('#deductDcAmt').text(deductDcAmt.addComma());
-				$('#refundPayAmt').text(refundPayAmt.addComma());
-				$('#refundPoint').text(refundPoint.addComma());
-				$('#refundGiftCard').text(refundGiftCard.addComma());
-				console.log(result);
-			})
+				$.each(returnList, function (idx, item) {
+					let index = ordDtlNoArr.indexOf(item.ordDtlNo);
+					item.ordCanChgQty = chgQtyArr[index];
+					
+					returnRequestList.push(item);
+				})
+				
+				let jsonData = JSON.stringify(returnRequestList);
+				
+				gagajf.ajaxJsonSubmit(url, jsonData, function (result) {
+					let spanCnclRtnAmt = Number(result.spanCnclRtnAmt);
+					let sumDeliveryFee = Number(result.sumDeliveryFee);
+					let spanTotDeliveryFee = Number(result.spanTotDeliveryFee);
+					let spanCpnDcAmt = Number(result.spanCpnDcAmt);
+					let spanTmtbDcAmt = Number(result.spanTmtbDcAmt);
+					let spanPrePntDcAmt = Number(result.spanPrePntDcAmt);
+					let spanRefundAmt = Number(result.spanRefundAmt);
+					
+					let goodsCancelAmt = spanCnclRtnAmt;										// 상품취소금액
+					let deliveryFee = sumDeliveryFee - spanTotDeliveryFee;						// 배송비
+					let deductDcAmt = 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt;		// 할인금액 차감(쿠폰+다다익선+선포인트)
+					let refundPayAmt = spanRefundAmt;											// 결제금액 환불
+					let returnAmt = refundPayAmt + refundPoint + refundGiftCard;				// 환불예정금액
+					
+					// 금액 설정
+					$('#returnAmt').text(returnAmt.addComma());
+					$('#goodsCancelAmt').text(goodsCancelAmt.addComma());
+					$('#deliveryFee').text(deliveryFee.addComma());
+					$('#deductDcAmt').text(deductDcAmt.addComma());
+					$('#refundPayAmt').text(refundPayAmt.addComma());
+					$('#refundPoint').text(refundPoint.addComma());
+					$('#refundGiftCard').text(refundGiftCard.addComma());
+					console.log(result);
+				});
+			}
 		}
 	}
+
+	// 반품 방식 변경 이벤트
+	$('input[name=wdGb]').on('change', function() {
+		let wdGb = $('input[name=wdGb]:radio:checked').val();
+
+		if (wdGb == 'W') {
+			$('#chgerLocation').css('display', '');
+			$('#returnLocation').css('display', 'none');
+		} else {
+			$('#chgerLocation').css('display', 'none');
+			$('#returnLocation').css('display', '');
+		}
+	});
 	
 	// 반품 사유 변경 이벤트
 	var fnChangeReason = function(param) {
 		// TODO
 		// 반품 사유 변경 처리
-	}
-	
-	// 반품 방식 선택 이벤트
-	var fnChangeWdGb = function() {
-		let wdGb = $('input[name=wdGb]:radio:checked').val();
-		console.log(wdGb);
+		$(param).parent().parent().find('input[name=chgReason]').val($(param).val());
+		fnChangeQty();
 	}
 
 	// 환불 포인트 계산