FengChaoYu 4 hónapja
szülő
commit
a0c9d19795

+ 9 - 5
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/workorder/ChangeOrderLogic.java

@@ -312,10 +312,14 @@ public class ChangeOrderLogic {
 //               1000, 0.90f, 720, 960);
 
         // 上传原图阿里云
-        String ossOrgObjectKey = ossUtil.getFilePath()+"/gather/org/" + fileOrgName;
-        log.info("打水印上传原图阿里云开始 {}", DateUtil.formatDateTime(DateUtil.date()));
-        ossUtil.uploadFile(ossOrgObjectKey, file);
-        log.info("打水印上传原图阿里云结束 {}", DateUtil.formatDateTime(DateUtil.date()));
+//        String ossOrgObjectKey = ossUtil.getFilePath()+"/gather/org/" + fileOrgName;
+//        log.info("打水印复制原图阿里云开始 {}", DateUtil.formatDateTime(DateUtil.date()));
+//        final String pathKeyName = ossUtil.getPathKeyName(patch);
+//        ossUtil.copySameBucketObject(pathKeyName, ossOrgObjectKey);
+//        ossUtil.uploadFile(ossOrgObjectKey, file);
+//        log.info("打水印复制原图阿里云结束 {}", DateUtil.formatDateTime(DateUtil.date()));
+
+        String ossOrgObjectKey = ossUtil.getPathKeyName(patch);
 
         String style = "image/auto-orient,1/resize,m_lfit,w_720/quality,q_100";
 
@@ -344,7 +348,7 @@ public class ChangeOrderLogic {
             FileUtil.del(path + "/tmp/image/watermark/" + fileOrgName);
         }
 
-        return ossUtil.getAccessUrl()+ossObjectKey;
+        return ossUtil.getAccessUrl2()+ossObjectKey;
     }
 
 

+ 23 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/utils/oss/OSSUtil.java

@@ -4,6 +4,7 @@ import com.aliyun.oss.OSS;
 import com.aliyun.oss.OSSClientBuilder;
 import com.aliyun.oss.common.utils.BinaryUtil;
 import com.aliyun.oss.model.*;
+import com.gree.mall.miniapp.exception.RemoteServiceException;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
@@ -196,4 +197,26 @@ public class OSSUtil {
         client.getObject(getObjectRequest, new File(savePath));
         return true;
     }
+
+    public void copySameBucketObject(String sourceKey, String destinationKey) {
+        OSS client = new OSSClientBuilder().build(OSS_ENDPOINT_WW, ACCESS_KEY_ID, ACCESS_KEY_SECERT);
+        try {
+            // 拷贝文件。
+            CopyObjectResult result = client.copyObject(OSS_BUCKET_NAME, sourceKey, OSS_BUCKET_NAME, destinationKey);
+        } catch (Exception e) {
+            throw new RemoteServiceException("OSS复制对象失败");
+        } finally {
+            if (client != null) {
+                client.shutdown();
+            }
+        }
+    }
+
+    public String getPathKeyName(String path) {
+        String keyName = path.replace(this.getAccessUrl(), "");
+        if (keyName.contains(this.getAccessUrl2())) {
+            keyName = path.replace(this.getAccessUrl2(), "");
+        }
+        return keyName;
+    }
 }