bin2107 5 лет назад
Родитель
Сommit
8c5bc8001b

+ 24 - 0
src/main/java/com/style24/core/biz/dao/TscLookbookDao.java

@@ -58,6 +58,30 @@ public interface TscLookbookDao {
 	 */
 	void saveLookbookBanner(LookbookBanner lookbookBanner);
 
+	/**
+	 * 룩북 마스터정보 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 3. 8
+	 */
+	Lookbook getLookbookMstInfo(Integer lookbookSq);
+
+	/**
+	 * 룩북 배너 리스트
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 3. 8
+	 */
+	Collection<LookbookBanner> getLookbookBannerDetailList(Integer lookbookSq);
+
+	/**
+	 * 룩북 배너 삭제
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 3. 8
+	 */
+	void deleteLookbookBanner(Integer lookbookSq);
+
 	/**
 	 *  front 영역
 	 */

+ 30 - 0
src/main/java/com/style24/core/biz/service/TscLookbookService.java

@@ -41,6 +41,10 @@ public class TscLookbookService {
 	 */
 	@Transactional("shopTxnManager")
 	public void saveLookbook(Lookbook lookbook) {
+		if("U".equals(lookbook.getMode())){
+			lookbookDao.deleteLookbookBanner(lookbook.getLookbookSq());
+		}
+
 		if (!StringUtils.isEmpty(lookbook.getNewSysTnfileNm())) {
 			String bannerUploadPath = env.getProperty("upload.default.target.path");
 			bannerUploadPath = bannerUploadPath + "/display";
@@ -59,6 +63,9 @@ public class TscLookbookService {
 
 			lookbook.setOrgTnfileNm("/lookbook/thumbnail/" + yearMonth + "/" + newFilename);
 			lookbook.setSysTnfileNm("/lookbook/thumbnail/" + yearMonth + "/" + newFilename);
+		}else{
+			lookbook.setOrgTnfileNm(lookbook.getOrgFileNm());
+			lookbook.setSysTnfileNm(lookbook.getOrgFileNm());
 		}
 
 		lookbookDao.saveLookbook(lookbook);
@@ -86,6 +93,9 @@ public class TscLookbookService {
 				newFile.renameTo(uniqueFile);
 				bannerInfo.setOrgFileNm("/lookbook/banner/" + yearMonth + "/" + newFilename);
 				bannerInfo.setSysFileNm("/lookbook/banner/" + yearMonth + "/" + newFilename);
+			}else{
+				bannerInfo.setOrgFileNm(bannerInfo.getOrgFileNm());
+				bannerInfo.setSysFileNm(bannerInfo.getOrgFileNm());
 			}
 			ind++;
 			bannerInfo.setLookbookSq(lookbook.getLookbookSq());
@@ -129,6 +139,26 @@ public class TscLookbookService {
 		}
 	}
 
+	/**
+	 * 룩북 마스터정보 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 3. 8
+	 */
+	public Lookbook getLookbookMstInfo(Integer lookbookSq){
+		return lookbookDao.getLookbookMstInfo(lookbookSq);
+	}
+
+	/**
+	 * 룩북 배너 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 3. 8
+	 */
+	public Collection<LookbookBanner> getLookbookBannerDetailList(Integer lookbookSq){
+		return lookbookDao.getLookbookBannerDetailList(lookbookSq);
+	}
+
 	/**
 	 * front 영역
 	 */

+ 2 - 4
src/main/java/com/style24/persistence/domain/Lookbook.java

@@ -32,6 +32,7 @@ public class Lookbook extends TscBaseDomain {
 	private String dispYn;         //표시여부
 	private Integer dispOrd;        //표시순서
 	private String mainDispYn;     //메인노출여부
+	private String mode;			//신규,수정
 
 	private Integer lookbookbSq;	// 룩북배너일련번호
 	private String orgFileNm;		// 원본파일명
@@ -48,10 +49,7 @@ public class Lookbook extends TscBaseDomain {
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] selectDataArr;
 
-	//@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	//private String[] bannerList;
-
-	Collection<LookbookBanner> bannerList;	//베너별 상품목록
+	Collection<LookbookBanner> bannerList;	//베너 리스트
 
 	// Pagination
 	private TscPageRequest pageable;

+ 59 - 3
src/main/java/com/style24/persistence/mybatis/shop/TscLookbook.xml

@@ -35,7 +35,18 @@
 			,NOW()
 			,#{updNo}
 			,NOW()
-		)
+		) ON DUPLICATE KEY UPDATE
+			BRAND_CD = #{brandCd}
+			,TITLE = #{title}
+			,ORG_TNFILE_NM = #{orgTnfileNm}
+			,SYS_TNFILE_NM = #{sysTnfileNm}
+			,DISP_STDT = #{dispStdt}
+			,DISP_EDDT = #{dispEddt}
+			,DISP_YN = #{dispYn}
+			,DISP_ORD = #{dispOrd}
+			,MAIN_DISP_YN = #{mainDispYn}
+			,UPD_NO = #{updNo}
+			,UPD_DT = NOW()
 	</insert>
 	
 	<!-- 룩북 리스트 카운트 -->
@@ -134,8 +145,53 @@
 			,NOW()
 		)
 	</insert>
-	
-	
+
+	<!-- 룩북 마스터 정보 조회 -->
+	<select id="getLookbookMstInfo" parameterType="Integer" resultType="Lookbook">
+		/* TscLookbook.getLookbookMstInfo */
+		SELECT	  LOOKBOOK_SQ
+				 ,BRAND_CD
+				 ,TITLE
+				 ,ORG_TNFILE_NM
+				 ,SYS_TNFILE_NM
+				 ,DISP_STDT
+				 ,DISP_EDDT
+				 ,DISP_YN
+				 ,DISP_ORD
+				 ,MAIN_DISP_YN
+				 ,REG_NO
+				 , FN_GET_USER_NM(REG_NO) AS REG_NM
+				 ,REG_DT
+				 ,UPD_NO
+				 , FN_GET_USER_NM(UPD_NO) AS UPD_NM
+				 ,UPD_DT
+		FROM	TB_LOOKBOOK
+		WHERE	1=1
+		AND 	LOOKBOOK_SQ = #{lookbookSq}
+	</select>
+
+	<!-- 룩북 배너 리스트 -->
+	<select id="getLookbookBannerDetailList" parameterType="Integer" resultType="LookbookBanner">
+		/* TscLookbook.getLookbookBannerDetailList */
+		SELECT	LOOKBOOKB_SQ
+				,LOOKBOOK_SQ
+				,ORG_FILE_NM
+				,SYS_FILE_NM
+				,IMG_DESC
+				,DISP_YN
+				,DISP_ORD
+		FROM	TB_LOOKBOOK_BANNER
+		WHERE	1=1
+		AND 	LOOKBOOK_SQ = #{lookbookSq}
+	</select>
+
+	<!-- 룩북 배너 삭제 -->
+	<delete id="deleteLookbookBanner" parameterType="Integer">
+		/* TscLookbook.deleteLookbookBanner */
+		DELETE	FROM	TB_LOOKBOOK_BANNER
+		WHERE	LOOKBOOK_SQ = #{lookbookSq}
+	</delete>
+
 	<!-- front 영역-->
 	
 	<!-- 룩북 베너 목록 조회 -->