bin2107 5 лет назад
Родитель
Сommit
25253506da

+ 9 - 0
src/main/java/com/style24/front/biz/dao/TsfDisplayDao.java

@@ -113,4 +113,13 @@ public interface TsfDisplayDao {
 	 * @date 2021. 3. 16
 	 */
 	Cate4Srch getCate4srch(Cate4Srch cate4Srch);
+
+	/**
+	 * 몰메인 브랜드픽 조회
+	 * @param
+	 * @return
+	 * @author bin2107
+	 * @date 2021. 3. 31
+	 */
+	Collection<Contents> getContentsBannerList(Contents contents);
 }

+ 9 - 6
src/main/java/com/style24/front/biz/service/TsfDisplayService.java

@@ -279,18 +279,21 @@ public class TsfDisplayService {
 	 * 몰메인 MD PICK 목록
 	 * @param
 	 * @return
-	 * @author bin2107 cnclReqList.get(i)
-	 * @date 2021. 3. 30 goodsCategory.getGoodsList().get(i).getGoodsCd()
+	 * @author bin2107
+	 * @date 2021. 3. 30
 	 */
 	public Collection<Contents> getContentsForGoods(Contents contents){
 		Collection<Contents> contentsList = displayDao.getContentsList(contents);
 		Cate4Srch tempContents = new Cate4Srch();
-		for(Contents tempContents2 : contentsList){
-			tempContents.setContentsLoc(tempContents2.getContentsLoc());
-			tempContents.setDispOrd(tempContents2.getDispOrd());
+		for(Contents data : contentsList){
+			tempContents.setContentsLoc(data.getContentsLoc());
+			tempContents.setDispOrd(data.getDispOrd());
 			tempContents.setMaxRow(20);
 			tempContents.setCustNo(TsfSession.isLogin() ? TsfSession.getInfo().getCustNo() : 0);
-			tempContents2.setGoodsList(goodsDao.getContentsCategoryGoodsList(tempContents));
+			if("SMM007".equals(data.getContentsLoc())){
+				data.setBannerList(displayDao.getContentsBannerList(data));
+			}
+			data.setGoodsList(goodsDao.getContentsCategoryGoodsList(tempContents));
 		}
 
 		log.info("getContentsForGoods contentsList.size()::{}",contentsList.size());

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

@@ -134,6 +134,10 @@ public class TsfDisplayController extends TsfBaseController {
 				mainLayout.setSocialInfo(socialService.getSocialForGoods(social));
 			}
 
+			if(contentsLoc.equals("SMM007")){
+				mainLayout.setBrandPickList(displayService.getContentsForGoods(contents));
+			}
+
 			if(contentsLoc.equals("SMM009")){
 				mainLayout.setMdPickList(displayService.getContentsForGoods(contents));
 			}

+ 1 - 0
src/main/java/com/style24/persistence/domain/Contents.java

@@ -65,4 +65,5 @@ public class Contents extends TscBaseDomain {
 	private Collection<Cate1> cateList;	// 카테고리목록
 
 	private Collection<Goods> goodsList;	// 카테고리목록
+	private Collection<Contents> bannerList;	// 카테고리목록
 }

+ 1 - 0
src/main/java/com/style24/persistence/domain/MainLayout.java

@@ -33,5 +33,6 @@ public class MainLayout extends TscBaseDomain {
     private Collection<Plan> planningList;
     private Social socialInfo;
     private Collection<Contents> mdPickList;
+    private Collection<Contents> brandPickList;
 
 }

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

@@ -179,7 +179,14 @@
 		             , A.SUB_TEXT3                                          /*서브텍스트3*/
 		             , A.SUB_TEXT4                                          /*서브텍스트4*/
 		             , A.BRAND_GROUP_NO                                     /*브랜드그룹번호*/
-		             , A.BRAND_GROUP_IMG                                    /*브랜드그룹이미지경로*/
+		             <choose>
+						 <when test='contentsLoc != null and contentsLoc =="SMM007"'>
+							 , (SELECT LOGO_FILE_NM FROM TB_BRAND_GROUP WHERE 1=1 AND A.BRAND_GROUP_NO = BRAND_GROUP_NO) AS BRAND_GROUP_IMG		/*브랜드그룹이미지경로*/
+						 </when>
+		                 <otherwise>
+							 , A.BRAND_GROUP_IMG	/*브랜드그룹이미지경로*/
+						 </otherwise>
+					 </choose>
 		             , A.MD_TITLE                                           /*MD타이틀*/
 					<if test='contentsLoc != null and contentsLoc =="SMM001"'>
 						, (SELECT count(C.BRAND_GROUP_NO) AS CNT
@@ -483,4 +490,47 @@
 			AND CONTENTS_LOC = #{contentsLoc}
 		</if>
 	</select>
+
+	<!-- 몰메인 브랜드픽 조회 -->
+	<select id="getContentsBannerList" parameterType="Contents" resultType="Contents">
+		/* TsfDisplay.getContentsBannerList */
+		SELECT   CASE B.M WHEN 1 THEN A.IMG_PATH1
+						  WHEN 2 THEN A.IMG_PATH2
+						  WHEN 3 THEN A.IMG_PATH3
+						  WHEN 4 THEN A.IMG_PATH4
+						  WHEN 5 THEN A.IMG_PATH5 END IMG_PATH1
+			 ,CASE B.M WHEN 1 THEN A.STR_VAR1
+					   WHEN 2 THEN A.STR_VAR2
+					   WHEN 3 THEN A.STR_VAR3
+					   WHEN 4 THEN A.STR_VAR4
+					   WHEN 5 THEN A.STR_VAR5 END STR_VAR1
+			 ,CASE B.M WHEN 1 THEN A.STR_TITLE1
+					   WHEN 2 THEN A.STR_TITLE2
+					   WHEN 3 THEN A.STR_TITLE3
+					   WHEN 4 THEN A.STR_TITLE4
+					   WHEN 5 THEN '' END STR_TITLE1
+			 ,CASE B.M WHEN 1 THEN A.SUB_TEXT1
+					   WHEN 2 THEN A.SUB_TEXT2
+					   WHEN 3 THEN A.SUB_TEXT3
+					   WHEN 4 THEN A.SUB_TEXT4
+					   WHEN 5 THEN '' END SUB_TEXT1
+		FROM (
+			  (SELECT	BRAND_GROUP_NO
+					, IMG_PATH1 , IMG_PATH2 , IMG_PATH3 , IMG_PATH4, IMG_PATH5
+					, STR_VAR1 , STR_VAR2 , STR_VAR3 , STR_VAR4 , STR_VAR5
+					, STR_TITLE1 , STR_TITLE2 , STR_TITLE3 , STR_TITLE4
+					, SUB_TEXT1 , SUB_TEXT2 , SUB_TEXT3 , SUB_TEXT4
+			   FROM	TB_CONTENTS
+			   WHERE	CONTENTS_LOC = #{contentsLoc}
+				 AND		BRAND_GROUP_NO = #{brandGroupNo}
+			  ) A
+				 ,(
+			  SELECT 1 M
+			  UNION ALL SELECT 2
+			  UNION ALL SELECT 3
+			  UNION ALL SELECT 4
+			  UNION ALL SELECT 5
+				 ) B
+				 )
+	</select>
 </mapper>

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

@@ -896,7 +896,7 @@
 		                 , ROW_NUMBER() OVER(ORDER BY GS.SELL_WEEK_QTY DESC
 		                                            , G.GOODS_CD) AS NUMB
 		                     </when>
-							 <when test="contentsLoc == 'SMM009'"> <!-- md추천 -->
+							 <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007'"> <!-- md추천 -->
 						 , ROW_NUMBER() OVER(ORDER BY CTG.DISP_ORD
 								 , G.REG_DT DESC
 								 , G.GOODS_CD) AS NUMB
@@ -908,7 +908,7 @@
 		                     </otherwise>
 		                 </choose>
 		            <choose>
-						<when test="contentsLoc == 'SMM009'"> <!-- md추천 -->
+						<when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007'"> <!-- md추천 -->
 							FROM	TB_CONTENTS CT
 							, TMP_CONTENTS_GOODS CTG
 							, TB_GOODS G

+ 70 - 2
src/main/webapp/WEB-INF/views/web/display/MallMainFormWeb.html

@@ -233,6 +233,76 @@
 					</div>
 				</th:block>
 
+				<!-- 7. 브랜드픽 -->
+				<th:block th:if="${contentsLoc=='007'}">
+					<div class="content main_pick">
+						<div class="cont_head">
+							<p class="displayH t_c" th:text="${mainLayoutData.contentsTitle}">브랜드 PICK1</p>
+						</div>
+						<div class="cont_body">
+							<div class="swiper-container post-pick-nav">
+								<div class="swiper-wrapper">
+									<th:block th:each="ContentsData, ContentsStat : ${mainLayoutData.ContentsList}">
+										<div class="swiper-slide"><img th:src="${@environment.getProperty('domain.image')+ContentsData.brandGroupImg}"></div>
+									</th:block>
+								</div>
+								<div class="swiper-button-prev "></div>
+								<div class="swiper-button-next "></div>
+							</div>
+						</div>
+						<div class="swiper-container post-pick-for">
+							<div class="swiper-wrapper">
+								<th:block th:each="brandPickData, brandPickStat : ${mainLayoutData.brandPickList}">
+									<div class="swiper-slide">
+										<div class="pick_look">
+											<div class="swiper-container post-lookbook">
+												<div class="swiper-wrapper">
+													<th:block th:each="bannerData, bannerStat : ${brandPickData.BannerList}">
+														<div class="swiper-slide" th:if="${bannerData.imgPath1 != ''}">
+															<div class="text_box">
+																<p class="title" th:text="${bannerData.strTitle1}">BUCKAROO<br> 2020 가을 신상 오픈1</p>
+																<p class="sub_text" th:text="${bannerData.subText1}"> 2020 FALL / WINTER 신상살펴보기1</p>
+															</div>
+															<div class="img_box">
+																<img th:src="${@environment.getProperty('domain.image')+bannerData.imgPath1}" alt="barnd lookbook">
+															</div>
+														</div>
+													</th:block>
+												</div>
+												<div class="swiper-controls">
+													<div class="swiper-pagination"></div>
+												</div>
+											</div>
+										</div>
+										<div class="pick_item">
+											<div class="itemGrp">
+												<th:block th:each="goodsData, goodsStat : ${brandPickData.goodsList}">
+													<div class="item_prod" th:if="${goodsStat.count<4}">
+														<div class="item_state">
+															<button type="button" class="itemLike" tabindex="0">관심상품 추가</button>
+															<a href="javascript:void(0);" class="itemLink" th:onclick="cfnGoToGoodsDetail([[${goodsData.goodsCd}]], '', '', 'SMM007');">
+																<div class="itemPic">
+																	<img alt="BLACK-a" class=" vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}">
+																</div>
+																<div class=" itemName" th:text="${goodsData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
+																<p class="itemPrice" th:text="${#numbers.formatInteger(goodsData.currPrice,1,'COMMA')}">80,100
+																	<span class="itemPrice_original" th:text="${#numbers.formatInteger(goodsData.listPrice,1,'COMMA')}">89,000</span>
+																	<span class=" itemPercent" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${(goodsData.listPrice == 0 ? 0 : #numbers.formatDecimal((goodsData.listPrice - goodsData.currPrice) / (goodsData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>
+																</p>
+																<div class="itemComment">#데일리웨어로 매일입고싶은</div>
+															</a>
+														</div>
+													</div>
+												</th:block>
+											</div>
+										</div>
+									</div>
+								</th:block>
+							</div>
+						</div>
+					</div>
+				</th:block>
+
 				<!-- 8. 가로 긴 배너 슬라이드 -->
 				<!-- bnn_1stage -->
 				<th:block th:if="${contentsLoc=='008'}">
@@ -323,8 +393,6 @@
 						</div>
 					</div>
 				</th:block>
-
-
 			</th:block>
 		</th:block>