Преглед изворни кода

마이페이지 임시 커밋

card007 пре 5 година
родитељ
комит
265f8a1178

+ 51 - 42
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -66,26 +66,20 @@ public class TsfOrderService {
 		List<Order> ordDtlList = new ArrayList<>();
 		int ordNo = 0;
 		String ordDt = "";
-		String delvFeeCd = "";
-		String ordDtlStat = "";
-		String shotDelvYn = "";
 		String selfGoodsYn = "";
+		String supplyCompCd = "";
 		String shipCompNm = "";
 		String shipCompCd = "";
 		String invoiceNo = "";
 		String giftPackYn = "";
-		String reviewYn = "";
-		int reviewSq = 0;
 		int index = 0;
-
+		Boolean shotDelv = false;
+		Boolean selfMall = false;
+		Boolean supplyMall = false;
+		Boolean review = true;
+		
 		for (Order tmpOrder : orderDao.getOrderListForMypage(order)) {
-			if (ordNo != tmpOrder.getOrdNo()							// 주문번호 변경
-				|| !selfGoodsYn.equals(tmpOrder.getSelfGoodsYn())		// 자사여부 변경
-				|| ("N".equals(tmpOrder.getSelfGoodsYn())
-					&& !delvFeeCd.equals(tmpOrder.getDelvFeeCd()))		// 입점업체 배송정책코드 변경
-				|| !shotDelvYn.equals(tmpOrder.getShotDelvYn())) {		// 총알배송여부 변경
-
-				// 데이터 설정
+			if (ordNo != tmpOrder.getOrdNo()) {
 				if (index > 0) {
 					// 주문상세내역 목록 설정
 					GagaMap ordDtlMap = new GagaMap();
@@ -94,21 +88,21 @@ public class TsfOrderService {
 					ordDtlMap.set("shipCompCd", shipCompCd);
 					ordDtlMap.set("shipCompNm", shipCompNm);
 					ordDtlMap.set("invoiceNo", invoiceNo);
-					ordDtlMap.set("reviewSq", reviewSq);
 					ordDtlMap.set("recipBaseAddr", ordDtlList.iterator().next().getRecipBaseAddr());
 					ordDtlMap.set("giftLimitDay", ordDtlList.iterator().next().getGiftLimitDay());
 					ordDtlMap.set("recipNm", ordDtlList.iterator().next().getRecipNm());
 					ordDtlMap.set("giftLimitDt", ordDtlList.iterator().next().getGiftLimitDt());
 					ordDtlMap.set("purchaseConfirmDay", ordDtlList.iterator().next().getPurchaseConfirmDay());
-					ordDtlMap.set("ordDtlStatBanner", "Y");
+					ordDtlMap.set("review", review);
 					orderList.add(ordDtlMap);
-					
+
 					// 주문내역 목록 설정
 					GagaMap map = new GagaMap();
 					map.set("ordNo", ordNo);					// 주문번호
 					map.set("ordDt", ordDt);					// 주문일시
-					map.set("shotDelvYn", shotDelvYn);			// 총알배송여부
-					map.set("selfGoodsYn", selfGoodsYn);		// 자사여부
+					map.set("shotDelv", shotDelv);				// 총알배송 아이콘
+					map.set("selfMall", selfMall);				// STYLE24 일반배송 아이콘
+					map.set("supplyMall", supplyMall);			// 업체직배송 아이콘
 					map.set("giftPackYn", giftPackYn);			// 선물하기여부
 					map.set("orderList", orderList);			// 주문내역
 					mapList.add(map);
@@ -117,21 +111,16 @@ public class TsfOrderService {
 				// 데이터 설정 후 초기화 진행
 				ordNo = tmpOrder.getOrdNo();
 				ordDt = tmpOrder.getOrdDt();
-				delvFeeCd = tmpOrder.getDelvFeeCd();
-				ordDtlStat = tmpOrder.getOrdDtlStat();
-				shotDelvYn = tmpOrder.getShotDelvYn();
 				selfGoodsYn = tmpOrder.getSelfGoodsYn();
-				shipCompCd = tmpOrder.getShipCompCd();
-				shipCompNm = tmpOrder.getShipCompNm();
+				supplyCompCd = tmpOrder.getSupplyCompCd();
 				giftPackYn = tmpOrder.getGiftPackYn();
+				shotDelv = false;
+				selfMall = false;
+				supplyMall = false;
 				ordDtlList = new ArrayList<>();
 				orderList = new ArrayList<>();
-			} else if (index > 0 
-				&& (!ordDtlStat.equals(tmpOrder.getOrdDtlStat())						// 주문상세상태값 변경
-					|| ("G013_70".equals(tmpOrder.getOrdDtlStat())
-						&& !reviewYn.equals(tmpOrder.getReviewSq() > 0 ? "Y" : "N"))	// 리뷰작성 변경
-					|| (!invoiceNo.equals(tmpOrder.getInvoiceNo())))) {					// 송장번호 변경
-
+			} else if (!selfGoodsYn.equals(tmpOrder.getSelfGoodsYn())
+					|| ("N".equals(tmpOrder.getSelfGoodsYn()) && !supplyCompCd.equals(tmpOrder.getSupplyCompCd()))) {
 				// 주문내역 목록 설정
 				GagaMap ordDtlMap = new GagaMap();
 				ordDtlMap.set("ordDtlList", ordDtlList);
@@ -139,30 +128,50 @@ public class TsfOrderService {
 				ordDtlMap.set("shipCompCd", shipCompCd);
 				ordDtlMap.set("shipCompNm", shipCompNm);
 				ordDtlMap.set("invoiceNo", invoiceNo);
-				ordDtlMap.set("reviewSq", reviewSq);
 				ordDtlMap.set("purchaseConfirmDay", ordDtlList.iterator().next().getPurchaseConfirmDay());
 				ordDtlMap.set("recipBaseAddr", ordDtlList.iterator().next().getRecipBaseAddr());
 				ordDtlMap.set("giftLimitDay", ordDtlList.iterator().next().getGiftLimitDay());
 				ordDtlMap.set("recipNm", ordDtlList.iterator().next().getRecipNm());
 				ordDtlMap.set("giftLimitDt", ordDtlList.iterator().next().getGiftLimitDt());
-				ordDtlMap.set("ordDtlStatBanner", "Y");
+				ordDtlMap.set("review", review);
 				orderList.add(ordDtlMap);
 
 				// 상태 별 배너 설정 후 초기화 진행
 				ordDtlList = new ArrayList<>();
-				ordDtlStat = tmpOrder.getOrdDtlStat();
+				selfGoodsYn = tmpOrder.getSelfGoodsYn();
+				supplyCompCd = tmpOrder.getSupplyCompCd();
 			}
 
 			// 주문내역 설정
 			ordDtlList.add(tmpOrder);
+			
+			// 총알배송 아이콘 설정
+			if (!shotDelv && "Y".equals(tmpOrder.getShotDelvYn())) {
+				shotDelv = true;
+			}
 
-			// 인덱스 처리
-			index++;
+			// STYLE24 일반배송 아이콘 설정
+			if (!selfMall && "Y".equals(tmpOrder.getSelfGoodsYn())) {
+				selfMall = true;
+			}
+
+			// 업체직배송 아이콘 설정
+			if (!supplyMall && "N".equals(tmpOrder.getSelfGoodsYn())) {
+				supplyMall = true;
+			}
+			
+			// 리뷰 작성 여부 설정
+			if (review && tmpOrder.getReviewSq() == 0) {
+				review = false;
+			}
 			
-			// 초기화 진행
+			// 배송정보 설정
+			shipCompCd = tmpOrder.getShipCompCd();
+			shipCompNm = tmpOrder.getShipCompNm();
 			invoiceNo = tmpOrder.getInvoiceNo();
-			reviewSq = tmpOrder.getReviewSq();
-			reviewYn = tmpOrder.getReviewSq() > 0 ? "Y" : "N";
+
+			// 인덱스 처리
+			index++;
 		}
 
 		// 마지막 데이터 설정
@@ -174,26 +183,26 @@ public class TsfOrderService {
 			ordDtlMap.set("shipCompCd", shipCompCd);
 			ordDtlMap.set("shipCompNm", shipCompNm);
 			ordDtlMap.set("invoiceNo", invoiceNo);
-			ordDtlMap.set("reviewSq", reviewSq);
 			ordDtlMap.set("purchaseConfirmDay", ordDtlList.iterator().next().getPurchaseConfirmDay());
 			ordDtlMap.set("recipBaseAddr", ordDtlList.iterator().next().getRecipBaseAddr());
 			ordDtlMap.set("giftLimitDay", ordDtlList.iterator().next().getGiftLimitDay());
 			ordDtlMap.set("recipNm", ordDtlList.iterator().next().getRecipNm());
 			ordDtlMap.set("giftLimitDt", ordDtlList.iterator().next().getGiftLimitDt());
-			ordDtlMap.set("ordDtlStatBanner", "Y");
+			ordDtlMap.set("review", review);
 			orderList.add(ordDtlMap);
 
 			// 주문내역 목록 설정
 			GagaMap map = new GagaMap();
 			map.set("ordNo", ordNo);
 			map.set("ordDt", ordDt);
-			map.set("shotDelvYn", shotDelvYn);
-			map.set("selfGoodsYn", selfGoodsYn);
+			map.set("shotDelv", shotDelv);
+			map.set("selfMall", selfMall);
+			map.set("supplyMall", supplyMall);
 			map.set("giftPackYn", giftPackYn);
 			map.set("orderList", orderList);
 			mapList.add(map);
 		}
-
+		
 		return mapList;
 	}
 

+ 3 - 3
src/main/webapp/WEB-INF/views/web/mypage/MypageExchangeFormWeb.html

@@ -40,9 +40,9 @@
 								<span class="order_date" th:text="${oneData.ordDt}"></span>
 
 								<!-- 배송구분 설정 -->
-								<span class="order_label02" th:if="${oneData.shotDelvYn == 'Y'}">총알배송</span>
-								<span class="order_label01" th:if="${oneData.shotDelvYn == 'N' and oneData.selfGoodsYn == 'Y'}">STYLE24 일반배송</span>
-								<span class="order_label01" th:if="${oneData.selfGoodsYn == 'N'}">업체직배송</span>
+								<span class="order_label02" th:if="${oneData.shotDelv}">총알배송</span>
+								<span class="order_label01" th:if="${oneData.selfMall}">STYLE24 일반배송</span>
+								<span class="order_label01" th:if="${oneData.supplyMall}">업체직배송</span>
 								<!-- //배송구분 설정 -->
 								<a href="javascript:void(0)" class="detail_btn" th:attr="ordNo=${oneData.ordNo}" onclick="fnGoToOrderDetail(this)">주문상세보기</a>
 							</div>

+ 48 - 49
src/main/webapp/WEB-INF/views/web/mypage/MypageOrderDetailFormWeb.html

@@ -41,9 +41,9 @@
 								<span class="order_date" th:text="${oneData.ordDt}"></span>
 
 								<!-- 배송구분 설정 -->
-								<span class="order_label02" th:if="${oneData.shotDelvYn == 'Y'}">총알배송</span>
-								<span class="order_label01" th:if="${oneData.shotDelvYn == 'N' and oneData.selfGoodsYn == 'Y'}">STYLE24 일반배송</span>
-								<span class="order_label01" th:if="${oneData.selfGoodsYn == 'N'}">업체직배송</span>
+								<span class="order_label02" th:if="${oneData.shotDelv}">총알배송</span>
+								<span class="order_label01" th:if="${oneData.selfMall}">STYLE24 일반배송</span>
+								<span class="order_label01" th:if="${oneData.supplyMall}">업체직배송</span>
 								<!-- //배송구분 설정 -->
 <!--								<a href="javascript:void(0)" class="detail_btn" th:attr="ordNo=${oneData.ordNo}" onclick="fnGoToOrderDetail(this)">주문상세보기</a>-->
 							</div>
@@ -95,9 +95,10 @@
 														<p class="dlvr_desc" th:if="${ordDtl.delvEddt}" th:text="|${ordDtl.delvEddt}일 도착|"></p>
 													</div>
 													<div class="tbl_btn_wrap case02">
-														<button type="button" class="btn btn_default btn_sm" onclick="fnCreateExchange(this);"><span>교환</span></button>
-														<button type="button" class="btn btn_default btn_sm" onclick="fnCreateCancel(this);"><span>반품/취소</span></button>
-														<button type="button" class="btn btn_default btn_sm" th:if="${ordDtl.reviewSq == 0}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>
+														<button type="button" class="btn btn_default btn_sm" onclick="fnCreateExchange(this, 'exchange');"><span>교환</span></button>
+														<button type="button" class="btn btn_default btn_sm" onclick="fnCreateCancel(this, 'cancel');"><span>반품/취소</span></button>
+<!--														<button type="button" class="btn btn_default btn_sm" th:if="${ordDtl.reviewSq == 0}" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>-->
+														<button type="button" class="btn btn_default btn_sm" th:if="${!order.review}" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>
 													</div>
 												</td>
 												<td class="merge_row" th:if="${oneData.giftPackYn == 'Y' and #strings.isEmpty(ordDtl.recipBaseAddr)}">
@@ -123,48 +124,46 @@
 										</tbody>
 									</table>
 								</div>
-								<th:block th:if="${order.ordDtlStatBanner == 'Y'}">
-									<!-- 주문 -->
-									<th:block th:unless="${oneData.giftPackYn == 'Y'}">
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_00' or order.ordDtlStat == 'G013_10' or order.ordDtlStat == 'G013_11'}">
-											<span class="cf_txt">주문 완료 / 결제를 기다리고 있습니다.</span>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_20' or order.ordDtlStat == 'G013_30' or order.ordDtlStat == 'G013_35'}">
-											<span class="cf_txt">배송할 상품을 준비 중입니다.</span>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_40'}">
-											<span class="cf_txt">상품준비가 완료되어 곧 배송될 예정입니다.</span>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_50' or order.ordDtlStat == 'G013_55'}">
-											<span class="cf_txt" th:text="|${order.shipCompNm} / ${order.invoiceNo}|"></span>
-											<button type="button" class="btn btn_primary" th:attr="ordNo=${oneData.ordNo}, invoiceNo=${order.invoiceNo}, shipCompCd=${order.shipCompCd}" onclick="fnGetDeliveryInfo(this)">배송조회</button>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_60'}">
-											<span class="cf_txt" th:text="|${order.purchaseConfirmDay}일 후 자동으로 구매확정|"></span>
-											<button type="button" class="btn btn_primary" onclick="fnDecideOrder(this);">구매확정 하기</button>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq == 0}">
-											<span class="cf_txt">리뷰를 작성하면 다른 구매자에게 도움이 될 수 있습니다.</span>
-											<button type="button" class="btn btn_primary" banner="banner" onclick="fnCreateReview(this, 'Y');">리뷰작성</button>
-										</div>
-										<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq > 0}">
-											<span class="cf_txt">주문내역 다시 구매하기 위해</span>
-											<button type="button" class="btn btn_primary" onclick="fnCreateCart(this, 'Y');">장바구니 담기</button>
-										</div>
-									</th:block>
+								<!-- 주문 -->
+								<th:block th:unless="${oneData.giftPackYn == 'Y'}">
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_00' or order.ordDtlStat == 'G013_10' or order.ordDtlStat == 'G013_11'}">
+										<span class="cf_txt">주문 완료 / 결제를 기다리고 있습니다.</span>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_20' or order.ordDtlStat == 'G013_30' or order.ordDtlStat == 'G013_35'}">
+										<span class="cf_txt">배송할 상품을 준비 중입니다.</span>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_40'}">
+										<span class="cf_txt">상품준비가 완료되어 곧 배송될 예정입니다.</span>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_50' or order.ordDtlStat == 'G013_55'}">
+										<span class="cf_txt" th:text="|${order.shipCompNm} / ${order.invoiceNo}|"></span>
+										<button type="button" class="btn btn_primary" th:attr="ordNo=${oneData.ordNo}, invoiceNo=${order.invoiceNo}, shipCompCd=${order.shipCompCd}" onclick="fnGetDeliveryInfo(this)">배송조회</button>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_60'}">
+										<span class="cf_txt" th:text="|${order.purchaseConfirmDay}일 후 자동으로 구매확정|"></span>
+										<button type="button" class="btn btn_primary" onclick="fnDecideOrder(this);">구매확정 하기</button>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq == 0}">
+										<span class="cf_txt">리뷰를 작성하면 다른 구매자에게 도움이 될 수 있습니다.</span>
+										<button type="button" class="btn btn_primary" banner="banner" onclick="fnCreateReview(this, 'Y');">리뷰작성</button>
+									</div>
+									<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq > 0}">
+										<span class="cf_txt">주문내역 다시 구매하기 위해</span>
+										<button type="button" class="btn btn_primary" onclick="fnCreateCart(this, 'Y');">장바구니 담기</button>
+									</div>
+								</th:block>
 
-									<!-- 선물 -->
-									<th:block th:if="${oneData.giftPackYn == 'Y'}">
-										<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay >= 0}">
-											<span class="cf_txt" th:text="|${order.recipNm}님이 주소를 입력하기 전입니다. (입력기한 ${order.giftLimitDt})|"></span>
-										</div>
-										<div class="order_confirm" th:unless="${#strings.isEmpty(order.recipBaseAddr)}">
-											<span class="cf_txt" th:text="|${order.recipNm}님께 선물이 발송되었습니다.|"></span>
-										</div>
-										<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay < 0}">
-											<span class="cf_txt">주소입력 기한이 경과되어 선물이 취소 되었습니다.</span>
-										</div>
-									</th:block>
+								<!-- 선물 -->
+								<th:block th:if="${oneData.giftPackYn == 'Y'}">
+									<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay >= 0}">
+										<span class="cf_txt" th:text="|${order.recipNm}님이 주소를 입력하기 전입니다. (입력기한 ${order.giftLimitDt})|"></span>
+									</div>
+									<div class="order_confirm" th:unless="${#strings.isEmpty(order.recipBaseAddr)}">
+										<span class="cf_txt" th:text="|${order.recipNm}님께 선물이 발송되었습니다.|"></span>
+									</div>
+									<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay < 0}">
+										<span class="cf_txt">주소입력 기한이 경과되어 선물이 취소 되었습니다.</span>
+									</div>
 								</th:block>
 							</th:block>
 						</div>
@@ -239,10 +238,10 @@
 								<col width="*">
 							</colgroup>
 							<tbody>
-							<tr>
+							<tr th:if="${deliveryAddrInfo.recipNm}">
 								<td th:text="${deliveryAddrInfo.recipNm}"><span class="sr-only">배송지명</span></td>
 							</tr>
-							<tr>
+							<tr th:if="${${deliveryAddrInfo.recipBaseAddr}}">
 								<td th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"><span class="sr-only">배송 주소</span></td>
 							</tr>
 							<tr>

+ 0 - 6
src/main/webapp/WEB-INF/views/web/mypage/MypageOrderListFormWeb.html

@@ -142,12 +142,6 @@
 		fnSearchOrderList(1);
 	});
 	
-	// 주문상세보기 버튼 클릭 이벤트 처리
-	var fnGoToOrderDetail = function(param) {
-		let ordNo = $(param).attr('ordNo');
-		cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
-	}
-	
 	// 검색기간 버튼 클릭 이벤트 처리
 	var fnSetSearchPeriod = function(period) {
 		let date = new Date();

+ 47 - 48
src/main/webapp/WEB-INF/views/web/mypage/MypageOrderListWeb.html

@@ -25,9 +25,9 @@
 			<span class="order_date" th:text="${oneData.ordDt}"></span>
 
 			<!-- 배송구분 설정 -->
-			<span class="order_label02" th:if="${oneData.shotDelvYn == 'Y'}">총알배송</span>
-			<span class="order_label01" th:if="${oneData.shotDelvYn == 'N' and oneData.selfGoodsYn == 'Y'}">STYLE24 일반배송</span>
-			<span class="order_label01" th:if="${oneData.selfGoodsYn == 'N'}">업체직배송</span>
+			<span class="order_label02" th:if="${oneData.shotDelv}">총알배송</span>
+			<span class="order_label01" th:if="${oneData.selfMall}">STYLE24 일반배송</span>
+			<span class="order_label01" th:if="${oneData.supplyMall}">업체직배송</span>
 			<!-- //배송구분 설정 -->
 			<a href="javascript:void(0)" class="detail_btn" th:attr="ordNo=${oneData.ordNo}" onclick="fnGoToOrderDetail(this)">주문상세보기</a>
 		</div>
@@ -78,9 +78,10 @@
 									<p class="dlvr_desc" th:if="${ordDtl.delvEddt}" th:text="|${ordDtl.delvEddt}일 도착|"></p>
 								</div>
 								<div class="tbl_btn_wrap case02">
-									<button type="button" class="btn btn_default btn_sm" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateExchange(this);"><span>교환</span></button>
-									<button type="button" class="btn btn_default btn_sm" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateCancel(this);"><span>반품/취소</span></button>
-									<button type="button" class="btn btn_default btn_sm" th:if="${ordDtl.reviewSq == 0}" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>
+									<button type="button" class="btn btn_default btn_sm" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateChange(this, 'exchange');"><span>교환</span></button>
+									<button type="button" class="btn btn_default btn_sm" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateChange(this, 'cancel');"><span>반품/취소</span></button>
+<!--									<button type="button" class="btn btn_default btn_sm" th:if="${ordDtl.reviewSq == 0}" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>-->
+									<button type="button" class="btn btn_default btn_sm" th:if="${!order.review}" th:attr="ordNo=${oneData.ordNo}" onclick="fnCreateReview(this);"><span>리뷰작성</span></button>
 								</div>
 							</td>
 							<td class="merge_row" th:if="${oneData.giftPackYn == 'Y' and #strings.isEmpty(ordDtl.recipBaseAddr)}">
@@ -106,48 +107,46 @@
 					</tbody>
 				</table>
 			</div>
-			<th:block th:if="${order.ordDtlStatBanner == 'Y'}">
-				<!-- 주문 -->
-				<th:block th:unless="${oneData.giftPackYn == 'Y'}">
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_00' or order.ordDtlStat == 'G013_10' or order.ordDtlStat == 'G013_11'}">
-						<span class="cf_txt">주문 완료 / 결제를 기다리고 있습니다.</span>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_20' or order.ordDtlStat == 'G013_30' or order.ordDtlStat == 'G013_35'}">
-						<span class="cf_txt">배송할 상품을 준비 중입니다.</span>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_40'}">
-						<span class="cf_txt">상품준비가 완료되어 곧 배송될 예정입니다.</span>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_50' or order.ordDtlStat == 'G013_55'}">
-						<span class="cf_txt" th:text="|${order.shipCompNm} / ${order.invoiceNo}|"></span>
-						<button type="button" class="btn btn_primary" th:attr="ordNo=${oneData.ordNo}, invoiceNo=${order.invoiceNo}, shipCompCd=${order.shipCompCd}" onclick="fnGetDeliveryInfo(this)">배송조회</button>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_60'}">
-						<span class="cf_txt" th:text="|${order.purchaseConfirmDay}일 후 자동으로 구매확정|"></span>
-						<button type="button" class="btn btn_primary" onclick="fnDecideOrder(this);">구매확정 하기</button>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq == 0}">
-						<span class="cf_txt">리뷰를 작성하면 다른 구매자에게 도움이 될 수 있습니다.</span>
-						<button type="button" class="btn btn_primary" onclick="fnCreateReview(this, 'Y');">리뷰작성</button>
-					</div>
-					<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.reviewSq > 0}">
-						<span class="cf_txt">주문내역 다시 구매하기 위해</span>
-						<button type="button" class="btn btn_primary" onclick="fnCreateCart(this, 'Y');">장바구니 담기</button>
-					</div>
-				</th:block>
-	
-				<!-- 선물 -->
-				<th:block th:if="${oneData.giftPackYn == 'Y'}">
-					<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay >= 0}">
-						<span class="cf_txt" th:text="|${order.recipNm}님이 주소를 입력하기 전입니다. (입력기한 ${order.giftLimitDt})|"></span>
-					</div>
-					<div class="order_confirm" th:unless="${#strings.isEmpty(order.recipBaseAddr)}">
-						<span class="cf_txt" th:text="|${order.recipNm}님께 선물이 발송되었습니다.|"></span>
-					</div>
-					<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay < 0}">
-						<span class="cf_txt">주소입력 기한이 경과되어 선물이 취소 되었습니다.</span>
-					</div>
-				</th:block>
+			<!-- 주문 -->
+			<th:block th:unless="${oneData.giftPackYn == 'Y'}">
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_00' or order.ordDtlStat == 'G013_10' or order.ordDtlStat == 'G013_11'}">
+					<span class="cf_txt">주문 완료 / 결제를 기다리고 있습니다.</span>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_20' or order.ordDtlStat == 'G013_30' or order.ordDtlStat == 'G013_35'}">
+					<span class="cf_txt">배송할 상품을 준비 중입니다.</span>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_40'}">
+					<span class="cf_txt">상품준비가 완료되어 곧 배송될 예정입니다.</span>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_50' or order.ordDtlStat == 'G013_55'}">
+					<span class="cf_txt" th:text="|${order.shipCompNm} / ${order.invoiceNo}|"></span>
+					<button type="button" class="btn btn_primary" th:attr="ordNo=${oneData.ordNo}, invoiceNo=${order.invoiceNo}, shipCompCd=${order.shipCompCd}" onclick="fnGetDeliveryInfo(this)">배송조회</button>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_60'}">
+					<span class="cf_txt" th:text="|${order.purchaseConfirmDay}일 후 자동으로 구매확정|"></span>
+					<button type="button" class="btn btn_primary" onclick="fnDecideOrder(this);">구매확정 하기</button>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and !order.review}">
+					<span class="cf_txt">리뷰를 작성하면 다른 구매자에게 도움이 될 수 있습니다.</span>
+					<button type="button" class="btn btn_primary" onclick="fnCreateReview(this, 'Y');">리뷰작성</button>
+				</div>
+				<div class="order_confirm" th:if="${order.ordDtlStat == 'G013_70' and order.review}">
+					<span class="cf_txt">주문내역 다시 구매하기 위해</span>
+					<button type="button" class="btn btn_primary" onclick="fnCreateCart(this, 'Y');">장바구니 담기</button>
+				</div>
+			</th:block>
+
+			<!-- 선물 -->
+			<th:block th:if="${oneData.giftPackYn == 'Y'}">
+				<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay >= 0}">
+					<span class="cf_txt" th:text="|${order.recipNm}님이 주소를 입력하기 전입니다. (입력기한 ${order.giftLimitDt})|"></span>
+				</div>
+				<div class="order_confirm" th:unless="${#strings.isEmpty(order.recipBaseAddr)}">
+					<span class="cf_txt" th:text="|${order.recipNm}님께 선물이 발송되었습니다.|"></span>
+				</div>
+				<div class="order_confirm" th:if="${#strings.isEmpty(order.recipBaseAddr) and order.giftLimitDay < 0}">
+					<span class="cf_txt">주소입력 기한이 경과되어 선물이 취소 되었습니다.</span>
+				</div>
 			</th:block>
 		</th:block>
 	</div>

+ 20 - 21
src/main/webapp/ux/pc/js/cart.js

@@ -1,3 +1,9 @@
+// 주문상세보기 버튼 클릭 이벤트 처리
+var fnGoToOrderDetail = function(param) {
+	let ordNo = $(param).attr('ordNo');
+	cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
+}
+
 // 배송조회 버튼 클릭 이벤트
 var fnGetDeliveryInfo = function(param) {
 	let invoiceNo = $(param).attr('invoiceNo');
@@ -7,7 +13,7 @@ var fnGetDeliveryInfo = function(param) {
 	// 배송조회 처리
 }
 
-// 구매확정 처리
+// 구매확정 버튼 클릭 이벤트
 var fnDecideOrder = function(param) {
 	let ordDtlNoArr = $(param).parent().parent().find('input[name=ordDtlNo]');
 	let ordDtlStatArr = $(param).parent().parent().find('input[name=ordDtlStat]');
@@ -140,34 +146,27 @@ var fnReSendSms = function(param) {
 	// 선물하기 SMS 재발송 처리
 }
 
-// 교환 버튼 클릭 이벤트
-var fnCreateExchange = function(param) {
+// 반품/취소/교환 버튼 클릭 이벤트
+var fnCreateChange = function(param, gubun) {
 	if (ordNo == null) {
 		ordNo = $(param).attr('ordNo');
 	}
-
+	
 	let ordDtlNoArr = $(param).parent().parent().parent().parent().find('input[name=ordDtlNo]');
 	
-	let exchangeArr = [];
+	let changeArr = [];
 	$.each(ordDtlNoArr, function(idx, item) {
-		exchangeArr.push(item.value);
+		changeArr.push(item.value);
 	})
 	
+	$('#' + gubun + 'Form input[name=ordNo]').val(ordNo);
+	$('#' + gubun + 'Form input[name=ordDtlNoArr]').val(changeArr);
 	
-	// TODO
-	// 교환신청 페이지 이동 처리
-	$('#exchangeForm input[name=ordNo]').val(ordNo);
-	$('#exchangeForm input[name=ordDtlNoArr]').val(exchangeArr);
-	
-	document.exchangeForm.submit();
-}
-
-// 반품/취소 버튼 클릭 이벤트
-var fnCreateCancel = function(param) {
-	let ordDtlNoArr = $(param).parent().parent().parent().parent().find('input[name=ordDtlNo]');
-	
-	// TODO
-	// 반품/취소신청 페이지 이동 처리
+	if (gubun == 'cancel') {
+		document.cancelForm.submit();
+	} else {
+		document.exchangeForm.submit();
+	}
 }
 
 // 주문 내역 삭제 처리
@@ -231,4 +230,4 @@ var cfnGetTextLength = function(obj, maxLen, dpLoc) {
 	}
 	
 	$(dpLoc).text(cByte.addComma());
-}
+}