package com.guwan.backend.controller; import com.guwan.backend.common.Result; import com.guwan.backend.util.MinioUtil; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @RestController @RequestMapping("/minio") @RequiredArgsConstructor public class MinioController { private final MinioUtil minioUtil; @PostMapping("/uploadBase64Image") public Result uploadBase64Image(@RequestParam String bucketName, @RequestParam String base64Image, @RequestParam String folder){ String fileName = minioUtil.uploadBase64Image(bucketName, base64Image, folder); return Result.success(fileName); } @PostMapping("/uploadFile") public Result uploadFile(@RequestParam String bucketName, @RequestPart("file") MultipartFile file, @RequestParam String folder) { String fileName = minioUtil.uploadFile(bucketName, file, folder); String fileUrl = minioUtil.getFileUrl(bucketName, fileName); String url = minioUtil.getUrl(fileUrl); return Result.success(url); } @PostMapping("/courseSourceUpload") public Result courseSourceUpload(@RequestPart("file") MultipartFile file) { String bucketName = "file"; String folder = "courseSource"; String fileName = minioUtil.uploadFile(bucketName, file, folder); String fileUrl = minioUtil.getFileUrl(bucketName, fileName); String url = minioUtil.getUrl(fileUrl); return Result.success(url); } }