Browse Source

dex5 업로드관련 수정

eskim 5 years ago
parent
commit
4278bf875e

+ 15 - 7
style24.admin/src/main/java/com/style24/admin/biz/web/TsaGoodsController.java

@@ -1029,6 +1029,7 @@ public class TsaGoodsController extends TsaBaseController {
 
 				strBrandNo = String.valueOf(goodsInfo.getBrandNo());
 			}
+			String brandDir = GagaStringUtil.getLPadding(strBrandNo, 10, "0");
 
 			if (goodsImg.getMode().equals("C")) { // 업로드 된 파일 rename 처리
 //				String newFilename = goodsImg.getGoodsCd()
@@ -1038,22 +1039,29 @@ public class TsaGoodsController extends TsaBaseController {
 //						+ "." + StringUtils.getFilenameExtension(goodsImg.getSysImgNm());
 				String newFilename = goodsImg.getSysImgNm();
 
-				String brandDir = GagaFileUtil.getConcatenationPath(GagaStringUtil.getLPadding(strBrandNo, 10, "0"),GagaDateUtil.getToday()); // 브랜드/UPLOAD 일 YYYYMMDD
-				String goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsTargetPath, brandDir);		//저장경로 생성
+				//브랜드 폴더 확인
+				String goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsTargetPath, brandDir); // 브랜드 폴더
+				File brandPath = new File(goodsUploadPath);
+				if (!brandPath.exists()) {
+					brandPath.mkdir();
+				}
+
+				goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsUploadPath, GagaDateUtil.getToday());		//브랜드+/+YYYYMMDD(UPLOAD 일 )
+				String brandYmdDir = GagaFileUtil.getConcatenationPath(brandDir, GagaDateUtil.getToday());	//디비 저장용
 
 				File uniqueFile = GagaFileUtil.getUniqueFile(new File(GagaFileUtil.getConcatenationPath(goodsUploadPath, newFilename)));
 				File newFile = new File(GagaFileUtil.getConcatenationPath(goodsUploadPath,  uniqueFile.getName()));
-				//log.info("newFile.getPath(): {}", newFile.getPath());
+				log.info("newFile.getPath(): {}", newFile.getPath());
 
 				// resizing 처리 시 오류가 발생할 경우 삭제하기 위해 설정
 				errorFileList.add(newFile);
 
 				File oldFile = new File(GagaFileUtil.getConcatenationPath(dextUploadPath, goodsImg.getSysImgNm()));
-				//log.info("oldFile.getPath(): {}", oldFile.getPath());
+				log.info("oldFile.getPath(): {}", oldFile.getPath());
 
 				File path = new File(goodsUploadPath);
 				if (!path.exists()) {
-					//log.info("mkdir ={}", goodsUploadPath);
+					log.info("mkdir ={}", goodsUploadPath);
 					path.mkdir();
 				}
 
@@ -1064,8 +1072,8 @@ public class TsaGoodsController extends TsaBaseController {
 				}
 
 				goodsImg.setDispOrd(index++);
-				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(brandDir,newFile.getName()));
-				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(brandDir,newFile.getName()));
+				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(brandYmdDir,newFile.getName()));
+				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(brandYmdDir,newFile.getName()));
 			} else {
 				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(goodsImg.getSysImgUrl() ,goodsImg.getSysImgNm()));
 				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(goodsImg.getSysImgUrl() ,goodsImg.getSysImgNm()));

+ 62 - 0
style24.scm/src/main/java/com/style24/scm/biz/web/TssDextuploadController.java

@@ -0,0 +1,62 @@
+package com.style24.scm.biz.web;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import com.style24.core.support.message.TscMessageByLocale;
+import com.style24.scm.support.controller.TssBaseController;
+
+import lombok.extern.slf4j.Slf4j;
+
+import com.gagaframework.web.util.GagaFileUploadUtil;
+import com.gagaframework.web.util.GagaUploadedFileInfo;
+
+/**
+ * Dextupload Controller
+ *
+ * @author gagamel
+ * @since 2020. 12. 4
+ */
+@Controller
+@RequestMapping("/dext")
+@Slf4j
+public class TssDextuploadController extends TssBaseController {
+
+	@Autowired
+	private Environment env;
+
+	@Autowired
+	private TscMessageByLocale message;
+
+	/**
+	 * dextupload를 이용한 파일 업로드
+	 * @param policy - 업로드정책
+	 * @param files - 파일 목록 (dx5는 DEXTUploadX5_FileData 명칭으로 넘어옴)
+	 * @return 업로드된 파일 목록
+	 * @throws Exception
+	 * @author gagamel
+	 * @since 2020. 12. 4
+	 */
+	@PostMapping("/files/upload/{policy}")
+	@ResponseBody
+	public Collection<GagaUploadedFileInfo> uploadFiles(@PathVariable("policy") String policy, @RequestParam(value = "DEXTUploadX5_FileData") List<MultipartFile> files) throws Exception {
+		if (files == null || files.isEmpty()) {
+			throw new IllegalStateException(message.getMessage("FAIL_1001"));
+		}
+
+		GagaFileUploadUtil fuUtil = new GagaFileUploadUtil(env.getProperty("upload.dext.target.path"), Long.parseLong(env.getProperty("upload." + policy + ".max.size")), env.getProperty("upload." + policy + ".allow.extension"), env.getProperty("upload." + policy + ".view"));
+
+		return fuUtil.uploadFiles(files);
+	}
+
+}

+ 15 - 7
style24.scm/src/main/java/com/style24/scm/biz/web/TssGoodsController.java

@@ -659,6 +659,7 @@ public class TssGoodsController extends TssBaseController {
 
 				strBrandNo = String.valueOf(goodsInfo.getBrandNo());
 			}
+			String brandDir = GagaStringUtil.getLPadding(strBrandNo, 10, "0");
 
 			if (goodsImg.getMode().equals("C")) { // 업로드 된 파일 rename 처리
 //				String newFilename = goodsImg.getGoodsCd()
@@ -668,22 +669,29 @@ public class TssGoodsController extends TssBaseController {
 //						+ "." + StringUtils.getFilenameExtension(goodsImg.getSysImgNm());
 				String newFilename = goodsImg.getSysImgNm();
 
-				String brandDir = GagaFileUtil.getConcatenationPath(GagaStringUtil.getLPadding(strBrandNo, 10, "0"),GagaDateUtil.getToday()); // 브랜드/UPLOAD 일 YYYYMMDD
-				String goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsTargetPath, brandDir);		//저장경로 생성
+				//브랜드 폴더 확인
+				String goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsTargetPath, brandDir); // 브랜드 폴더
+				File brandPath = new File(goodsUploadPath);
+				if (!brandPath.exists()) {
+					brandPath.mkdir();
+				}
+
+				goodsUploadPath = GagaFileUtil.getConcatenationPath(goodsUploadPath, GagaDateUtil.getToday());		//브랜드+/+YYYYMMDD(UPLOAD 일 )
+				String brandYmdDir = GagaFileUtil.getConcatenationPath(brandDir, GagaDateUtil.getToday());	//디비 저장용
 
 				File uniqueFile = GagaFileUtil.getUniqueFile(new File(GagaFileUtil.getConcatenationPath(goodsUploadPath, newFilename)));
 				File newFile = new File(GagaFileUtil.getConcatenationPath(goodsUploadPath,  uniqueFile.getName()));
-				//log.info("newFile.getPath(): {}", newFile.getPath());
+				log.info("newFile.getPath(): {}", newFile.getPath());
 
 				// resizing 처리 시 오류가 발생할 경우 삭제하기 위해 설정
 				errorFileList.add(newFile);
 
 				File oldFile = new File(GagaFileUtil.getConcatenationPath(dextUploadPath, goodsImg.getSysImgNm()));
-				//log.info("oldFile.getPath(): {}", oldFile.getPath());
+				log.info("oldFile.getPath(): {}", oldFile.getPath());
 
 				File path = new File(goodsUploadPath);
 				if (!path.exists()) {
-					//log.info("mkdir ={}", goodsUploadPath);
+					log.info("mkdir ={}", goodsUploadPath);
 					path.mkdir();
 				}
 
@@ -694,8 +702,8 @@ public class TssGoodsController extends TssBaseController {
 				}
 
 				goodsImg.setDispOrd(index++);
-				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(brandDir,newFile.getName()));
-				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(brandDir,newFile.getName()));
+				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(brandYmdDir,newFile.getName()));
+				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(brandYmdDir,newFile.getName()));
 			} else {
 				goodsImg.setOrgImgNm(GagaFileUtil.getConcatenationPath(goodsImg.getSysImgUrl() ,goodsImg.getSysImgNm()));
 				goodsImg.setSysImgNm(GagaFileUtil.getConcatenationPath(goodsImg.getSysImgUrl() ,goodsImg.getSysImgNm()));

+ 5 - 5
style24.scm/src/main/webapp/dx5/dextuploadx5-configuration.js

@@ -8,15 +8,15 @@
 
     var gAuthkey = '';
     if (location.host.indexOf("ld") > -1) {
-    	gAuthkey = "wv0tVbqwjB3lq1Z7QxSK/RiA31WcFNDd45asJ8rF3Gnl28E5ZkW+9D+/zcDVVXq8yy1fkRjUK9EG41tLceWrPsCbmCOZqVGdr4/JOj11b2g4/DdhnPp7uaDtdL6lH/OLZmRi4aAhdBXhCRmCIsyAZ9qs6P0dpV3EoGFwTaFQqGA=";
+    	gAuthkey = "hr0AqviRLOCsbiIneYWPXdkhMn8awpDYw6HPDAvYo/cKKYVOyyuonGO2qFLlmur6svsAV6tkMZY5N1Iygq42R74h7AFlzk8xhM9YzIP8ySVhEN2LFlRxgsm/GQyLrzNoS1BwcHSYyOvAfzBCAVu6f8ubLw68bOFWivcvJKAz91I=";
     } else if (location.host.indexOf("lp") > -1) {
-    	gAuthkey = "wv0tVbqwjB3lq1Z7QxSK/RiA31WcFNDd45asJ8rF3Gnl28E5ZkW+9D+/zcDVVXq8yy1fkRjUK9EG41tLceWrPsCbmCOZqVGdr4/JOj11b2g4/DdhnPp7uaDtdL6lH/OLZmRi4aAhdBXhCRmCIsyAZ9qs6P0dpV3EoGFwTaFQqGA=";
+    	gAuthkey = "hr0AqviRLOCsbiIneYWPXdkhMn8awpDYw6HPDAvYo/cKKYVOyyuonGO2qFLlmur6svsAV6tkMZY5N1Iygq42R74h7AFlzk8xhM9YzIP8ySVhEN2LFlRxgsm/GQyLrzNoS1BwcHSYyOvAfzBCAVu6f8ubLw68bOFWivcvJKAz91I=";
     } else if (location.host.indexOf("dev") > -1) {
-    	gAuthkey = "wv0tVbqwjB3lq1Z7QxSK/RiA31WcFNDd45asJ8rF3Gnl28E5ZkW+9D+/zcDVVXq8yy1fkRjUK9EG41tLceWrPsCbmCOZqVGdr4/JOj11b2g4/DdhnPp7uaDtdL6lH/OLZmRi4aAhdBXhCRmCIsyAZ9qs6P0dpV3EoGFwTaFQqGA=";
+    	gAuthkey = "hr0AqviRLOCsbiIneYWPXdkhMn8awpDYw6HPDAvYo/cKKYVOyyuonGO2qFLlmur6svsAV6tkMZY5N1Iygq42R74h7AFlzk8xhM9YzIP8ySVhEN2LFlRxgsm/GQyLrzNoS1BwcHSYyOvAfzBCAVu6f8ubLw68bOFWivcvJKAz91I=";
     } else if (location.host.indexOf("qas") > -1) {
-    	gAuthkey = "wv0tVbqwjB3lq1Z7QxSK/RiA31WcFNDd45asJ8rF3Gnl28E5ZkW+9D+/zcDVVXq8yy1fkRjUK9EG41tLceWrPsCbmCOZqVGdr4/JOj11b2g4/DdhnPp7uaDtdL6lH/OLZmRi4aAhdBXhCRmCIsyAZ9qs6P0dpV3EoGFwTaFQqGA=";
+    	gAuthkey = "hr0AqviRLOCsbiIneYWPXdkhMn8awpDYw6HPDAvYo/cKKYVOyyuonGO2qFLlmur6svsAV6tkMZY5N1Iygq42R74h7AFlzk8xhM9YzIP8ySVhEN2LFlRxgsm/GQyLrzNoS1BwcHSYyOvAfzBCAVu6f8ubLw68bOFWivcvJKAz91I=";
     } else {
-    	gAuthkey = "wv0tVbqwjB3lq1Z7QxSK/RiA31WcFNDd45asJ8rF3Gnl28E5ZkW+9D+/zcDVVXq8yy1fkRjUK9EG41tLceWrPsCbmCOZqVGdr4/JOj11b2g4/DdhnPp7uaDtdL6lH/OLZmRi4aAhdBXhCRmCIsyAZ9qs6P0dpV3EoGFwTaFQqGA=";
+    	gAuthkey = "hr0AqviRLOCsbiIneYWPXdkhMn8awpDYw6HPDAvYo/cKKYVOyyuonGO2qFLlmur6svsAV6tkMZY5N1Iygq42R74h7AFlzk8xhM9YzIP8ySVhEN2LFlRxgsm/GQyLrzNoS1BwcHSYyOvAfzBCAVu6f8ubLw68bOFWivcvJKAz91I=";
     }
 
     win.dextuploadx5Configuration = {