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

Merge remote-tracking branch 'origin/xodud1202' into develop

xodud lee 4 лет назад
Родитель
Сommit
2eb8b05fb5

+ 5 - 0
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -405,6 +405,11 @@ public class TsfOrderService {
 			}
 
 			// TB_PAYMENT 등록. 실패시 PG 환불.
+			if(TscConstants.PgGb.NAVER.value().equals(param.getPgGb()) && !"SUCCESS".equals(result.getCode().toUpperCase())) {
+				result.setPgGb(param.getPgGb());
+				return result;
+			}
+
 			if(coreOrderDao.updatePaymentOrderComplete(result) < 1) {
 				if(TscConstants.PgGb.KCP.value().equals(param.getPgGb()) || TscConstants.PgGb.PAYCO.value().equals(param.getPgGb())) {
 					if(TscConstants.PayMeans.GIFTCARD.value().equals(param.getPayMeans())) {

+ 11 - 2
src/main/java/com/style24/front/biz/web/TsfCartController.java

@@ -386,7 +386,8 @@ public class TsfCartController extends TsfBaseController {
 	 */
 	@GetMapping("/quick/cart/list")
 	@ResponseBody
-	public Order getCartList() {
+	public GagaMap getCartList() {
+		GagaMap result = new GagaMap();
 		Order cart = new Order();
 
 		// 장바구니 상품목록
@@ -431,7 +432,15 @@ public class TsfCartController extends TsfBaseController {
 
 		cart.setDelvAllCartList(cartList);
 
-		return cart;
+		if(cart.getTotCartCnt() < 1) {
+			// 장바구니 상품이 없을 경우
+			Collection<Item> itemList = eigeneaiApi.getRealtimeViewGoodsList(20);
+			result.put("itemList", itemList);
+		}
+
+		result.put("order", cart);
+
+		return result;
 	}
 
 	/**

+ 8 - 1
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -869,7 +869,14 @@ public class TsfOrderController extends TsfBaseController {
 		
 		// 2. 결재정보등록(TB_PAYMENT)
 		param = orderService.orderPgPayResult(param, request, response);
-		
+
+		log.info("CHECK RES_CD :::: {} / {}", param.getCode(), param.getResCd());
+		if(TscConstants.PgGb.NAVER.value().equals(param.getPgGb()) && !"SUCCESS".equals(param.getCode().toUpperCase())) {
+			ModelAndView redir = new ModelAndView();
+			redir.setViewName("redirect:/order/payment/fail");
+			return redir;
+		}
+
 		order.setOrdNo(param.getOrdNo());
 		order.setSellGb("10");
 		order.setPgGb(param.getPgGb());

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

@@ -3710,13 +3710,10 @@
 		     , Z.ITEM_URL
 		     , Z.CATEGORY_ID
 		     , G.LIST_PRICE                                                       AS ORIGINAL_PRICE /*정상가*/
-		     , FN_GET_BENEFIT_PRICE(#{frontGb},G.GOODS_CD,G.CURR_PRICE,#{custGb}) AS CURR_PRICE     /*현재판매가*/
+		     , FN_GET_BENEFIT_PRICE(#{frontGb},G.GOODS_CD,G.CURR_PRICE,#{custGb}) AS SALE_PRICE     /*현재판매가*/
 		     , BG.BRAND_GROUP_NO                                                  AS BRAND_ID       /*브랜드ID(브랜드그룹번호)*/
-		     , CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
-		                BG.BRAND_GROUP_ENM
-		            ELSE
-		                BG.BRAND_GROUP_KNM
-		       END                                                                AS BRAND_NAME     /*브랜드명(브랜드그룹명)*/
+		     , CASE WHEN BG.DISP_NM_LANG = 'EN' THEN BG.BRAND_GROUP_ENM
+		            ELSE BG.BRAND_GROUP_KNM END                                   AS BRAND_NAME     /*브랜드명(브랜드그룹명)*/
 		     <choose>
 		         <when test="custNo != null and custNo > 0"> <!-- 로그인 했으면 -->
 		     , IF(W.GOODS_CD IS NULL,0,1)                                         AS WISH_CNT       /*위시리스트담긴상품*/

+ 33 - 1
src/main/webapp/WEB-INF/views/mob/cart/CartListFormMob.html

@@ -27,7 +27,7 @@
 		</section>
 
 		<th:block th:if="${cartSize>0}">
-			<div class="od_recommend">
+			<div class="od_recommend" style="background-color:white;">
 				<h3>추천상품</h3>
 				<div class="swiper-container item_list swiper-container-initialized swiper-container-horizontal swiper-container-ios">
 					<div class="swiper-wrapper" style="transform: translate3d(0px, 0px, 0px);">
@@ -58,6 +58,31 @@
 			</div>
 		</th:block>
 
+		<th:block th:if="${cartSize == null or cartSize == 0}">
+			<div class="od_liveview" style="background-color:white;">
+				<h3>지금 많이 보고 있어요</h3>
+				<div class="swiper-container item_list">
+					<div class="swiper-wrapper">
+						<th:block th:each="cart, status : ${recomGoodsList}">
+							<div class="swiper-slide">
+								<div class="item_prod">
+									<div class="item_state">
+										<a th:href="${cart.itemUrl}" class="itemLink">
+											<div class="itemPic">
+												<img alt="BLACK-a" class=" vLHTC pd_img" th:src="${cart.imageUrl}" src="">
+											</div>
+											<div class="itemName" th:text="${cart.itemName}"></div>
+											<div class="viewComment" th:text="${cart.count + '명 보는중'}"></div>
+										</a>
+									</div>
+								</div>
+							</div>
+						</th:block>
+					</div>
+				</div>
+			</div>
+		</th:block>
+
 		<!-- 옵션변경_팝업01 -->
 		<div id="optModifyPop01" class="popup_box optModifyPop optModifyPop01">
 			<div class="lap">
@@ -165,6 +190,13 @@
 			centerMode: true
 		});
 
+		//추천상품_슬라이드
+		var od_liveview_slide = new Swiper('.od_liveview .swiper-container', {
+			slidesPerView: 3,
+			spaceBetween: 8,
+			centerMode: true,
+		});
+
 		//배송요청사항
 		// var my_deilivery_selecter = new sCombo('.my .ship_request .select_custom');
 

+ 4 - 26
src/main/webapp/WEB-INF/views/web/cart/CartListFormWeb.html

@@ -99,7 +99,7 @@
 								<div class="swiper-slide">
 									<div class="item_prod">
 										<div class="item_state">
-											<button type="button" class="itemLike" onclick="cfnPutWishList(this);" th:attr="goodscd=${cart.itemId}, ithrCd='IN18_01', contentsLoc='', planDtlSq=''">관심상품 추가</button>
+											<button type="button" class="itemLike" th:classappend="${cart.wishCnt > 0} ? 'likeit active'" onclick="cfnPutWishList(this);" th:attr="goodscd=${cart.itemId}, ithrCd='IN18_01', contentsLoc='', planDtlSq=''">관심상품 추가</button>
 											<a th:href="${cart.itemUrl}" class="itemLink">
 												<div class="itemPic">
 													<img alt="BLACK-a" class=" vLHTC pd_img" th:src="${cart.imageUrl}" src="">
@@ -148,32 +148,10 @@
         // 장바구니 상품 정보 select
         getCartList();
 
-        // 로그인 되어 있을 경우 체크
-		if("[[${cartSize}]]" == "" || "[[${cartSize}]]" == "0") {
+        // 장바구니 수량이 존재하는경우
+		if("[[${cartSize}]]" != "" && [[${cartSize}]] > 0) {
 			if(cfCheckLogin()) {
-				// 장바구니 보유 상품 없을 경우 추천솔루션 > "지금 많이 보고있어요" 영역
-				let targetT = $('#container .od_realtime').find('.item_state').find('button');
-				targetT.each(function(){
-					let goodsCd = $(this).attr('goodscd');
-					var $this = $(this);
-					let url = "/mypage/wish/list/check/"+goodsCd;
-					var result = '';
-					$.ajax({
-						type: 'get'
-						, async: false
-						, url: url
-						, success: function (data) {
-							//likeit active
-							if ("Y" == data){
-								$this.addClass('likeit').addClass('active');
-							}
-						}
-					});
-				});
-			}
-		} else {
-			if(cfCheckLogin()) {
-				// 장바구니 보유 상품 없을 경우 추천솔루션 > "지금 많이 보고있어요" 영역
+				// 장바구니 보유 상품 있을 경우 추천솔루션 > "추천 상품" 영역
 				let targetT = $('#container .od_recommend').find('.item_state').find('button');
 				targetT.each(function(){
 					let goodsCd = $(this).attr('goodscd');

+ 17 - 9
src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html

@@ -1071,7 +1071,9 @@
 
 	// 장바구니
 	let fnGetCartGoodsList = function() {
-		$.getJSON('/cart/quick/cart/list', function(order, status) {
+		$.getJSON('/cart/quick/cart/list', function(result, status) {
+			let order = result.order;
+
 			$("#quick_menu .shopingbag.quick_con.quick02 .quick_head a").attr("href", _PAGE_CART);
 			$("#header .gnb .btn_cart").attr("href", _PAGE_CART);
 
@@ -1146,6 +1148,8 @@
 
 					$("#quick_menu #quick02 .count").text(order.delvAllCartList.length);
 				} else {
+					let itemList = result.itemList;
+
 					if(!$("#quick_menu .shopingbag.quick_con.quick02 .quick_body").hasClass("nodata")) {
 						$("#quick_menu .shopingbag.quick_con.quick02 .quick_body").addClass("nodata");
 					}
@@ -1153,19 +1157,22 @@
 					quickShoppingBagHtml += '<div class="itemsGrp empty">';
 					quickShoppingBagHtml += '	<p class="desc">쇼핑백에 담긴 상품이 없습니다.</p>';
 					quickShoppingBagHtml += '	<span class="subH3">지금 많이 보고있어요</span>';
-					for(let i = 0 ; i < 10 ; i++) {
+					for(let i = 0 ; i < itemList.length ; i++) {
+						let item = itemList[i];
 						quickShoppingBagHtml += '	<div class="item_prod">';
 						quickShoppingBagHtml += '		<div class="item_state">';
-						quickShoppingBagHtml += '			<a href="javascript:;" class="itemLink">';
+						quickShoppingBagHtml += '			<a href="' + item.itemUrl + '" class="itemLink">';
 						quickShoppingBagHtml += '				<div class="itemPic">';
-						quickShoppingBagHtml += '					<img alt="BLACK-a" class="vLHTC pd_img" src="/images/pc/thumb/prod1.jpg"/>';
+						quickShoppingBagHtml += '					<img alt="BLACK-a" class="vLHTC pd_img" src="' + item.imageUrl + '"/>';
 						quickShoppingBagHtml += '				</div>';
-						quickShoppingBagHtml += '				<p class="itemBrand">BRAND NAME</p>';
-						quickShoppingBagHtml += '				<div class="itemName">[온라인 단독] 여성 니트 후드 경량 다운 점퍼 여성 니트 후드 경량 다운 점퍼 여성 니트 후드 경량 다운 점퍼</div>';
-						quickShoppingBagHtml += '				<p class="itemPrice">80,100';
-						quickShoppingBagHtml += '					<span class="itemPrice_original">89,000</span>';
+						quickShoppingBagHtml += '				<p class="itemBrand">' + item.brandName + '</p>';
+						quickShoppingBagHtml += '				<div class="itemName">' + item.itemName + '</div>';
+						quickShoppingBagHtml += '				<p class="itemPrice">' + Number(item.salePrice).toLocaleString();
+						if(item.salePrice < item.originalPrice) {
+							quickShoppingBagHtml += '					<span class="itemPrice_original">' + Number(item.originalPrice).toLocaleString() + '</span>';
+						}
 						quickShoppingBagHtml += '				</p>';
-						quickShoppingBagHtml += '				<div class="viewCount"><span>508</span>명 보는중</div>';
+						quickShoppingBagHtml += '				<div class="viewCount"><span>' + item.count + '</span>명 보는중</div>';
 						quickShoppingBagHtml += '			</a>';
 						quickShoppingBagHtml += '		</div>';
 						quickShoppingBagHtml += '	</div>';
@@ -1175,6 +1182,7 @@
 
 				$("#quick_menu .shopingbag.quick_con.quick02 .quick_body").html(quickShoppingBagHtml);
 				$("#quick_menu .shopingbag.quick_con.quick02 .quick_body").show();
+				$("#quick_menu #quick02 .count").text(order.delvAllCartList.length);
 
 				let cartCnt = $("#quick_menu #quick02 .count").text();
 				if(!cartCnt) cartCnt = 0;

Разница между файлами не показана из-за своего большого размера
+ 39 - 0
src/main/webapp/WEB-INF/views/web/error/PaymentFailWeb.html


Некоторые файлы не были показаны из-за большого количества измененных файлов