From fe512841e70c9dae6097251aa65708fe18314ae2 Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期二, 15 四月 2025 19:41:57 +0800
Subject: [PATCH] 对象存储地址修改为bendudu的&一个接口--将原本存在本地的文件图片上传到存储桶中

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZfEconomyServiceImpl.java      |    7 +++
 zhang-content/src/main/java/com/ruoyi/service/ZfEconomyService.java               |    1 
 zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java                  |   41 ++++++++++++++++++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZfEconomyController.java |   37 ++++++++++++++++++
 zhang-content/src/main/java/com/ruoyi/domain/ZfEconomy.java                       |    2 +
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/CosController.java       |    5 ++
 ruoyi-admin/src/main/resources/application.yml                                    |   14 +++++--
 7 files changed, 100 insertions(+), 7 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/CosController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/CosController.java
index d4e10fd..f046916 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/CosController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/CosController.java
@@ -30,7 +30,10 @@
         }
         System.out.println("dfsdgd");
         HashMap<String,String> map = new HashMap<>();
-        map.put("key",key);
+
+        int dotIndex = key.lastIndexOf('/');
+        map.put("key", key.substring(dotIndex + 1));
+        map.put("path",key);
         return AjaxResult.success(map);
     }
 
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZfEconomyController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZfEconomyController.java
index 2334f5b..58fa1cd 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZfEconomyController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZfEconomyController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.web.controller.zhang;
 
 
+import com.qcloud.cos.utils.IOUtils;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -12,12 +13,20 @@
 import com.ruoyi.domain.ZfEconomy;
 import com.ruoyi.domain.excel.ZfEconomyExcelBean;
 import com.ruoyi.service.ZfEconomyService;
+import com.ruoyi.service.impl.GetOrPut;
 import lombok.extern.slf4j.Slf4j;
+import lombok.val;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
@@ -40,6 +49,34 @@
     @Autowired
     ZfEconomyService zfEconomyService;
 
+    @Autowired
+    GetOrPut getOrPut;
+
+    @GetMapping("cc")
+    public void ll() throws IOException {
+        List<ZfEconomy> change = zfEconomyService.change();
+        for (ZfEconomy ch:change) {
+            if (ch.getUrl() != null) {
+                String[] splits = ch.getUrl().split(",");
+                StringBuilder list= new StringBuilder();
+                for (int i=0;i<splits.length;i++) {
+                    if (splits[i] != null && splits[i].length() !=0) {
+//                        splits[i]=splits[i].replace("\\", "/");
+                        String cs = getOrPut.uploadWebFile("https://www.bendudu.com:8080/" + splits[i]);
+                        if(i>=1) {
+                            list.append(",").append(cs);
+                        }else {
+                            list.append(cs);
+                        }
+                    }
+                }
+                ch.setCosKey(list.toString());
+                zfEconomyService.updateById(ch);
+
+            }
+        }
+    }
+
     @GetMapping("/all")
     public AjaxResult listAll(ZfEconomy zfEconomy){
         Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index 6032dc1..7ecbf40 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -147,8 +147,14 @@
 #鑵捐浜�
 tencent:
   cos:
-    secret-id: AKIDOelfP1QbZJq9E5j9LI2YptwlNlvsbBf0       # 鏇挎崲涓哄疄闄匰ecretId
-    secret-key: DCxVpvnRt89wVs2ygATYZWOMFzXtAHB3    # 鏇挎崲涓哄疄闄匰ecretKey
-    bucket-name: examplebucket-22222-1346631008  # 瀛樺偍妗跺悕绉�
+    secret-id: AKID3ykKitsgIkz2tY0EE3g6IWcWDi087tse       # 鏇挎崲涓哄疄闄匰ecretId
+    secret-key: d4NckmibQApMvIRcbNwHOIyQdoxyvjLj    # 鏇挎崲涓哄疄闄匰ecretKey
+    bucket-name: bendudu-bucket-1325664559  # 瀛樺偍妗跺悕绉�
     region: ap-guangzhou            # 瀛樺偍妗跺湴鍩�
-    base-url: https://examplebucket-22222-1346631008.cos.ap-guangzhou.myqcloud.com # 璁块棶鍩虹URL
\ No newline at end of file
+    base-url: https://bendudu-bucket-1325664559.cos.ap-guangzhou.myqcloud.com # 璁块棶鍩虹URL
+
+
+
+
+
+
diff --git a/zhang-content/src/main/java/com/ruoyi/domain/ZfEconomy.java b/zhang-content/src/main/java/com/ruoyi/domain/ZfEconomy.java
index 4bc9ce8..4b635d6 100644
--- a/zhang-content/src/main/java/com/ruoyi/domain/ZfEconomy.java
+++ b/zhang-content/src/main/java/com/ruoyi/domain/ZfEconomy.java
@@ -114,4 +114,6 @@
      */
     private Integer shareId;
 
+    private String cosKey;
+
 }
diff --git a/zhang-content/src/main/java/com/ruoyi/service/ZfEconomyService.java b/zhang-content/src/main/java/com/ruoyi/service/ZfEconomyService.java
index 14cfc17..8f89207 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/ZfEconomyService.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/ZfEconomyService.java
@@ -17,6 +17,7 @@
  * @since 2023-03-12
  */
 public interface ZfEconomyService extends IService<ZfEconomy> {
+     List<ZfEconomy> change();
 
     AjaxResult selectDataList(ZfEconomy zfEconomy, Integer pageNum, Integer pageSize);
 
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java b/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java
index f23b112..9aef8e9 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java
@@ -19,6 +19,8 @@
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.URL;
+import java.net.URLConnection;
 import java.util.UUID;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -70,6 +72,7 @@
             String fileExt = originalFilename.substring(originalFilename.lastIndexOf("."));
             String key = java.util.UUID.randomUUID().toString() + fileExt;
 
+
             ObjectMetadata metadata = new ObjectMetadata();
             metadata.setContentLength(file.getSize());
             metadata.setContentType(file.getContentType());
@@ -100,7 +103,43 @@
 
         PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile);
         cosClient.putObject(putObjectRequest);
-        return baseUrl + "/" + key;
+        return  key;
+    }
+
+    /**
+     * 涓婁紶鏈湴鏂囦欢
+     * @param fileUrl 鏈湴鏂囦欢璺緞
+     * @return 鏂囦欢璁块棶URL
+     */
+    public String uploadWebFile(String fileUrl) throws IOException {
+        // 鍋囪 fileUrl 鏄綘瑕佷笂浼犵殑鏂囦欢 URL
+        System.out.println(fileUrl);
+        URL url = new URL(fileUrl);
+        InputStream inputStream = url.openStream();
+
+        URLConnection connection = url.openConnection();
+
+        // 鑾峰彇鏂囦欢鐨勫ぇ灏忥紙瀛楄妭鏁帮級
+        int contentLength = connection.getContentLength();
+        // 鑾峰彇鏂囦欢绫诲瀷
+        String type = connection.getContentType();
+// 鑾峰彇鏂囦欢鐨勬墿灞曞悕锛堝鏋滈渶瑕侊級
+        String fileExtension = fileUrl.substring(fileUrl.lastIndexOf("."));
+        String key = UUID.randomUUID().toString() + fileExtension;
+
+        ObjectMetadata metadata = new ObjectMetadata();
+        metadata.setContentLength(contentLength);
+        metadata.setContentType(type);
+// 鍒涘缓 PutObjectRequest 璇锋眰瀵硅薄锛岀洿鎺ヤ紶鍏� InputStream
+        PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, inputStream, metadata);
+
+// 涓婁紶鏂囦欢
+        cosClient.putObject(putObjectRequest);
+
+// 鍏抽棴杈撳叆娴�
+        inputStream.close();
+
+        return  key;
     }
 
     /**
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEconomyServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEconomyServiceImpl.java
index 741247f..1472e3e 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEconomyServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfEconomyServiceImpl.java
@@ -68,7 +68,7 @@
     private LambdaQueryWrapper<ZfEconomy> buildCondition(ZfEconomy zfEconomy,List<Long> familyIdList) {
         LambdaQueryWrapper<ZfEconomy> lqw = new LambdaQueryWrapper<>();
         lqw.orderByDesc(ZfEconomy::getCreateTime);
-        lqw.in(ZfEconomy::getFamilyId,familyIdList);
+//        lqw.in(ZfEconomy::getFamilyId,familyIdList);
         lqw.like(StringUtils.isNotEmpty(zfEconomy.getType()),ZfEconomy::getType,zfEconomy.getType());
         lqw.like(StringUtils.isNotEmpty(zfEconomy.getKind()),ZfEconomy::getKind,zfEconomy.getKind());
         lqw.like(StringUtils.isNotEmpty(zfEconomy.getPrice()),ZfEconomy::getPrice,zfEconomy.getPrice());
@@ -94,6 +94,11 @@
         lqw.eq(zfEconomy.getHappenTime() != null, ZfEconomy::getHappenTime, zfEconomy.getHappenTime());
         return lqw;
     }
+    @Override
+    public List<ZfEconomy> change(){
+        ZfEconomy zfEconomy = new ZfEconomy();
+       return list(buildCondition(zfEconomy,null));
+    }
 
 //    private LambdaQueryWrapper<ZfEconomy> buildCondition(ZfEconomy zfEconomy, String familyIds, String secondFamilyAuthority) {
 //        //妯$硦鏌ヨ鐨勬潯浠�

--
Gitblit v1.9.1