吉安感知网项目-后端
linwei
6 days ago aba829f97bc8c0c7828727676edf4a2c2bd0b282
drone-ops/drone-resource/src/main/java/org/sxkj/resource/feign/AttachClient.java
@@ -26,6 +26,7 @@
import org.sxkj.resource.vo.AttachTypeStatisticsVO;
import org.sxkj.resource.vo.AttachVO;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
@@ -121,15 +122,21 @@
   }
   @Override
   public BladeFile saveAttachFile(MultipartFile file, String fileName) throws IOException {
      BladeFile bladeFile = ossBuilder.template().putFile(pojo.getBucket(),fileName, file.getInputStream());
      // 步骤1: 将文件转换为字节数组,避免流重置异常
      byte[] bytes = file.getBytes();
      // 步骤2: 使用字节数组输入流上传文件
      BladeFile bladeFile = ossBuilder.template().putFile(pojo.getBucket(),fileName, new ByteArrayInputStream(bytes));
      Long attachId = buildAttach(fileName, file.getSize(), bladeFile, null);
      bladeFile.setAttachId(attachId);
      return bladeFile;
   }
   @Override
   public BladeFile saveAttachFile(MultipartFile file, String fileName, String type) throws IOException {
      BladeFile bladeFile = ossBuilder.template().putFile(pojo.getBucket(),fileName, file.getInputStream());
   public BladeFile saveAttachFile(MultipartFile file, String fileName, List<List<String>> type) throws IOException {
      // 步骤1: 将文件转换为字节数组,避免流重置异常
      byte[] bytes = file.getBytes();
      // 步骤2: 使用字节数组输入流上传文件
      BladeFile bladeFile = ossBuilder.template().putFile(pojo.getBucket(),fileName, new ByteArrayInputStream(bytes));
      Long attachId = buildAttach(fileName, file.getSize(), bladeFile, type);
      bladeFile.setAttachId(attachId);
      return bladeFile;
@@ -144,11 +151,14 @@
    */
   @Override
   public BladeFile putFile(MultipartFile file, String fileName) throws IOException {
      BladeFile bladeFile = ossBuilder.template().putFile(fileName, file.getInputStream());
      // 步骤1: 将文件转换为字节数组,避免流重置异常
      byte[] bytes = file.getBytes();
      // 步骤2: 使用字节数组输入流上传文件
      BladeFile bladeFile = ossBuilder.template().putFile(fileName, new ByteArrayInputStream(bytes));
      return bladeFile;
   }
   private Long buildAttach(String fileName, Long fileSize, BladeFile bladeFile, String type) {
   private Long buildAttach(String fileName, Long fileSize, BladeFile bladeFile, List<List<String>> type) {
      String fileExtension = FileUtil.getFileExtension(fileName);
      Attach attach = new Attach();
      attach.setDomainUrl(bladeFile.getDomain());
@@ -235,7 +245,7 @@
         saveAttachFile(new MockMultipartFile( mediaFile.getName(),
            mediaFile.getName(),
            "application/octet-stream",
            new FileInputStream(mediaFile)), name, Attach.RESULT_TYPE_VEDIO_SHOW);
            new FileInputStream(mediaFile)), name, null);
         log.info("第{}个视频保存入库完成...", (i + 1));
      }