package com.xiaopeng.operation.controller; import cn.hutool.core.lang.UUID; import com.xiaopeng.common.core.domain.R; import com.xiaopeng.evi.oss.service.AliOssService; import com.xiaopeng.operation.vo.FileUploadVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.IOException; /** *

* 任务申诉 前端控制器 *

* * @author xiaochen * @since 2025-05-28 */ @Api(tags = "阿里云文件上传") @RestController @RequestMapping("/base/v1/oss") public class OssController { @Resource private AliOssService aliOssService; @PostMapping(value = "/upload",headers = "content-type=multipart/form-data") @ApiOperation(value = "文件上传",tags = "文件上传") public R uploadOSS(@RequestParam(value = "file") MultipartFile file) { try { // 上传并返回访问地址 // String fileName = file.getOriginalFilename(); // String prefix = fileName.substring(fileName.lastIndexOf(".")); // long fileSize = file.getSize(); // String fileId = UUID.randomUUID().toString(); // //上传文件 // aliOssService.uploadFile(file.getBytes(), fileId); // String downloadUrl = aliOssService.getDownloadUrl(fileId, fileName,true); // FileUploadVO fileUploadVO = new FileUploadVO(); // fileUploadVO.setId(fileId); // fileUploadVO.setName(fileName); // fileUploadVO.setUrl(downloadUrl); FileUploadVO fileUploadVO = new FileUploadVO(); fileUploadVO.setId(UUID.randomUUID().toString()); fileUploadVO.setName("测试.jpg"); fileUploadVO.setUrl("https://we-park-life.oss-cn-beijing.aliyuncs.com/img/K4vqtLmVc6.png"); return R.ok(fileUploadVO); } catch (Exception e) { System.err.println("上传文件失败"+e); return R.fail(e.getMessage()); } } }