package com.ruoyi.basic.controller; import com.ruoyi.basic.dto.StorageBlobVO; import com.ruoyi.basic.service.StorageBlobService; import com.ruoyi.framework.web.domain.R; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.HashMap; import java.util.List; import java.util.Map; @RestController @RequiredArgsConstructor @Tag(name = "文件上传") @RequestMapping("/file") public class FileUploadController { private final StorageBlobService storageBlobService; @PostMapping("/upload") @Operation(summary = "文件上传") public R upload(@RequestParam("file") List file) { List result = storageBlobService.upload(file, false); if (result == null || result.isEmpty()) { return R.fail("上传失败"); } StorageBlobVO vo = result.get(0); Map data = new HashMap<>(); data.put("id", vo.getId()); data.put("originalName", vo.getOriginalFilename()); data.put("tempPath", vo.getPreviewURL()); data.put("uidFilename", vo.getUidFilename()); data.put("contentType", vo.getContentType()); data.put("byteSize", vo.getByteSize()); return R.ok(data); } }