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

Merge branch 'develop' into jsshin-dev

jsshin 4 лет назад
Родитель
Сommit
a2c6c9b2b8

+ 16 - 0
src/main/java/com/style24/front/biz/web/TsfDisplayController.java

@@ -1198,6 +1198,9 @@ public class TsfDisplayController extends TsfBaseController {
 		// 인기검색어
 		mav.addObject("trendKeywordList", diquest.getTrendKeywordList());
 
+		// 실시간 많이 조회하고 있는 상품
+		mav.addObject("realtimeGoodsList", eigeneaiApi.getRealtimeViewGoodsList(20));
+
 		mav.addObject("brandGroupNo", brandGroupNo);
 
 		mav.setViewName(super.getDeviceViewName("display/SearchLayer"));
@@ -1380,4 +1383,17 @@ public class TsfDisplayController extends TsfBaseController {
 		Collection<Item> bestList = eigeneaiApi.getRealtimeViewBestGoodsList(20, cateNo);
 		return bestList;
 	}
+
+	/**
+	 * 검색레이어 실시간 상품 목록
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 7. 22
+	 */
+	@GetMapping("/realtime/goods/list")
+	@ResponseBody
+	public Collection<Item> getRealtimeViewGoodsList() {
+		Collection<Item> goodsList = eigeneaiApi.getRealtimeViewGoodsList(20);
+		return goodsList;
+	}
 }

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

@@ -94,6 +94,7 @@
 		AND    RC.RD_CPN_NM = #{rdCpnNm}
 		AND    NOW() BETWEEN CP.DOWN_STDT AND CP.DOWN_EDDT
 		AND    CP.CPN_STAT = 'G232_11'
+		AND    RC.CUST_NO IS NULL
 		ORDER  BY RC.CPN_ID
 		<!-- 랜덤쿠폰은 RD_CPN_NM이 1개이나, 시리얼 쿠폰은 다수개이므로 하나의 정보만 조회 -->
 		LIMIT  1
@@ -480,7 +481,7 @@
 		                                WHERE  SCPR.CPN_ID = CP.CPN_ID
 		                                AND    SCPR.REF_VAL = G.GOODS_CD
 		                                AND    SCPR.DEL_YN = 'N'      -- 삭제안된넘
-		                                AND    SCPR.CPN_TARGET = '40' -- 제외상품
+		                                AND    SCPR.CPN_TARGET = 'G260_14' -- 제외상품
 		                               )
 		                AND NOT EXISTS (
 		                                 SELECT 1
@@ -515,7 +516,7 @@
 		     , A.MAX_DC_AMT
 		     , A.CPN_TYPE
 		     , A.AVAIL_STDT
-		    -- , A.AVAIL_EDDT
+		    , A.AVAIL_EDDT
 		     , A.USABLE_CUST_GRADE
 		     , A.NEW_CUST_YN
 		     , A.CUST_JOIN_STDT 
@@ -524,7 +525,7 @@
 		     , A.BUY_STDT
 		     , A.BUY_EDDT
 		     , A.CURR_PRICE
-		     , DATE_FORMAT(A.AVAIL_EDDT, '%Y-%m-%d') AS AVAIL_EDDT
+		     -- , DATE_FORMAT(A.AVAIL_EDDT, '%Y-%m-%d') AS AVAIL_EDDT
 		     , IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = A.CPN_ID AND CUST_NO = #{custNo}),0) AS CUST_COUPON_CNT
 		     , (SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = A.CPN_ID) AS TOT_COUPON_CNT
 		     , RNUM
@@ -735,7 +736,7 @@
 		                                WHERE  SCPR.CPN_ID = CP.CPN_ID
 		                                AND    SCPR.REF_VAL = G.GOODS_CD
 		                                AND    SCPR.DEL_YN = 'N'      -- 삭제안된넘
-		                                AND    SCPR.CPN_TARGET = '40' -- 제외상품
+		                                AND    SCPR.CPN_TARGET = 'G260_14' -- 제외상품
 		                               )
 		                AND NOT EXISTS (
 		                                 SELECT 1
@@ -918,7 +919,7 @@
 		                                WHERE  SCPR.CPN_ID = CP.CPN_ID
 		                                AND    SCPR.REF_VAL = G.GOODS_CD
 		                                AND    SCPR.DEL_YN = 'N'      -- 삭제안된넘
-		                                AND    SCPR.CPN_TARGET = '40' -- 제외상품
+		                                AND    SCPR.CPN_TARGET = 'G260_14' -- 제외상품
 		                               )
 		                AND NOT EXISTS (
 		                                 SELECT 1

+ 4 - 4
src/main/webapp/WEB-INF/views/mob/planning/PlanningEventAttendFormMob.html

@@ -85,7 +85,7 @@
 									<th:block th:each="a, benefitStat : ${benefitList}">
 									<li th:if="${a.benefitGb == 'P' and ( a.basDays > 0 and a.pntAmt > 0)}">
 										<div class="benfit_point">
-											<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span>
+											<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span>
 										</div>
 									</li>
 									<li th:if="${a.benefitGb == 'C'  and ( a.basDays > 0 and a.dcVal > 0)}">
@@ -94,17 +94,17 @@
 												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span><strong> 할인 쿠폰</strong>
 											</th:block>
 											<th:block th:if="${a.dcWay == '원'}">
-												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.dcVal}"></em>원</span><strong> 할인 쿠폰</strong>
+												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.dcVal, 0, 'COMMA')}"></em>원</span><strong> 할인 쿠폰</strong>
 											</th:block>
 										</div>
 									</li>
 									<li th:if="${a.benefitGb == 'A'  and ( a.basDays > 0 and a.pntAmt > 0)}">
 										<div class="benfit_coupon">
 											<th:block th:if="${a.dcWay == '%'}">
-												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span> <strong>할인 쿠폰</strong>
+												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span> <strong>할인 쿠폰</strong>
 											</th:block>
 											<th:block th:if="${a.dcWay == '원'}">
-												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>원</span> <strong>할인 쿠폰</strong>
+												<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span> + <span class="c_primary"><em th:text="${#numbers.formatInteger(a.dcVal, 0, 'COMMA')}"></em>원</span> <strong>할인 쿠폰</strong>
 											</th:block>
 										</div>
 									</li>

+ 41 - 56
src/main/webapp/WEB-INF/views/web/display/SearchLayerWeb.html

@@ -59,65 +59,23 @@
 			<div class="realtime_blk">
 				<h3>지금 고객님들이 많이 보고 있어요</h3>
 				<div class="modify_timer">
-					<button type="button"><span><em class="time">17:30</em> 기준</span></button>
+					<button type="button" onclick="fnRealtimeGoodsList();"><span><em class="time" th:text="${#calendars.format(#calendars.createNow(), 'HH:mm')}">17:30</em> 기준</span></button>
 				</div>
 				<div class="realtime_wrap">
-					<div class="itemsGrp">
-						<div class="item_prod">
-							<div class="item_state">
-								<a href="#none" class="itemLink">
-									<div class="itemPic">
-										<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-									</div>
-									<div class="itemName">남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩</div>
-									<div class="viewCount"><span>508</span>명 보는중</div>
-								</a>
-							</div>
-						</div>
-						<div class="item_prod">
-							<div class="item_state">
-								<a href="#none" class="itemLink">
-									<div class="itemPic">
-										<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-									</div>
-									<div class="itemName">남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩</div>
-									<div class="viewCount"><span>508</span>명 보는중</div>
-								</a>
-							</div>
-						</div>
-						<div class="item_prod">
-							<div class="item_state">
-								<a href="#none" class="itemLink">
-									<div class="itemPic">
-										<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-									</div>
-									<div class="itemName">남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩</div>
-									<div class="viewCount"><span>508</span>명 보는중</div>
-								</a>
-							</div>
-						</div>
-						<div class="item_prod">
-							<div class="item_state">
-								<a href="#none" class="itemLink">
-									<div class="itemPic">
-										<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-									</div>
-									<div class="itemName">남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩</div>
-									<div class="viewCount"><span>508</span>명 보는중</div>
-								</a>
-							</div>
-						</div>
-						<div class="item_prod">
-							<div class="item_state">
-								<a href="#none" class="itemLink">
-									<div class="itemPic">
-										<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-									</div>
-									<div class="itemName">남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩 남성 로고 자카드 방풍 패딩</div>
-									<div class="viewCount"><span>508</span>명 보는중</div>
-								</a>
+					<div class="itemsGrp" id="itemViewArea">
+						<th:block th:each="item, status : ${realtimeGoodsList}">
+							<div class="item_prod">
+								<div class="item_state">
+									<a th:href="${item.itemUrl}" class="itemLink">
+										<div class="itemPic">
+											<img alt="" class="vLHTC pd_img" th:src="${item.imageUrl}">
+										</div>
+										<div class="itemName" th:text="${item.itemName}"></div>
+										<div class="viewCount"><span th:text="${item.count < 10 ? '10명 미만' : item.count + '명 보는중'}"></span></div>
+									</a>
+								</div>
 							</div>
-						</div>
+						</th:block>
 					</div>
 				</div>
 			</div>
@@ -539,6 +497,33 @@
 		gagajf.setCookie('st24ck_today_keyword',keyword, -1);
 	}
 
+	// 실시간 상품 새로고침
+	var fnRealtimeGoodsList = function (){
+		$("#itemViewArea").html('');
+		var html = '';
+		$.getJSON('/display/realtime/goods/list'),function (result){
+			console.log(result);
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += ' <div class="item_prod">\n';
+					html += ' 	<div class="item_state">\n';
+					html += ' 		<a th:href="'+item.itemUrl+'" class="itemLink">\n';
+					html += ' 			<div class="itemPic">\n';
+					html += ' 				<img alt="" class="vLHTC pd_img" th:src="'+item.imageUrl+'">\n';
+					html += ' 			</div>\n';
+					html += ' 			<div class="itemName" th:text="'+item.itemName+'"></div>\n';
+					if(item.count < 10){
+						html += '<div class="viewCount"><span>10명</span> 미만</div>\n';
+					}else{
+						html += '				<div class="viewCount"><span>'+item.count.addComma()+'</span>명 보는중</div>\n';
+					}
+					html += ' 		</a>\n';
+					html += ' </div>\n';
+				});
+			}
+		}
+	}
+
 	/*]]>*/
 </script>
 </html>

+ 5 - 4
src/main/webapp/WEB-INF/views/web/planning/PlanningEventAttendFormWeb.html

@@ -141,7 +141,7 @@
 								 <th:block th:each="a, benefitStat : ${benefitList}">
 								<li th:if="${a.benefitGb == 'P' and ( a.basDays > 0 and a.pntAmt > 0)}">
 									<div class="benfit_point">
-										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span>
+										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span>
 									</div>
 								</li>
 								<li th:if="${a.benefitGb == 'C'  and ( a.basDays > 0 and a.dcVal > 0)}">
@@ -150,17 +150,17 @@
 										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span><strong> 할인 쿠폰</strong>
 										</th:block>
 										<th:block th:if="${a.dcWay == '원'}">
-										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.dcVal}"></em>원</span><strong> 할인 쿠폰</strong>
+										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${#numbers.formatInteger(a.dcVal, 0, 'COMMA')}"></em>원</span><strong> 할인 쿠폰</strong>
 										</th:block>
 									</div>
 								</li>
 								<li th:if="${a.benefitGb == 'A'  and ( a.basDays > 0 and a.pntAmt > 0)}">
 									<div class="benfit_coupon">
 									<th:block th:if="${a.dcWay == '%'}">
-										<span th:text="${a.basDays}"></span>일 출석 시<br><span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span> <strong>할인 쿠폰</strong>
+										<span th:text="${a.basDays}"></span>일 출석 시<br><span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span> <strong>할인 쿠폰</strong>
 									</th:block>
 									<th:block th:if="${a.dcWay == '원'}">
-										<span th:text="${a.basDays}"></span>일 출석 시 <br><span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>원</span> <strong>할인 쿠폰</strong>
+										<span th:text="${a.basDays}"></span>일 출석 시 <br><span class="c_primary"><em th:text="${#numbers.formatInteger(a.pntAmt, 0, 'COMMA')}"></em>P</span> + <span class="c_primary"><em th:text="${#numbers.formatInteger(a.dcVal, 0, 'COMMA')}"></em>원</span> <strong>할인 쿠폰</strong>
 									</th:block>
 									</div>
 								</li>
@@ -365,6 +365,7 @@ $(document).ready(function() {
 	
 	if (!cfCheckLogin()) {
 		$(".day").html("<span>0</span>일");
+		$("#td_"+date).attr("class","today");
 	}else{
 		$('.day').html('<span>' + custAttendList.length + '</span>일');
 		$("#td_"+date).attr("class","today");