From ac2873bd37eeb496b0e9dd62d66e9fc4b38ef39b Mon Sep 17 00:00:00 2001
From: qirong <2032486488@qq.com>
Date: 星期五, 22 十二月 2023 13:38:26 +0800
Subject: [PATCH] ftp摆渡

---
 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssServiceImpl.java |   82 ++++++++++++++++++++++++++++++----------
 1 files changed, 61 insertions(+), 21 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 a27c86a..345b542 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,7 +8,10 @@
 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.apache.commons.io.IOUtils;
+import org.apache.xmlbeans.impl.common.IOUtil;
 import org.dromara.common.core.constant.CacheNames;
 import org.dromara.common.core.domain.R;
 import org.dromara.common.core.domain.model.LoginUser;
@@ -24,6 +27,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;
@@ -43,9 +47,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
 import java.net.URLEncoder;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -158,15 +160,57 @@
         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
      * @param
      * @return
      */
     @Override
     public SysOssVo upload2(SynchronousRequest request) throws ParseException {
-        String originalfileName = request.getFile().getOriginalFilename();
+        String originalfileName = request.getFileName();
+        String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
+        OssClient storage = OssFactory.instance();
+//        String type = request.getFileName().substring(14,request.getFileName().length());
+        String type = request.getFile().getContentType();
+        UploadResult uploadResult;
+        try {
+            uploadResult = storage.uploadSuffix2(request.getFile().getBytes(), request.getPath(), type);
+        } catch (IOException e) {
+            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(), "1731588854831022081", request.getFileName(), request.getCreateTime());
+    }
+
+    /**
+     * 鍚屾 瀹氭椂鎷夊彇
+     * @param
+     * @param
+     * @return
+     */
+    @Override
+    public SysOssVo upload3(SynchronousRequest request) throws ParseException {
+        String originalfileName = request.getFileName();
         String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
         OssClient storage = OssFactory.instance();
         UploadResult uploadResult;
@@ -176,8 +220,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.getCreateTime());
+            request.getPassword(), "1731588854831022081", request.getFileName(), request.getCreateTime());
     }
 
 //    @Override
@@ -205,12 +251,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("123890");
         post(request);
 
         SysOssVo sysOssVo = MapstructUtils.convert(oss, SysOssVo.class);
@@ -261,13 +307,15 @@
             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;
         }
         return true;
     }
+
+
 
     @Override
     public R viewPasswordById(Long ossId) {
@@ -299,17 +347,9 @@
 
     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();
-        String jsonString = "";
-        try {
-            // 灏咼ava瀵硅薄杞崲涓篔SON瀛楃涓�
-//            request.setFileName(URLEncoder.encode(request.getFileName(),"utf-8"));
-            jsonString = objectMapper.writeValueAsString(request);
-            System.out.println(jsonString);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+        objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
         headers.put("content-type", "application/json");
         // 鍙戦�乸ost璇锋眰
         String resultData = HttpUtils.sendPostRequest(requestUrl, request);

--
Gitblit v1.8.0