import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import java.util.Random;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.SecurityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.multipart.MultipartFile;
import com.aeonlife.auditsysback.constants.AuditConstants;
import com.aeonlife.auditsysback.dto.file.UploadAndDownloadInDto;
import com.aeonlife.auditsysback.enums.AuditErrorEnum;
import com.aeonlife.component.utils.ApolloUtil;
import com.aeonlife.component.utils.ObjectUtil;
import com.aeonlife.component.utils.StringUtil;
import com.aeonlife.service.common.exception.AeonServerException;
import com.aeonlife.sys.entity.SysUserEntity;
@Configuration
public class FileUploadUtil {
private final static Logger logger = LoggerFactory.getLogger(FileUploadUtil.class);
private static String uploadPath = "";
// @Value("${file.path.windows}")
// private static String windowsPath;
// @Value("${file.path.linux}")
// private static String linuxPath;
public static String getUploadPath() {
if ("".equals(uploadPath)) {
String os = System.getProperty("os.name").toLowerCase();
if (os.indexOf("windows") >= 0) {
if (StringUtil.isNotEmpty(ApolloUtil.getEnvValueDefault("file.path.windows"))) {
uploadPath = ApolloUtil.getEnvValueDefault("file.path.windows");
} else {
uploadPath = AuditConstants.FILE_PATH_WINDOWS;
}
} else if (os.indexOf("linux") >= 0) {
if (StringUtil.isNotEmpty(ApolloUtil.getEnvValueDefault("file.path.linux"))) {
uploadPath = ApolloUtil.getEnvValueDefault("file.path.linux");
} else {
uploadPath = AuditConstants.FILE_PATH_LINUX;
}
}
}
try {
File file = new File(uploadPath);
//路径不存在就创建
if (!file.exists()) {
file.mkdirs();
}
} catch (Exception e) {
e.printStackTrace();
logger.error("创建上传路径失败,", e);
}
return uploadPath;
}
public static UploadAndDownloadInDto saveFiles(HttpServletRequest request, HttpServletResponse res,
Map<String, MultipartFile> files) {
SysUserEntity user = (SysUserEntity) SecurityUtils.ge