From d4447ca99df2cfe978ca51790dd2891e9df0d492 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Thu, 25 Jul 2024 16:19:05 +0800
Subject: [PATCH] 修改人工拍照图片保存,新增面状航线保存、修改接口,图斑文件上传格式修改
---
src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java | 37 ++++++++++++++++++++++++++++++++++++-
1 files changed, 36 insertions(+), 1 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 96f433a..e5d31c4 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
@@ -138,7 +138,6 @@
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) {
@@ -153,6 +152,23 @@
int insertId = mapper.insert(file);
return insertId > 0 ? file.getId() : insertId;
}
+
+ public Integer updateWaylineFile(String workspaceId, String newName, String id) {
+ String objectKey = "/" + newName;
+ LambdaUpdateWrapper<WaylineFileEntity> updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(WaylineFileEntity::getWaylineId, id)
+ .eq(WaylineFileEntity::getWorkspaceId, workspaceId)
+ .set(WaylineFileEntity::getObjectKey, objectKey);
+
+ // 使用 mapper 执行更新操作
+ boolean updated = mapper.update(null, updateWrapper) > 0;
+ if (!updated) {
+ throw new RuntimeException("更新 objectKey 失败");
+ }
+
+ return updated ? 1 : 0; // 返回更新结果
+ }
+
@Override
public Integer saveWaylineFiles(String workspaceId, WaylineFileDTO metadata, String patchesId,String isTemp) {
@@ -261,6 +277,25 @@
}
return waylineFile;
}
+ @Override
+ public WaylineFileDTO importPlaneKmzFile(MultipartFile file, String workspaceId, String creator,String newName,String id) {
+ 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.updateWaylineFile(workspaceId,newName,id);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return waylineFile;
+ }
@Override
public WaylineFileEntity selectByName(String name) {
--
Gitblit v1.9.3