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(); } }