qa-prevention-gwj/src/main/java/com/zcloud/util/FileUploadUtil.java

69 lines
2.6 KiB
Java
Raw Normal View History

package com.zcloud.util;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IORuntimeException;
import org.springframework.web.multipart.MultipartFile;
/**
*
*
* -> -> -> ->
* @date 2024-9-10
* @author hyx
* @version V1.0
*/
public class FileUploadUtil {
private final static String PATH_PREFIX = "/mnt/vdc1/qask/file"; //服务器路径前缀
private final static String TEMPORARY_FILE_PATH = "/uploadFiles/linshi/"; //临时文件储存路径
private final static String PRODUCT_FILE_PATH = "/uploadFiles/yhtp/"; //正式文件储存路径
/**
*
*
* @param file
* @param CORPINFO_ID id
* @return
* @throws Exception
* @date 2024-9-10
* @author hyx
*/
public static String uploadTemporaryFile(MultipartFile file,String CORPINFO_ID) throws Exception {
String ffile = DateUtil.getDays();
String fileName = UuidUtil.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
try {
Smb.sshSftp(file,fileName,TEMPORARY_FILE_PATH + CORPINFO_ID + "/" + ffile);
} catch (Exception e) {
throw new RuntimeException(e);
}
return TEMPORARY_FILE_PATH + CORPINFO_ID+ "/" + ffile + "/" + fileName;
}
/**
*
*
* @param temporaryFilePath
* @param CORPINFO_ID id
* @return
* @throws Exception
* @date 2024-9-10
* @author hyx
*/
public static String copyTemporaryFileToProduct(String temporaryFilePath,String CORPINFO_ID) throws Exception {
//临时文件在服务器的完整路径
String completeTemporaryPath = PATH_PREFIX + temporaryFilePath;
//截取文件名
String fileName = completeTemporaryPath.substring(completeTemporaryPath.lastIndexOf("")).replace("/","");
//正式文件完整路径
String completeProductPath = PATH_PREFIX + PRODUCT_FILE_PATH + CORPINFO_ID + "/" + DateUtil.getDays() + "/";
//临时文件拷贝到正式路径
try {
FileUtil.copy(completeTemporaryPath,completeProductPath,true);
} catch (IORuntimeException e) {
throw new RuntimeException(e);
}
return PRODUCT_FILE_PATH + fileName;
}
}