From bb3652e04f5a66172d0a6cd6ec2535b82e7ca2ed Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Tue, 04 Jun 2024 17:19:51 +0800
Subject: [PATCH] 修改航线查询、添加方法,图斑查询方法。
---
src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java | 2 ++
src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java | 6 ++++--
src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java | 3 +++
src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java | 2 ++
src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java | 2 ++
src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java | 28 ++++++++++++++++++++++++++--
src/main/java/com/dji/sample/patches/utils/TimerUtil.java | 2 +-
src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java | 2 +-
src/main/java/com/dji/sample/patches/controller/PatchesController.java | 4 +++-
src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java | 4 ++--
10 files changed, 46 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/dji/sample/patches/controller/PatchesController.java b/src/main/java/com/dji/sample/patches/controller/PatchesController.java
index 3c842bf..bd2103f 100644
--- a/src/main/java/com/dji/sample/patches/controller/PatchesController.java
+++ b/src/main/java/com/dji/sample/patches/controller/PatchesController.java
@@ -57,7 +57,8 @@
@RequestParam String workspaceId,
@RequestParam(name = "dkbh", defaultValue = "") String dkbh,
@RequestParam(name = "isPlan", required = false) Integer isPlan,
- @RequestParam(name = "xzqdm", defaultValue = "") String xzqdm
+ @RequestParam(name = "xzqdm", defaultValue = "") String xzqdm,
+ @RequestParam(name="bsm",defaultValue = "")String bsm
) {
//调用service分页查询
PatchesParam param = PatchesParam.builder()
@@ -67,6 +68,7 @@
.dkbh(dkbh)
.isPlan(isPlan)
.xzqdm(xzqdm)
+ .bsm(bsm)
.build();
PaginationData<LotInfo> data = getPatchesService.limitGet(param);
return ResponseResult.success(data);
diff --git a/src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java b/src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java
index 1569cbb..87cbe35 100644
--- a/src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java
+++ b/src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java
@@ -23,4 +23,6 @@
private Integer isPlan;
private String xzqdm;
+
+ private String bsm;
}
diff --git a/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java b/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
index 43b72b6..37d9b60 100644
--- a/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
+++ b/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
@@ -38,6 +38,7 @@
.eq(LotInfo::getWorkspaceId, param.getWorkspaceId())
.like(LotInfo::getDkbh, param.getDkbh())
.like(LotInfo::getXzqdm, param.getXzqdm())
+ .like(LotInfo::getBsm,param.getBsm())
.eq(LotInfo::getIsPlan, param.getIsPlan()));
List<LotInfo> records = page.getRecords()
.stream()
@@ -48,6 +49,7 @@
new LambdaQueryWrapper<LotInfo>()
.eq(LotInfo::getWorkspaceId, param.getWorkspaceId())
.like(LotInfo::getDkbh, param.getDkbh())
+ .like(LotInfo::getBsm,param.getBsm())
.like(LotInfo::getXzqdm, param.getXzqdm()));
List<LotInfo> records = page.getRecords()
.stream()
diff --git a/src/main/java/com/dji/sample/patches/utils/TimerUtil.java b/src/main/java/com/dji/sample/patches/utils/TimerUtil.java
index 424089e..7336a30 100644
--- a/src/main/java/com/dji/sample/patches/utils/TimerUtil.java
+++ b/src/main/java/com/dji/sample/patches/utils/TimerUtil.java
@@ -181,7 +181,7 @@
* @return
*/
public String backWayline(MultipartFile multipartFile, String waylineName, String workspaceId, String username) {
- waylineFileService.importKmzFile(multipartFile, workspaceId, username);
+ waylineFileService.importKmzFileBack(multipartFile, workspaceId, username);
WaylineFileEntity entity = waylineFileService.selectByName(waylineName);
try {
waylineFileService.getObjectUrl(workspaceId, entity.getWaylineId());
diff --git a/src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java b/src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java
index ffed172..6e971b3 100644
--- a/src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java
+++ b/src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java
@@ -64,7 +64,7 @@
g2d.setComposite(alphaComposite);
String extraInfo = String.format("Lon:%.7f Lat:%.7f\n%s %s", lng, lat, angel, sd);
- File fontFile = new File("src/main/java/com/dji/sample/territory/utils/MiSans-Normal.ttf"); // 替换为你的字体文件路径
+ File fontFile = new File("/usr/share/fonts/MiSans-Normal.ttf"); // 替换为你的字体文件路径
Font customFont = Font.createFont(Font.TRUETYPE_FONT, fontFile).deriveFont(36.00F);
// 注册字体
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
diff --git a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
index 35c12e6..79f037e 100644
--- a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
+++ b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
@@ -195,13 +195,15 @@
*/
@PostMapping("/{workspace_id}/waylines/file/upload")
@SysLogAnnotation(operModul = "航线库", operType = "上传", operDesc = "上传kmz航线文件")
- public ResponseResult importKmzFile(@PathVariable(name = "workspace_id") String workspaceId,HttpServletRequest request, MultipartFile file) {
+ public ResponseResult importKmzFile(@PathVariable(name = "workspace_id") String workspaceId,
+ HttpServletRequest request, MultipartFile file,
+ @RequestParam String patchesId) {
if (Objects.isNull(file)) {
return ResponseResult.error("未上传文件");
}
CustomClaim customClaim = (CustomClaim)request.getAttribute(TOKEN_CLAIM);
String creator = customClaim.getUsername();
- waylineFileService.importKmzFile(file, workspaceId, creator);
+ waylineFileService.importKmzFile(file, workspaceId, creator,patchesId);
return ResponseResult.success();
}
diff --git a/src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java b/src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java
index 8e6282a..288c9c0 100644
--- a/src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java
+++ b/src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java
@@ -40,4 +40,6 @@
private String username;
private Long updateTime;
+
+ private String patchesId;
}
diff --git a/src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java b/src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java
index 27be0bf..c8467f2 100644
--- a/src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java
+++ b/src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java
@@ -53,6 +53,9 @@
@TableField("user_name")
private String username;
+ @TableField("patches_id")
+ private String patchesId;
+
@TableField(value = "create_time", fill = FieldFill.INSERT)
private Long createTime;
diff --git a/src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java b/src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java
index 13a3a5b..325d566 100644
--- a/src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java
+++ b/src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java
@@ -50,7 +50,7 @@
* @return
*/
Integer saveWaylineFile(String workspaceId, WaylineFileDTO metadata);
-
+ Integer saveWaylineFiles(String workspaceId, WaylineFileDTO metadata,String patchesId);
/**
* Updates whether the file is collected or not based on the passed parameters.
* @param workspaceId
@@ -82,7 +82,7 @@
* @param creator
* @return
*/
- void importKmzFile(MultipartFile file, String workspaceId, String creator);
+ void importKmzFile(MultipartFile file, String workspaceId, String creator,String patchesId);
WaylineFileDTO importKmzFileBack (MultipartFile file, String workspaceId, String creator);
WaylineFileEntity selectByName(String name);
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 449316f..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
@@ -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,7 +197,7 @@
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();
}
@@ -287,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(","))
@@ -321,6 +344,7 @@
.collect(Collectors.joining(",")))
.favorited(file.getFavorited())
.sign(file.getSign())
+ .patchesId(file.getPatchesId())
.build();
}
--
Gitblit v1.9.3