From e8e30e5474c1fd0c14390710066e40c17155ad37 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 22 十月 2025 17:41:01 +0800
Subject: [PATCH] 广告物料零星结算导入

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OssServiceImpl.java |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OssServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OssServiceImpl.java
index 3bb8466..0ca8128 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OssServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OssServiceImpl.java
@@ -93,7 +93,38 @@
             ossClient.shutdown();
         }
     }
-    
+
+    @Override
+    public String uploadByInputStream(InputStream inputStream) {
+        OSS ossClient = null;
+        try {
+            CredentialsProvider credentialsProvider = new DefaultCredentialProvider(OssConfig.ACCESS_KEY_ID, OssConfig.ACCESS_KEY_SECRET);
+            String region = "cn-chengdu";
+            // 创建OSSClient实例。
+            ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
+            clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
+            ossClient = OSSClientBuilder.create()
+                    .endpoint(OssConfig.UPLOAD_ENDPOINT)
+                    .credentialsProvider(credentialsProvider)
+                    .clientConfiguration(clientBuilderConfiguration)
+                    .region(region)
+                    .build();
+
+            String fileExt = "png";
+            String fileName = UUID.randomUUID().toString();
+            // 设置文件名
+            String filePathName = generateRelativeStoragePath(OssConfig.FOLDER, fileExt, fileName);
+            // 创建PutObjectRequest对象。
+            PutObjectRequest putObjectRequest = new PutObjectRequest(OssConfig.BUCKET_NAME, filePathName, inputStream);
+            // 创建PutObject请求。
+            PutObjectResult result = ossClient.putObject(putObjectRequest);
+
+            return OssConfig.DOWNLOAD_ENDPOINT + filePathName;
+        } finally {
+            ossClient.shutdown();
+        }
+    }
+
     /**
      * <pre>
      * 获取存储的相对路径

--
Gitblit v1.7.1