From 64fa2c33cd645e86d4e2a8c34c7881ea4aa678cf Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 17 六月 2025 18:33:37 +0800
Subject: [PATCH] 代码初始化

---
 server/src/main/java/com/doumee/api/common/PublicCloudController.java |   35 ++++++++++++++++++++++++-----------
 1 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/server/src/main/java/com/doumee/api/common/PublicCloudController.java b/server/src/main/java/com/doumee/api/common/PublicCloudController.java
index 197c8d1..9c2bea6 100644
--- a/server/src/main/java/com/doumee/api/common/PublicCloudController.java
+++ b/server/src/main/java/com/doumee/api/common/PublicCloudController.java
@@ -53,13 +53,23 @@
     private SystemDictDataBiz systemDictDataBiz;
     @Autowired
     private EmailService emailService;
-    @Value("${upload.type")
+    @Value("${upload.type}")
     private String  uploadType;
 
 
     public static FtpUtil ftp  = null;
     public static AzureBlobUtil azureBlobUtil  = null;
-
+    @GetMapping("/image/{folder}/{date}/{name}")
+    public void getImage(@PathVariable String folder,@PathVariable String date,@PathVariable String name, HttpServletResponse response) throws IOException {
+       try {
+           initUploadTool();
+           response.setContentType("image/jpeg"); // 鏍规嵁浣犵殑鍥剧墖绫诲瀷璁剧疆姝g‘鐨凪IME绫诲瀷
+           log.info("===================鍥剧墖blob鍚嶇О"+folder+"/"+date+"/"+name);
+           azureBlobUtil.downloadBlobToStream(folder+"/"+date+"/"+name,response.getOutputStream());
+       }catch (Exception e) {
+           e.printStackTrace();
+       }
+    }
     @ApiOperation(value = "娴嬭瘯浼佷笟绱犳潗涓婁紶涓嬭浇")
     @RequestMapping(method= RequestMethod.POST,value="/testQwImg")
     @ResponseBody
@@ -90,7 +100,7 @@
                         String fileName = folder + fName;
                         boolean r1 =false;
                         if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
-                            r1 = azureBlobUtil.uploadFileWithResponse( fileName,is);//涓婁紶
+                            r1 = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//涓婁紶
                         }else{
                             r1 = ftp.uploadInputstreamBatch(is, fileName, true,index);
                         }
@@ -180,7 +190,7 @@
                     String fileName = folder + fName;
                     boolean r =false;
                     if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
-                        r = azureBlobUtil.uploadFileWithResponse( fileName,is);//涓婁紶
+                        r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//涓婁紶
                     }else{
                         r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,fileList.size()),index);
                     }
@@ -236,8 +246,8 @@
                         //鑾峰緱姣忎竴涓枃浠�
                         String endType = ".jpg";
                         String originname = UUID.randomUUID().toString()+endType;
-                        InputStream is = QywxUtil.getMediaInputstream(systemDictDataBiz.queryByCode(Constants.QYWX,Constants.QYWX_TOKEN).getCode(),media);
-                        if(is == null){
+                        Map<String,Object> map = QywxUtil.getMediaInputstreamMap(systemDictDataBiz.queryByCode(Constants.QYWX,Constants.QYWX_TOKEN).getCode(),media);
+                        if(map == null || map.get("data") == null){
                             log.error("浼佷笟寰俊绱犳潗涓嬭浇澶辫触锛�========="+media);
                             continue;
                         }
@@ -247,9 +257,9 @@
                         String fileName = folder + fName;
                         boolean r =false;
                         if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
-                            r = azureBlobUtil.uploadFileWithResponse( fileName,is);//涓婁紶
+                            r = azureBlobUtil.uploadFileWithResponseAndSize( fileName, (InputStream) map.get("data"),(Integer)map.get("size"));//涓婁紶
                         }else{
-                            r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,param.getMediaIds().size()),index);
+                            r = ftp.uploadInputstreamBatch( (InputStream) map.get("data"), fileName, Constants.equalsInteger(index ,param.getMediaIds().size()),index);
                         }
                         if (r) {
                             JSONObject fileJSON = new JSONObject();
@@ -317,7 +327,7 @@
                         String fileName = folder + fName;
                         boolean r =false;
                         if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
-                            r = azureBlobUtil.uploadFileWithResponse( fileName,is);//涓婁紶
+                            r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//涓婁紶
                         }else{
                             r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,fileList.size()),index);
                         }
@@ -350,10 +360,13 @@
     private void initUploadTool() throws Exception{
         if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
             if(azureBlobUtil == null){
-                azureBlobUtil = new AzureBlobUtil(systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSNAME).getCode(),
+                azureBlobUtil = new AzureBlobUtil(
+                        systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSNAME).getCode(),
                         systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSKEY).getCode(),
                         systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ENDPOINT).getCode(),
                         systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_CONTAINER).getCode());
+            }else{
+                azureBlobUtil.initClient();
             }
         }else{
             if(ftp == null){
@@ -405,7 +418,7 @@
                     String fileName = folder+"/"+fName;
                     boolean r =false;
                     if(StringUtils.equals(Constants.uploadType.blob,uploadType)){
-                        r = azureBlobUtil.uploadFileWithResponse( fileName,is);//涓婁紶
+                        r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//涓婁紶
                     }else{
                         r = ftp.uploadInputstream(is,fileName);
                     }

--
Gitblit v1.9.3