Ver código fonte

룩북관리 개발중

bin2107 5 anos atrás
pai
commit
a2ae5d72fd

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

@@ -0,0 +1,23 @@
+package com.style24.core.biz.dao;
+
+import com.style24.core.support.annotation.ShopDs;
+import com.style24.persistence.domain.Lookbook;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 룩북 Dao
+ *
+ * @author bin2107
+ * @since 2020. 03. 05
+ */
+@ShopDs
+@Repository
+public interface TscLookbookDao {
+    /**
+     * 룩북 등록/수정
+     * @return
+     * @author bin2107
+     * @since 2021. 3. 5
+     */
+    void saveLookbook(Lookbook lookbook);
+}

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

@@ -0,0 +1,62 @@
+package com.style24.core.biz.service;
+
+import com.gagaframework.web.util.GagaDateUtil;
+import com.gagaframework.web.util.GagaFileUtil;
+import com.style24.core.biz.dao.TscLookbookDao;
+import com.style24.persistence.domain.Lookbook;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.StringUtils;
+
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * 룩북 Service
+ *
+ * @author bin2107
+ * @since 2020. 03. 05
+ */
+@Service
+@Slf4j
+public class TscLookbookService {
+    @Autowired
+    private TscLookbookDao lookbookDao;
+
+    @Autowired
+    private Environment env;
+
+    /**
+     * 팝업관리 저장
+     * @return
+     * @author bin2107
+     * @since 2021. 3. 3
+     */
+    @Transactional("shopTxnManager")
+    public void saveLookbook(Lookbook lookbook) {
+        if(!StringUtils.isEmpty(lookbook.getNewSysTnfileNm())){
+            String bannerUploadPath = env.getProperty("upload.default.target.path");
+            bannerUploadPath = bannerUploadPath + "/display";
+            String yearMonth = GagaDateUtil.getToday().substring(0, 6);
+            bannerUploadPath = GagaFileUtil.getConcatenationPath(bannerUploadPath, "/lookbook/thumbnail");
+            File newFile = new File(GagaFileUtil.getConcatenationPath(bannerUploadPath, lookbook.getNewSysTnfileNm()));
+            bannerUploadPath = GagaFileUtil.getConcatenationPath(bannerUploadPath, yearMonth);
+            String newFilename = "LOOKBOOK_" + GagaDateUtil.getTodayDateTime() + "." + StringUtils.getFilenameExtension(lookbook.getNewSysTnfileNm());
+            File uniqueFile = GagaFileUtil.getUniqueFile(new File(GagaFileUtil.getConcatenationPath(bannerUploadPath, newFilename)));
+//          Rename a file
+            File path = new File(bannerUploadPath);
+            if (!path.exists()) {
+                path.mkdir();
+            }
+            newFile.renameTo(uniqueFile);
+
+            lookbook.setOrgTnfileNm("/lookbook/thumbnail/" + yearMonth + "/" + newFilename);
+            lookbook.setSysTnfileNm("/lookbook/thumbnail/" + yearMonth + "/" + newFilename);
+        }
+
+        lookbookDao.saveLookbook(lookbook);
+    }
+}

+ 29 - 0
src/main/java/com/style24/persistence/domain/Lookbook.java

@@ -0,0 +1,29 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+/**
+ * 룩북 도메인
+ * @author bin2107
+ * @since 2021-03-05
+ */
+@SuppressWarnings("serial")
+@Data
+public class Lookbook extends TscBaseDomain {
+    private Integer lookbookSq;     //룩분일련번호
+    private String  brandCd;        //브랜드
+    private String  fyear;
+    private String  tyear;
+    private String  seasonStr;
+    private String  title;          //타이틀
+    private String  orgTnfileNm;    //원본썸네일명
+    private String  sysTnfileNm;    //시스템썸네일명
+    private String  newSysTnfileNm;
+    private String  dispStdt;       //전시시작일
+    private String  dispEddt;       //전시종료일
+    private String  dispYn;         //표시여부
+    private Integer dispOrd;        //표시순서
+    private String  mainDispYn;     //메인노출여부
+
+}

+ 21 - 0
src/main/java/com/style24/persistence/domain/LookbookBanner.java

@@ -0,0 +1,21 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+/**
+ * 룩북 배너 도메인
+ * @author bin2107
+ * @since 2021-03-05
+ */
+@SuppressWarnings("serial")
+@Data
+public class LookbookBanner extends TscBaseDomain {
+    private Integer lookbookbSq;        //룩북배너일련번호
+    private Integer lookbookSq;         //룩북일련번호
+    private String  orgFileNm;          //원본파일명
+    private String  sysFileNm;          //시스템파일명
+    private String  imgDesc;            //이미지설명
+    private String  dispYn;             //표시여부
+    private int     dispOrd;            //표시순서
+}

+ 18 - 0
src/main/java/com/style24/persistence/domain/LookbookGoods.java

@@ -0,0 +1,18 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+/**
+ * 룩북 상품 도메인
+ * @author bin2107
+ * @since 2021-03-05
+ */
+@SuppressWarnings("serial")
+@Data
+public class LookbookGoods extends TscBaseDomain {
+    private Integer lookbookbSq;    //룩북배너일련번호
+    private String  goodsCd;        //상품코드
+    private int     dispOrd;        //표시순서
+    private String  delYn;          //삭제여부
+}

+ 22 - 0
src/main/java/com/style24/persistence/domain/LookbookPicker.java

@@ -0,0 +1,22 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+/**
+ * 룩북 피커 도메인
+ * @author bin2107
+ * @since 2021-03-05
+ */
+@SuppressWarnings("serial")
+@Data
+public class LookbookPicker extends TscBaseDomain {
+    private Integer lbPickerSq;     //룩북피커일련번호
+    private Integer lookbookbSq;    //룩북배너일련번호
+    private Integer lookbookSq;     //룩북일련번호
+    private float   xlim;           //X좌표
+    private float   ylim;           //Y좌표
+    private String  goodsCd;        //상품코드
+    private int     dispOrd;        //표시순서
+    private String  useYn;          //사용여부
+}

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

@@ -28,7 +28,7 @@ public class Popup extends TscBaseDomain {
     private String  linkUrl4;
     private String  linkUrl5;
     private String  viewPage;
-    private Integer cate1No;
+    private Integer cateNo;
     private String  brandCd;
     private Integer planSq;
     private String  dispStdt;

+ 40 - 0
src/main/java/com/style24/persistence/mybatis/shop/TscLookbook.xml

@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.style24.core.biz.dao.TscLookbookDao">
+
+	<!-- 룩북 저장/수정 -->
+	<insert id="saveLookbook" parameterType="Lookbook" keyProperty="lookbookSq">
+		/* TscLookbook.saveLookbook */
+		INSERT	INTO	TB_LOOKBOOK(
+			LOOKBOOK_SQ
+			,BRAND_CD
+			,TITLE
+			,ORG_TNFILE_NM
+			,SYS_TNFILE_NM
+			,DISP_STDT
+			,DISP_EDDT
+			,DISP_YN
+			,DISP_ORD
+			,MAIN_DISP_YN
+			,REG_NO
+			,REG_DT
+			,UPD_NO
+			,UPD_DT
+		) VALUES (
+			#{lookbookSq}
+			,#{brandCd}
+			,#{title}
+			,#{orgTnfileNm}
+			,#{sysTnfileNm}
+			,#{dispStdt}
+			,#{dispEddt}
+		 	,#{dispYn}
+			,#{dispOrd}
+			,#{mainDispYn}
+			,#{regNo}
+			,NOW()
+			,#{updNo}
+			,NOW()
+		)
+	</insert>
+</mapper>

+ 20 - 20
src/main/java/com/style24/persistence/mybatis/shop/TscPopup.xml

@@ -6,8 +6,8 @@
 	<select id="getPopupListCount" parameterType="Popup" resultType="int">
 		/* TscPopup.getPopupListCount */
 		SELECT	COUNT(*) AS TOTCNT
-		FROM	TB_POPUP A
-		LEFT OUTER JOIN TB_POPUP_FRONT B
+		FROM	TB_POPUP_PREVIEW A
+		LEFT OUTER JOIN TB_POPUP B
 		ON 	A.POPUP_SQ = B.POPUP_SQ
 		WHERE	1=1
 		AND A.USE_YN = 'Y'
@@ -48,7 +48,7 @@
 			, A.LINK_URL5
 			, A.VIEW_PAGE
 			, (SELECT CD_NM FROM TB_COMMON_CODE WHERE CD_GB = 'G037' AND CD = A.VIEW_PAGE) AS VIEW_PAGE_NM
-			, A.CATE1_NO
+			, A.CATE_NO
 			, A.BRAND_CD
 			, A.PLAN_SQ
 			, A.DISP_ORD
@@ -65,8 +65,8 @@
 			, A.REG_NO
 			, FN_GET_USER_NM(A.REG_NO) AS REG_NM
 			, DATE_FORMAT(A.REG_DT,'%Y-%m-%d %H:%i:%S') AS REG_DT
-		FROM	TB_POPUP A
-		LEFT OUTER JOIN TB_POPUP_FRONT B
+		FROM	TB_POPUP_PREVIEW A
+		LEFT OUTER JOIN TB_POPUP B
 		ON 	A.POPUP_SQ = B.POPUP_SQ
 		WHERE	1=1
 		AND A.USE_YN = 'Y'
@@ -92,7 +92,7 @@
 	<!-- 팝업관리 등록/수정 -->
 	<insert id="savePopup" parameterType="Popup" keyProperty="popupSq">
 		/* TscPopup.savePopup */
-		INSERT INTO TB_POPUP(
+		INSERT INTO TB_POPUP_PREVIEW(
 			POPUP_SQ
 			,SITE_CD
 			,FRONT_GB
@@ -100,8 +100,8 @@
 			,IMG_URL1
 			,LINK_URL1
 			,VIEW_PAGE
-		<if test='cate1No != null and cate1No != ""'>
-			,CATE1_NO
+		<if test='cateNo != null and cateNo != ""'>
+			,CATE_NO
 		</if>
 		<if test='brandCd != null and brandCd != ""'>
 			,BRAND_CD
@@ -126,8 +126,8 @@
 			,#{sysFileNm}
 			,#{linkUrl1}
 			,#{viewPage}
-		<if test='cate1No != null and cate1No != ""'>
-			,#{cate1No}
+		<if test='cateNo != null and cateNo != ""'>
+			,#{cateNo}
 		</if>
 		<if test='brandCd != null and brandCd != ""'>
 			,#{brandCd}
@@ -149,8 +149,8 @@
 			,IMG_URL1	= #{sysFileNm}
 			,LINK_URL1	= #{linkUrl1}
 			,VIEW_PAGE	= #{viewPage}
-		<if test='cate1No != null and cate1No != ""'>
-		    ,CATE1_NO	= #{cate1No}
+		<if test='cateNo != null and cateNo != ""'>
+		    ,CATE_NO	= #{cateNo}
 		</if>
 		<if test='brandCd != null and brandCd != ""'>
 			,BRAND_CD	= #{brandCd}
@@ -170,7 +170,7 @@
 	<!-- 팝업관리 팝업 삭제 -->
 	<update id="deletePopup" parameterType="Popup">
 		/* TscPopup.deletePopup */
-		UPDATE TB_POPUP
+		UPDATE TB_POPUP_PREVIEW
 		SET UPD_NO = #{updNo}
 		  , UPD_DT = NOW()
 		  , USE_YN = 'N'
@@ -180,9 +180,9 @@
 	<!-- 팝업관리 프론트 삭제 -->
 	<update id="deletePopupFront" parameterType="Popup">
 		/* TscPopup.deletePopupFront */
-		UPDATE TB_POPUP_FRONT
+		UPDATE TB_POPUP
 		SET UPD_NO = #{updNo}
-		  , UPD_DT = (SELECT UPD_DT FROM TB_POPUP WHERE POPUP_SQ = #{popupSq})
+		  , UPD_DT = (SELECT UPD_DT FROM TB_POPUP_PREVIEW WHERE POPUP_SQ = #{popupSq})
 		  , USE_YN = 'N'
 		WHERE POPUP_SQ = #{popupSq}
 	</update>
@@ -190,14 +190,14 @@
 	<!-- 팝업관리 프론트 적용 -->
 	<insert id="savePopupFront" parameterType="Popup">
 		/* TscPopup.savePopupFront */
-		INSERT INTO TB_POPUP_FRONT ( POPUP_SQ
+		INSERT INTO TB_POPUP ( POPUP_SQ
 								   , SITE_CD
 								   , FRONT_GB
 								   , POPUP_GB
 								   , IMG_URL1
 								   , LINK_URL1
 								   , VIEW_PAGE
-								   , CATE1_NO
+								   , CATE_NO
 								   , BRAND_CD
 								   , PLAN_SQ
 								   , DISP_STDT
@@ -219,7 +219,7 @@
 							  , IMG_URL1
 							  , LINK_URL1
 							  , VIEW_PAGE
-							  , CATE1_NO
+							  , CATE_NO
 							  , BRAND_CD
 							  , PLAN_SQ
 							  , DISP_STDT
@@ -231,7 +231,7 @@
 							  , NOW()		AS REG_DT
 							  , #{updNo}	AS UPD_NO
 							  , NOW()		AS UPD_DT
-						 FROM TB_POPUP
+						 FROM TB_POPUP_PREVIEW
 						 WHERE POPUP_SQ = #{popupSq}
 					 ) B
 			) ON DUPLICATE KEY
@@ -242,7 +242,7 @@
 			,IMG_URL1 = B.IMG_URL1
 			,LINK_URL1 = B.LINK_URL1
 			,VIEW_PAGE = B.VIEW_PAGE
-			,CATE1_NO = B.CATE1_NO
+			,CATE_NO = B.CATE_NO
 			,BRAND_CD = B.BRAND_CD
 			,PLAN_SQ = B.PLAN_SQ
 			,DISP_STDT = B.DISP_STDT