From a3698ecb84be4192754d7b2092491e727dbccec7 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 27 六月 2025 16:51:02 +0800
Subject: [PATCH] 修改bug

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/util/UploadUtil.java |  163 +++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 111 insertions(+), 52 deletions(-)

diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/util/UploadUtil.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/util/UploadUtil.java
index 882c19c..5596625 100644
--- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/util/UploadUtil.java
+++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/util/UploadUtil.java
@@ -1,17 +1,15 @@
 package com.stylefeng.guns.modular.system.controller.util;
 
+import com.heredata.hos.model.bucket.Bucket;
 import com.stylefeng.guns.config.properties.GunsProperties;
 import com.stylefeng.guns.core.base.controller.BaseController;
-import com.stylefeng.guns.core.base.tips.SuccessTip;
 import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
 import com.stylefeng.guns.core.exception.GunsException;
-import com.stylefeng.guns.core.util.ObsUploadUtil;
-import com.stylefeng.guns.modular.cloudPayment.example.MediaExample;
-import com.stylefeng.guns.modular.system.model.TImgMid;
+import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.system.service.ITImgMidService;
-import com.stylefeng.guns.modular.system.util.OssUploadUtil;
-import com.unionpay.upyzt.exception.UpyztException;
-import com.unionpay.upyzt.resp.MediaResp;
+import com.stylefeng.guns.modular.system.util.ResultUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.NCOSSUtil;
+import com.stylefeng.guns.modular.system.util.qianyuntong.QianYunTongProperties;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -24,8 +22,6 @@
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
-import java.io.File;
-import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.UUID;
@@ -73,7 +69,33 @@
             MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
             MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile");
             if (file.getSize() != 0) {
-                ossUpload = OssUploadUtil.ossUpload(request, file);
+                String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(file.getOriginalFilename());
+                String bucketName = QianYunTongProperties.bucketName;
+                Bucket grjyTest = NCOSSUtil.getBucketInfo(bucketName);
+                if (null == grjyTest) {
+                    //创建桶
+                    Boolean bucket = NCOSSUtil.createBucket(bucketName);
+                    if (!bucket) {
+                        throw new RuntimeException("创建存储桶失败");
+                    }
+                    //设置桶策略
+                    String policyText = "{\"Version\":\"2025-06-23\",\"Statement\":[{\"Sid\":\"Stmt20250623\",\"Action\":[\"GetObject\"],\"Effect\":\"Allow\",\"Resource\":\"" + bucketName + "/*\",\"Principal\":\"*\"}]}";
+                    Boolean bucketPolicy = NCOSSUtil.setBucketPolicy(bucketName, policyText);
+                    if (!bucketPolicy) {
+                        throw new RuntimeException("设置桶策略失败");
+                    }
+                }
+                //上传对象
+                String key = "imgs/management/" + pictureName;
+                String object = NCOSSUtil.putObject(bucketName, key, file.getInputStream());
+                if (null == object) {
+                    throw new RuntimeException("上传图片失败");
+                }
+    
+                ossUpload = "https://traffic.qytzt.cn/v1/AUTH_" + QianYunTongProperties.account + "/" + bucketName + "/" + key;
+
+
+//                ossUpload = OssUploadUtil.ossUpload(request, file);
 //                ossUpload = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), file);
                 m.put("imgUrl", ossUpload);
             }
@@ -84,43 +106,43 @@
     }
     @Resource
     private ITImgMidService itImgMidService;
-
+    
+    
     @RequestMapping("/image")
     @ResponseBody
-    public Object image(@RequestPart("file") MultipartFile picture, HttpServletRequest request) {
+    public ResultUtil image1(@RequestPart("file") MultipartFile file, HttpServletRequest request) {
         try {
-            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-            MultipartFile file = (MultipartFile) picture;
-            String pictureName = OssUploadUtil.ossUpload(request, file);
-            System.out.println("mediaResp");
-            MediaResp mediaResp = MediaExample.uploadImage(picture);
-            System.out.println("------"+mediaResp);
-            TImgMid tImgMid = new TImgMid();
-            tImgMid.setMid(mediaResp.getMediaId());
-            tImgMid.setUrl(pictureName);
-            itImgMidService.insert(tImgMid);
-//            String pictureName = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), picture);
-            return pictureName;
-        } catch (UpyztException e){
-            e.printStackTrace();
-            return ERROR;
-        }catch (Exception e1) {
-            e1.printStackTrace();
-            return null;
-        }
-    }
-    @RequestMapping("/image1")
-    @ResponseBody
-    public String image1(@RequestPart("file") MultipartFile picture, HttpServletRequest request) {
-        try {
-            MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
-            MultipartFile file = (MultipartFile) picture;
-            String pictureName = OssUploadUtil.ossUpload(request, file);
+            String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(file.getOriginalFilename());
+            String bucketName = QianYunTongProperties.bucketName;
+            Bucket grjyTest = NCOSSUtil.getBucketInfo(bucketName);
+            if (null == grjyTest) {
+                //创建桶
+                Boolean bucket = NCOSSUtil.createBucket(bucketName);
+                if (!bucket) {
+                    return ResultUtil.error("创建存储桶失败");
+                }
+                //设置桶策略
+                String policyText = "{\"Version\":\"2025-06-23\",\"Statement\":[{\"Sid\":\"Stmt20250623\",\"Action\":[\"GetObject\"],\"Effect\":\"Allow\",\"Resource\":\"" + bucketName + "/*\",\"Principal\":\"*\"}]}";
+                Boolean bucketPolicy = NCOSSUtil.setBucketPolicy(bucketName, policyText);
+                if (!bucketPolicy) {
+                    return ResultUtil.error("设置桶策略失败");
+                }
+            }
+            //上传对象
+            String key = "imgs/management/" + pictureName;
+            String object = NCOSSUtil.putObject(bucketName, key, file.getInputStream());
+            if (null == object) {
+                return ResultUtil.error("上传图片失败");
+            }
+    
+            pictureName = "https://traffic.qytzt.cn/v1/AUTH_" + QianYunTongProperties.account + "/" + bucketName + "/" + key;
+
+//            String pictureName = OssUploadUtil.ossUpload(request, file);
             System.out.println("mediaResp");
 //            MediaResp mediaResp = MediaExample.uploadImage(picture);
 //            System.out.println("------"+mediaResp);
 //            String pictureName = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), picture);
-            return pictureName;
+            return ResultUtil.success(pictureName);
         } catch (Exception e1) {
             e1.printStackTrace();
             return null;
@@ -136,10 +158,29 @@
         String suffix = picture.getOriginalFilename().substring(picture.getOriginalFilename().lastIndexOf("."));
         String pictureName = UUID.randomUUID().toString() + suffix;
         try {
-            // 文件目录路径
-            String fileSavePath = gunsProperties.getFileUploadPath();
-            File file = new File(fileSavePath + pictureName);
-            picture.transferTo(file);
+            String bucketName = QianYunTongProperties.bucketName;
+            Bucket grjyTest = NCOSSUtil.getBucketInfo(bucketName);
+            if (null == grjyTest) {
+                //创建桶
+                Boolean bucket = NCOSSUtil.createBucket(bucketName);
+                if (!bucket) {
+                    throw new RuntimeException("创建存储桶失败");
+                }
+                //设置桶策略
+                String policyText = "{\"Version\":\"2025-06-23\",\"Statement\":[{\"Sid\":\"Stmt20250623\",\"Action\":[\"GetObject\"],\"Effect\":\"Allow\",\"Resource\":\"" + bucketName + "/*\",\"Principal\":\"*\"}]}";
+                Boolean bucketPolicy = NCOSSUtil.setBucketPolicy(bucketName, policyText);
+                if (!bucketPolicy) {
+                    throw new RuntimeException("设置桶策略失败");
+                }
+            }
+            //上传对象
+            String key = "file/management/" + pictureName;
+            String object = NCOSSUtil.putObject(bucketName, key, picture.getInputStream());
+            if (null == object) {
+                throw new RuntimeException("上传图片失败");
+            }
+    
+            pictureName = "https://traffic.qytzt.cn/v1/AUTH_" + QianYunTongProperties.account + "/" + bucketName + "/" + key;
         } catch (Exception e) {
             log.error(e.getMessage(), e);
             throw new GunsException(BizExceptionEnum.UPLOAD_ERROR);
@@ -153,16 +194,34 @@
     @RequestMapping("/imageUp")
     public String imageUp(@RequestPart("upfile") MultipartFile picture, HttpServletRequest request) {
         String callback = request.getParameter("callback");
-        String pictureName = UUID.randomUUID().toString() + ".jpg";
         try {
             // 上传文件目录
-            //String fileSavePath = gunsProperties.getFileUploadPath();
-            //picture.transferTo(new File(fileSavePath + pictureName));
-            // 文件全路径
-            //pictureName = gunsProperties.getPictureServerAddress() + pictureName;
-//           pictureName = ObsUploadUtil.obsUpload(super.getHttpServletRequest(), picture);
-            pictureName = OssUploadUtil.ossUpload(super.getHttpServletRequest(), picture);
-
+            String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(picture.getOriginalFilename());
+            String bucketName = QianYunTongProperties.bucketName;
+            Bucket grjyTest = NCOSSUtil.getBucketInfo(bucketName);
+            if (null == grjyTest) {
+                //创建桶
+                Boolean bucket = NCOSSUtil.createBucket(bucketName);
+                if (!bucket) {
+                    throw new RuntimeException("创建存储桶失败");
+                }
+                //设置桶策略
+                String policyText = "{\"Version\":\"2025-06-23\",\"Statement\":[{\"Sid\":\"Stmt20250623\",\"Action\":[\"GetObject\"],\"Effect\":\"Allow\",\"Resource\":\"" + bucketName + "/*\",\"Principal\":\"*\"}]}";
+                Boolean bucketPolicy = NCOSSUtil.setBucketPolicy(bucketName, policyText);
+                if (!bucketPolicy) {
+                    throw new RuntimeException("设置桶策略失败");
+                }
+            }
+            //上传对象
+            String key = "imgs/management/" + pictureName;
+            String object = NCOSSUtil.putObject(bucketName, key, picture.getInputStream());
+            if (null == object) {
+                throw new RuntimeException("上传图片失败");
+            }
+    
+            pictureName = "https://traffic.qytzt.cn/v1/AUTH_" + QianYunTongProperties.account + "/" + bucketName + "/" + key;
+//            pictureName = OssUploadUtil.ossUpload(super.getHttpServletRequest(), picture);
+    
             String result = "{'original': '" + picture.getOriginalFilename() + "', 'state': 'SUCCESS', 'url': '" + pictureName + "'}";
             if (callback == null) {
                 return result;

--
Gitblit v1.7.1