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 | 82 +++++++++++++++++++++++++++++-----------
1 files changed, 59 insertions(+), 23 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 2d53aea..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
@@ -63,32 +63,68 @@
*/
@Override
public String upload(String storagePath, MultipartFile file) throws IOException {
- 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);
- OSS ossClient = OSSClientBuilder.create()
- .endpoint(OssConfig.UPLOAD_ENDPOINT)
- .credentialsProvider(credentialsProvider)
- .clientConfiguration(clientBuilderConfiguration)
- .region(region)
- .build();
- InputStream inputStream = file.getInputStream();
+ 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();
+ InputStream inputStream = file.getInputStream();
- String originFileName = file.getOriginalFilename();
- String fileExt = Objects.requireNonNull(originFileName).substring(originFileName.lastIndexOf(".") + 1);
- String fileName = originFileName.substring(0, originFileName.lastIndexOf("."));
- // 设置文件名
- String filePathName = generateRelativeStoragePath(storagePath, fileExt, fileName);
- // 创建PutObjectRequest对象。
- PutObjectRequest putObjectRequest = new PutObjectRequest(OssConfig.BUCKET_NAME, filePathName, inputStream);
- // 创建PutObject请求。
- PutObjectResult result = ossClient.putObject(putObjectRequest);
+ String originFileName = file.getOriginalFilename();
+ String fileExt = Objects.requireNonNull(originFileName).substring(originFileName.lastIndexOf(".") + 1);
+ String fileName = originFileName.substring(0, originFileName.lastIndexOf("."));
+ // 设置文件名
+ String filePathName = generateRelativeStoragePath(storagePath, fileExt, fileName);
+ // 创建PutObjectRequest对象。
+ PutObjectRequest putObjectRequest = new PutObjectRequest(OssConfig.BUCKET_NAME, filePathName, inputStream);
+ // 创建PutObject请求。
+ PutObjectResult result = ossClient.putObject(putObjectRequest);
- return OssConfig.DOWNLOAD_ENDPOINT + filePathName;
+ return OssConfig.DOWNLOAD_ENDPOINT + filePathName;
+ } finally {
+ 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