Files
pkAssistant/src/main/java/vvpkassistant/file/service/FileServiceImpl.java
2025-08-07 15:39:58 +08:00

44 lines
1.4 KiB
Java

package vvpkassistant.file.service;
import cn.hutool.core.lang.UUID;
import lombok.extern.slf4j.Slf4j;
import org.dromara.x.file.storage.core.FileInfo;
import org.dromara.x.file.storage.core.FileStorageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
/*
* @author: ziin
* @date: 2025/8/7 13:58
*/
@Service
@Slf4j
public class FileServiceImpl implements FileService {
@Resource
private FileStorageService fileStorageService;//注入实列
@Override
public Object uploadHeadIcon(MultipartFile file) {
// 生成 UUID 文件名,保留原扩展名
String originalFilename = file.getOriginalFilename();
String extension = originalFilename != null && originalFilename.contains(".")
? originalFilename.substring(originalFilename.lastIndexOf("."))
: "";
String uuidFileName = UUID.randomUUID().toString().replace("-", "") + extension;
// 使用 fileStorageService 进行上传
// 设置保存的文件名为 UUID
// 返回文件信息或 URL
log.info("Uploading head icon to file: {}", uuidFileName);
return fileStorageService.of(file)
.setSaveFilename(uuidFileName) // 设置保存的文件名为 UUID
.upload();
}
}