From 2078aee230bc109d66da296da8b7f24377befa1b Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期五, 20 十二月 2024 11:08:44 +0800
Subject: [PATCH] 1

---
 ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java |   67 ++++++++++++++++++---------------
 1 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
index 3a24a08..460c745 100644
--- a/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
@@ -43,10 +43,12 @@
         // 涓婁紶鏂囦欢娴�
         try {
             // 鑾峰彇鏂囦欢鐨勫悕绉�
-            String fileName = "sczf/" + file.getOriginalFilename();
+            String strDate2 = dtf2.format(LocalDateTime.now());
             byte[] newImg = file.getBytes();
             String originalFilename = file.getOriginalFilename();
             String fileType = originalFilename.substring(originalFilename.lastIndexOf("."));
+
+            String fileName = "sczf/" + strDate2 + RandomUtils.generateRandomInt(4) + "." + fileType;
             if (".png".equalsIgnoreCase(fileType) || ".jpg".equalsIgnoreCase(fileType) || ".jpeg".equalsIgnoreCase(fileType)) {
                 if (file.getSize() > 2097152) {
                     newImg = compressUnderSize(file.getBytes(), 2097152);
@@ -65,7 +67,7 @@
             Date expiration = new Date(System.currentTimeMillis() + (long) 946080000 * 1000);
             String url = ossClient.generatePresignedUrl(bucketName, fileName, expiration).toString();
 
-            System.out.println("涓婁紶缁撴潫--" + dtf2.format(LocalDateTime.now()));
+            System.out.println("涓婁紶缁撴潫--" + url + "------" + dtf2.format(LocalDateTime.now()));
             return url;
         } catch (Exception e) {
             System.out.println("uploadImages涓婁紶鍥剧墖澶辫触锛�");
@@ -163,43 +165,48 @@
     }
 
     @Override
-    public String uploadImages(InputStream inputStream, String ext) {
-        String endpoint = ConstantPropertiesUtils.END_POINT;
-        String accessKeyId = ConstantPropertiesUtils.ACCESS_KEY_ID;
-        String accessKeySecret = ConstantPropertiesUtils.ACCESS_KEY_SECRET;
-        String bucketName = ConstantPropertiesUtils.BUCKET_NAME;
+    public String uploadImages(InputStream inputStream, String ext, Integer times) {
+        if (times < 3) {
+            String endpoint = ConstantPropertiesUtils.END_POINT;
+            String accessKeyId = ConstantPropertiesUtils.ACCESS_KEY_ID;
+            String accessKeySecret = ConstantPropertiesUtils.ACCESS_KEY_SECRET;
+            String bucketName = ConstantPropertiesUtils.BUCKET_NAME;
 
-        DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+            DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
-        System.out.println("鍑嗗涓婁紶--" + dtf2.format(LocalDateTime.now()));
-        // 鍒涘缓OSSClient瀹炰緥銆�
-        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
-        // 涓婁紶鏂囦欢娴�
-        try {
-            // 鑾峰彇鏂囦欢鐨勫悕绉�
-            LocalDate date = LocalDate.now();
-            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
-            String fileName = "sczf/" + date.format(formatter) + RandomUtils.generateRandomInt(8) + "." + ext;
+//        System.out.println("鍑嗗涓婁紶--" + dtf2.format(LocalDateTime.now()));
+            // 鍒涘缓OSSClient瀹炰緥銆�
+            OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
+            // 涓婁紶鏂囦欢娴�
+            try {
+                // 鑾峰彇鏂囦欢鐨勫悕绉�
+                LocalDate date = LocalDate.now();
+                DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
+                String fileName = "sczf/" + date.format(formatter) + RandomUtils.generateRandomInt(8) + ext;
 
-            ObjectMetadata objectMetadata = new ObjectMetadata();
-            objectMetadata.setContentType(getcontentType(ext));
+                ObjectMetadata objectMetadata = new ObjectMetadata();
+                objectMetadata.setContentType(getcontentType(ext));
 
-            System.out.println("寮�濮嬩笂浼�--" + dtf2.format(LocalDateTime.now()));
+//            System.out.println("寮�濮嬩笂浼�--" + dtf2.format(LocalDateTime.now()));
 
-            ossClient.putObject(bucketName, fileName, inputStream, objectMetadata);
-            ossClient.shutdown();
+                ossClient.putObject(bucketName, fileName, inputStream, objectMetadata);
+                ossClient.shutdown();
 
-            Date expiration = new Date(System.currentTimeMillis() + (long) 946080000 * 1000);
+                Date expiration = new Date(System.currentTimeMillis() + (long) 946080000 * 1000);
 
-            String url = ossClient.generatePresignedUrl(bucketName, fileName, expiration).toString();
+                String url = ossClient.generatePresignedUrl(bucketName, fileName, expiration).toString();
 //            System.out.println("oss涓婁紶鎴愬姛锛�" + url);
 
-            System.out.println("涓婁紶瀹屾垚--" + dtf2.format(LocalDateTime.now()));
-            return url;
-        } catch (Exception e) {
-            System.out.println("oss寮傚父锛�" + e.getMessage());
-            // e.printStackTrace();
-            return this.uploadImages(inputStream, ext);
+//            System.out.println("涓婁紶瀹屾垚--" + dtf2.format(LocalDateTime.now()));
+                return url;
+
+            } catch (Exception e) {
+                System.out.println("oss寮傚父锛�" + e.getMessage());
+                // e.printStackTrace();
+                return this.uploadImages(inputStream, ext, times + 1);
+            }
+        } else {
+            return "";
         }
     }
 

--
Gitblit v1.8.0