From 079041267873a043486db99671326e5323934c57 Mon Sep 17 00:00:00 2001 From: liusuyi <13324259@qq.com> Date: 星期日, 16 七月 2023 16:16:38 +0800 Subject: [PATCH] 增加融云业务上传用户头像接口 --- ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java | 15 ++++++++++++++- ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java | 15 ++++++++++++--- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java index 36f8fa5..81fa418 100644 --- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java +++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java @@ -1,5 +1,6 @@ package com.ruoyi.device.hiksdk.util.minio; +import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.device.hiksdk.config.MinioClientSingleton; import io.minio.*; import io.minio.http.Method; @@ -149,12 +150,16 @@ } boolean exsit = exitsBucket(bucketName); if (!exsit) { - log.error(bucketName + "-妗朵笉瀛樺湪"); + boolean bucket = createBucket(bucketName); + if(bucket) + { + log.info(bucketName + "-妗朵笉瀛樺湪,鎴愬姛鍒涘缓妗�"); + } } //鏂囦欢鍚� String originalFilename = file.getOriginalFilename(); //鏂扮殑鏂囦欢鍚� - String fileName = UUID.randomUUID().toString().replace("-", "") + originalFilename; + String fileName = IdUtils.fastSimpleUUID()+"_"+ originalFilename; try { InputStream inputStream = file.getInputStream(); /*涓婁紶瀵硅薄*/ @@ -172,8 +177,11 @@ .builder() .bucket(bucketName) .object(fileName) + .method(Method.GET) .build(); - return MinioClientSingleton.getMinioClient().getPresignedObjectUrl(getPresignedObjectUrlArgs); + String presignedObjectUrl = MinioClientSingleton.getMinioClient().getPresignedObjectUrl(getPresignedObjectUrlArgs); + String ObjectUrl = presignedObjectUrl.substring(0, presignedObjectUrl.indexOf("?")); + return ObjectUrl; } catch (Exception ex) { log.error("涓婁紶瀵硅薄杩斿洖url寮傚父锛�" + ex.getMessage()); } @@ -425,6 +433,7 @@ return false; } } + /** *@鎻忚堪 鑾峰彇妗朵腑鎵�鏈夊璞� *@鍙傛暟 [bucketName] diff --git a/ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java b/ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java index 0659a99..2c6f762 100644 --- a/ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java +++ b/ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java @@ -2,11 +2,16 @@ import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.device.hiksdk.config.MinioClientSingleton; +import com.ruoyi.device.hiksdk.util.minio.MinioUtils; import com.ruoyi.rongcloud.service.RongCloudService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; @@ -20,15 +25,23 @@ @RestController @Api(tags = "铻嶄簯鎺ュ彛") @Anonymous +@RequestMapping("/rongCloud") public class RongCloudController { @Resource RongCloudService rongCloudService; - @GetMapping("getToken") + @GetMapping("/getToken") @ApiOperation("鑾峰彇token") public AjaxResult getToken(String userId,String name) { String token = rongCloudService.getToken(userId, name); return AjaxResult.success(token); } + @PostMapping("/uploadPic") + @ApiOperation("涓婁紶鍥剧墖") + public AjaxResult uploadPic(MultipartFile file) + { + String url = MinioUtils.putObjectAndGetUrl("useravatar", file); + return AjaxResult.success(url); + } } -- Gitblit v1.9.3