From 8d9a2d656e4ae007590c622e5f7c228adacdca49 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Fri, 14 Jun 2024 10:11:36 +0800
Subject: [PATCH] 统一风格
---
src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java | 62 +++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java b/src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java
index bbeee6f..60e8331 100644
--- a/src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java
+++ b/src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java
@@ -9,6 +9,7 @@
import com.dji.sample.component.oss.model.OssConfiguration;
import com.dji.sample.component.oss.service.impl.OssServiceContext;
import com.dji.sample.manage.model.enums.DeviceDomainEnum;
+import com.dji.sample.summarize.model.entity.FlyInfo;
import com.dji.sample.wayline.dao.IWaylineFileMapper;
import com.dji.sample.wayline.model.dto.KmzFileProperties;
import com.dji.sample.wayline.model.dto.WaylineFileDTO;
@@ -28,7 +29,6 @@
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
-import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
@@ -122,6 +122,28 @@
}
@Override
+ public Integer saveWaylineFiles(String workspaceId, WaylineFileDTO metadata, String patchesId) {
+ metadata.setPatchesId(patchesId);
+ WaylineFileEntity file = this.dtoConvertToEntity(metadata);
+ file.setWaylineId(UUID.randomUUID().toString());
+ file.setWorkspaceId(workspaceId);
+
+ if (!StringUtils.hasText(file.getSign())) {
+ try (InputStream object = ossService.getObject(OssConfiguration.bucket, metadata.getObjectKey())) {
+ if (object.available() == 0) {
+ throw new RuntimeException("文件" + metadata.getObjectKey() +
+ " 在空间中不存在[" + OssConfiguration.bucket + "].");
+ }
+ file.setSign(DigestUtils.md5DigestAsHex(object));
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ int insertId = mapper.insert(file);
+ return insertId > 0 ? file.getId() : insertId;
+ }
+
+ @Override
public Boolean markFavorite(String workspaceId, List<String> waylineIds, Boolean isFavorite) {
if (waylineIds.isEmpty()) {
return false;
@@ -163,7 +185,7 @@
}
@Override
- public void importKmzFile(MultipartFile file, String workspaceId, String creator) {
+ public void importKmzFile(MultipartFile file, String workspaceId, String creator,String patchesId) {
Optional<WaylineFileDTO> waylineFileOpt = validKmzFile(file);
if (waylineFileOpt.isEmpty()) {
throw new RuntimeException("文件格式错误");
@@ -175,10 +197,37 @@
waylineFile.setUsername(creator);
ossService.putObject(OssConfiguration.bucket, waylineFile.getObjectKey(), file.getInputStream());
- this.saveWaylineFile(workspaceId, waylineFile);
+ this.saveWaylineFiles(workspaceId, waylineFile,patchesId);
} catch (IOException e) {
e.printStackTrace();
}
+ }
+
+ @Override
+ public WaylineFileDTO importKmzFileBack(MultipartFile file, String workspaceId, String creator) {
+ WaylineFileDTO waylineFile=null;
+ Optional<WaylineFileDTO> waylineFileOpt = validKmzFile(file);
+ if (waylineFileOpt.isEmpty()) {
+ throw new RuntimeException("文件格式错误");
+ }
+
+ try {
+ waylineFile = waylineFileOpt.get();
+ waylineFile.setWaylineId(workspaceId);
+ waylineFile.setUsername(creator);
+
+ ossService.putObject(OssConfiguration.bucket, waylineFile.getObjectKey(), file.getInputStream());
+ this.saveWaylineFile(workspaceId, waylineFile);
+
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return waylineFile;
+ }
+
+ @Override
+ public WaylineFileEntity selectByName(String name) {
+ return mapper.selectOne(new LambdaQueryWrapper<WaylineFileEntity>().eq(WaylineFileEntity::getName,name));
}
@Override
@@ -260,6 +309,7 @@
.droneModelKey(entity.getDroneModelKey())
.favorited(entity.getFavorited())
.name(entity.getName())
+ .patchesId(entity.getPatchesId())
.payloadModelKeys(entity.getPayloadModelKeys() != null ?
Arrays.asList(entity.getPayloadModelKeys().split(",")) : null)
.templateTypes(Arrays.stream(entity.getTemplateTypes().split(","))
@@ -294,9 +344,15 @@
.collect(Collectors.joining(",")))
.favorited(file.getFavorited())
.sign(file.getSign())
+ .patchesId(file.getPatchesId())
.build();
}
return builder.build();
}
+ @Override
+ public int updateWayline(WaylineFileEntity entity) {
+ return mapper.update(entity,new LambdaQueryWrapper<WaylineFileEntity>()
+ .eq(WaylineFileEntity::getWaylineId,entity.getWaylineId()));
+ }
}
--
Gitblit v1.9.3