From ff8d6c48e9fa3d4c71b2f8f0edf8235cc590f39d Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 20 十月 2022 14:21:11 +0800 Subject: [PATCH] 修改地名地址接口 --- src/main/java/com/lf/server/helper/PathHelper.java | 137 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 109 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/lf/server/helper/PathHelper.java b/src/main/java/com/lf/server/helper/PathHelper.java index 327240e..3379fa1 100644 --- a/src/main/java/com/lf/server/helper/PathHelper.java +++ b/src/main/java/com/lf/server/helper/PathHelper.java @@ -1,10 +1,14 @@ package com.lf.server.helper; import com.lf.server.config.PropertiesConfig; +import com.lf.server.entity.all.SettingData; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.io.File; +import java.util.Date; /** * 璺緞甯姪绫� @@ -13,9 +17,7 @@ @Component public class PathHelper { @Autowired - private PropertiesConfig propertiesConfig; - - private static int MAX_FILES = 2000; + private PropertiesConfig config; private static int importPath = 1; @@ -25,14 +27,38 @@ private static int sharePath = 1; + private final static double D90 = 90; + + private final static Log log = LogFactory.getLog(PathHelper.class); + + public PropertiesConfig getConfig() { + return config; + } + + public static int getImportPath() { + return importPath; + } + + public static int getExportPath() { + return exportPath; + } + + public static int getUploadPath() { + return uploadPath; + } + + public static int getSharePath() { + return sharePath; + } + /** * 鍒濆鍖� */ public void init() { - importPath = getSubPath(propertiesConfig.getImportPath(), importPath); - exportPath = getSubPath(propertiesConfig.getExportPath(), exportPath); - uploadPath = getSubPath(propertiesConfig.getUploadPath(), uploadPath); - sharePath = getSubPath(propertiesConfig.getSharePath(), sharePath); + importPath = getSubPath(config.getImportPath(), importPath); + exportPath = getSubPath(config.getExportPath(), exportPath); + uploadPath = getSubPath(config.getUploadPath(), uploadPath); + sharePath = getSubPath(config.getSharePath(), sharePath); } private static int getSubPath(String parentPath, int subPath) { @@ -46,7 +72,7 @@ } File[] files = file.listFiles(); - if (files.length < MAX_FILES) { + if (files.length < SettingData.MAX_FILES) { return subPath; } @@ -56,45 +82,100 @@ /** * 鑾峰彇瀵煎叆鐩綍 - * - * @return */ - public String getImportPath() { - importPath = getSubPath(propertiesConfig.getImportPath(), importPath); + public String getImportFullPath() { + importPath = getSubPath(config.getImportPath(), importPath); - return propertiesConfig.getImportPath() + File.separator + importPath; + return config.getImportPath() + File.separator + importPath; } /** * 鑾峰彇鍑哄浘鐩綍 - * - * @return */ - public String getExportPath() { - exportPath = getSubPath(propertiesConfig.getExportPath(), exportPath); + public String getExportFullPath() { + exportPath = getSubPath(config.getExportPath(), exportPath); - return propertiesConfig.getExportPath() + File.separator + exportPath; + return config.getExportPath() + File.separator + exportPath; } /** * 鑾峰彇涓婁紶鐩綍 - * - * @return */ - public String getUploadPath() { - uploadPath = getSubPath(propertiesConfig.getUploadPath(), uploadPath); + public String getUploadFullPath() { + uploadPath = getSubPath(config.getUploadPath(), uploadPath); - return propertiesConfig.getUploadPath() + File.separator + uploadPath; + return config.getUploadPath() + File.separator + uploadPath; } /** * 鑾峰彇鍏变韩鐩綍 - * - * @return */ - public String getSharePath() { - sharePath = getSubPath(propertiesConfig.getSharePath(), sharePath); + public String getShareFullPath() { + sharePath = getSubPath(config.getSharePath(), sharePath); - return propertiesConfig.getSharePath() + File.separator + sharePath; + return config.getSharePath() + File.separator + sharePath; + } + + /** + * 鑾峰彇涓存椂璺緞 + */ + public String getTempPath() { + String tempName = StringHelper.YMD_HM_FORMAT.format(new Date()); + String tempPath = config.getTempPath(); + String path = tempPath + File.separator + tempName; + + File file = new File(path); + if (!file.exists() && !file.isDirectory()) { + file.mkdirs(); + } + + double ran = Math.random() * 99; + if (ran > D90) { + deleteOldPath(tempPath); + } + + return path; + } + + /** + * 鍒犻櫎鏃ц矾寰� + */ + public void deleteOldPath(String tempPath) { + try { + File file = new File(tempPath); + String str = StringHelper.YMD__FORMAT.format(new Date()); + + File[] files = file.listFiles(); + for (File f : files) { + if (f.getPath().indexOf(str) > -1) { + continue; + } + + deleteFiles(f); + } + } catch (Exception ex) { + log.error(ex.getMessage() + ex.getStackTrace() + "\n"); + } + } + + /** + * 绾ц仈鍒犻櫎鏂囦欢 + */ + public void deleteFiles(File file) { + if (file == null || !file.exists()) { + return; + } + + if (file.isDirectory()) { + File[] files = file.listFiles(); + for (File f : files) { + if (f.isDirectory()) { + deleteFiles(f); + } else { + f.delete(); + } + } + } + file.delete(); } } -- Gitblit v1.9.3