From 92027c9960c8e4e8d84db11c2c422254a5b7d38c Mon Sep 17 00:00:00 2001
From: Administrator <2863138610@qq.com>
Date: 星期二, 06 十二月 2022 16:00:03 +0800
Subject: [PATCH] 华为云obs上传

---
 src/main/java/com/qxueyou/scc/teach/res/service/impl/HweiYunOBSServiceImpl.java |   41 ++++++++++++++++++++++++++++-------------
 1 files changed, 28 insertions(+), 13 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/teach/res/service/impl/HweiYunOBSServiceImpl.java b/src/main/java/com/qxueyou/scc/teach/res/service/impl/HweiYunOBSServiceImpl.java
index 83e5ca1..7343731 100644
--- a/src/main/java/com/qxueyou/scc/teach/res/service/impl/HweiYunOBSServiceImpl.java
+++ b/src/main/java/com/qxueyou/scc/teach/res/service/impl/HweiYunOBSServiceImpl.java
@@ -1,29 +1,31 @@
 package com.qxueyou.scc.teach.res.service.impl;
- 
+
 //import com.example.study.springboot.background.service.HweiYunOBSService;
 //import com.example.study.springboot.config.HweiOBSConfig;
 import com.obs.services.ObsClient;
 import com.obs.services.exception.ObsException;
 import com.obs.services.model.*;
+import com.qxueyou.scc.base.model.FileMeta;
+import com.qxueyou.scc.base.model.Result;
 import com.qxueyou.scc.base.util.CollectionUtils;
 import com.qxueyou.scc.base.util.QFileUtils;
 import com.qxueyou.scc.base.util.UUIDUtils;
 import com.qxueyou.scc.config.HweiOBSConfig;
+import com.qxueyou.scc.teach.res.model.ResFile;
 import com.qxueyou.scc.teach.res.service.HweiYunOBSService;
+import com.qxueyou.scc.teach.res.service.IFileService;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.catalina.core.ApplicationPart;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
- 
+
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.Calendar;
-import java.util.GregorianCalendar;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @ClassName: HweiYunOBSServiceImpl
@@ -39,6 +41,9 @@
     private final Logger log = LogManager.getLogger(HweiYunOBSServiceImpl.class);
     @Autowired
     private HweiOBSConfig hweiOBSConfig;
+
+    @Autowired
+    FileService fileService;
 
     public final static String FILE_TYPE_VIDEO = "video";
 
@@ -65,7 +70,7 @@
             "JPG", FILE_TYPE_IMG,"JPEG", FILE_TYPE_IMG, "GIF", FILE_TYPE_IMG, "BMP", FILE_TYPE_IMG, "PNG", FILE_TYPE_IMG
 
     );
- 
+
     @Override
     public boolean delete(String objectKey) {
         ObsClient obsClient = null;
@@ -81,7 +86,7 @@
         }
         return true;
     }
- 
+
     @Override
     public boolean delete(List<String> objectKeys) {
         ObsClient obsClient = null;
@@ -99,10 +104,12 @@
         }
         return false;
     }
- 
+
     @Override
-    public String fileUpload(MultipartFile uploadFile, String objectKey) {
+    public List<FileMeta> fileUpload(MultipartFile uploadFile, String objectKey) {
         ObsClient obsClient = null;
+        List<FileMeta> files = new ArrayList<FileMeta>(2);
+        FileMeta fileMeta = null;
         try {
             String destPath = getDestPath(objectKey);
             String bucketName = hweiOBSConfig.getBucketName();
@@ -127,10 +134,18 @@
             // 璁剧疆瀵硅薄璁块棶鏉冮檺涓哄叕鍏辫
             request.setAcl(AccessControlList.REST_CANNED_PUBLIC_READ);
             PutObjectResult result = obsClient.putObject(request);
- 
+            fileMeta = new FileMeta();
+            ResFile file = fileService.insertFileToDBTwo(objectKey, uploadFile.getSize(), result.getObjectUrl(), uploadFile.getContentType());
+            fileMeta.setFileId(file.getFileId());
+            fileMeta.setPath(result.getObjectUrl());
+            fileMeta.setFileSize(uploadFile.getSize() / 1024 + "kb");
+            fileMeta.setFileType(uploadFile.getContentType());
+            fileMeta.setFileName(objectKey);
+            files.add(fileMeta);
             // 璇诲彇璇ュ凡涓婁紶瀵硅薄鐨刄RL
             log.info("宸蹭笂浼犲璞$殑URL" + result.getObjectUrl());
-            return result.getObjectUrl();
+            return files;
+//            return result.getObjectUrl();
         } catch (ObsException e) {
             log.error("obs涓婁紶澶辫触", e);
         } catch (IOException e) {
@@ -182,4 +197,4 @@
         }
         return null;
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.8.0