From fb766b5ff9f913561f76aa747c76eae5c3678589 Mon Sep 17 00:00:00 2001
From: qirong <2032486488@qq.com>
Date: 星期五, 08 十二月 2023 14:08:54 +0800
Subject: [PATCH] 三方同步

---
 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java |   49 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 36 insertions(+), 13 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java
index 9fb83c1..22d6d70 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java
@@ -8,6 +8,7 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializationFeature;
 import com.github.therapi.runtimejavadoc.repack.com.eclipsesource.json.Json;
 import org.dromara.common.core.constant.CacheNames;
 import org.dromara.common.core.domain.R;
@@ -24,6 +25,7 @@
 import org.dromara.common.oss.core.OssClient;
 import org.dromara.common.oss.entity.SynchronousRequest;
 import org.dromara.common.oss.entity.UploadResult;
+import org.dromara.common.oss.entity.VideoRequest;
 import org.dromara.common.oss.enumd.AccessPolicyType;
 import org.dromara.common.oss.factory.OssFactory;
 import org.dromara.common.satoken.utils.LoginHelper;
@@ -47,6 +49,7 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URLEncoder;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -157,6 +160,22 @@
         return buildResultEntity(originalfileName, suffix, storage.getConfigKey(), uploadResult, file);
     }
 
+    @Override
+    public SysOssVo upload3(VideoRequest request) throws IOException {
+
+        String originalfileName = request.getFileName();
+        String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
+        OssClient storage = OssFactory.instance();
+        UploadResult uploadResult;
+        try {
+            uploadResult = storage.uploadSuffix(request.getFile().getBytes(), suffix, request.getFile().getContentType());
+        } catch (IOException e) {
+            throw new ServiceException(e.getMessage());
+        }
+        // 淇濆瓨鏂囦欢淇℃伅
+        return buildResultEntity(originalfileName, suffix, storage.getConfigKey(), uploadResult, request.getFile());
+    }
+
     /**
      * 鍚屾
      * @param
@@ -164,8 +183,8 @@
      * @return
      */
     @Override
-    public SysOssVo upload2(SynchronousRequest request) {
-        String originalfileName = request.getFile().getOriginalFilename();
+    public SysOssVo upload2(SynchronousRequest request) throws ParseException {
+        String originalfileName = request.getFileName();
         String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
         OssClient storage = OssFactory.instance();
         UploadResult uploadResult;
@@ -175,8 +194,10 @@
             throw new ServiceException(e.getMessage());
         }
         // 淇濆瓨鏂囦欢淇℃伅
+        System.out.println("canshu:" + "," + originalfileName +"," + suffix +"," + storage.getConfigKey() +"," + uploadResult + "," +request.getOssId()
+         +"," + request.getPassword() +"," + request.getCreateBy() +"," + request.getFileName() +"," +  request.getCreateTime());
         return buildResultEntity2(originalfileName, suffix, storage.getConfigKey(), uploadResult,request.getOssId(),
-            request.getPassword(), request.getCreateBy(), request.getFileName());
+            request.getPassword(), "1731588854831022081", request.getFileName(), request.getCreateTime());
     }
 
 //    @Override
@@ -204,12 +225,12 @@
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         request.setFile(file);
         request.setFileName(oss.getOriginalName());
-        request.setPath(uploadResult.getFilename() + "1");
+        request.setPath(uploadResult.getFilename());
         request.setCreateTime(format.format(oss.getCreateTime()));
         request.setPassword(oss.getPassword());
-        request.setCreateBy(String.valueOf(oss.getCreateBy()));
-//        request.setOssId(String.valueOf(oss.getOssId()));
-        request.setOssId("12312312");
+        request.setCreateBy("1731588854831022081");
+        request.setOssId(String.valueOf(oss.getOssId()));
+//        request.setOssId();
 //        post(request);
 
         SysOssVo sysOssVo = MapstructUtils.convert(oss, SysOssVo.class);
@@ -231,8 +252,9 @@
     @NotNull
     private SysOssVo buildResultEntity2(String originalfileName, String suffix, String configKey,
                                         UploadResult uploadResult, String ossId, String password,
-                                         String createBy, String fileName) {
+                                         String createBy, String fileName, String createTime) throws ParseException {
         SysOss oss = new SysOss();
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         oss.setOssId(Long.valueOf(ossId));
         oss.setUrl(uploadResult.getUrl());
         oss.setFileSuffix(suffix);
@@ -242,6 +264,7 @@
         oss.setPassword(password);
         oss.setCreateTime(new Date());
         oss.setCreateBy(Long.valueOf(createBy));
+        oss.setCreateTime(format.parse(createTime));
         baseMapper.insert(oss);
         SysOssVo sysOssVo = MapstructUtils.convert(oss, SysOssVo.class);
         return this.matchingUrl(sysOssVo);
@@ -258,7 +281,7 @@
             storage.delete(sysOss.getUrl());
             if(sysOss.getPassword().equals(password) || password.equals("000000")){
                 baseMapper.deleteById(sysOss.getOssId());
-//                HttpUtils.sendDeleteRequest(boundary.getLocalhost() + "/resource/synchronization/delete",String.valueOf(sysOss.getOssId()));
+                HttpUtils.sendDeleteRequest(boundary.getVideo() + "/resource/synchronization/delete",String.valueOf(sysOss.getOssId()));
                 return true;
             }
             return false;
@@ -296,16 +319,16 @@
 
     private String post(SynchronousRequest request) throws IOException {
         HashMap<String, String> headers = new HashMap<>(3);
-        String requestUrl = boundary.getLocalhost() +  "/resource/synchronization/upload";
+        String requestUrl = boundary.getVideo() +  "/resource/synchronization/upload";
         ObjectMapper objectMapper = new ObjectMapper();
+        objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
         String jsonString = "";
         try {
             // 灏咼ava瀵硅薄杞崲涓篔SON瀛楃涓�
-//            request.setFileName(URLEncoder.encode(request.getFileName(),"utf-8"));
             jsonString = objectMapper.writeValueAsString(request);
-            System.out.println(jsonString);
+//            System.out.println(jsonString);
         } catch (Exception e) {
-            e.printStackTrace();
+//            e.printStackTrace();
         }
         headers.put("content-type", "application/json");
         // 鍙戦�乸ost璇锋眰

--
Gitblit v1.8.0