rain
2024-06-04 bb3652e04f5a66172d0a6cd6ec2535b82e7ca2ed
修改航线查询、添加方法,图斑查询方法。
10 files modified
55 ■■■■ changed files
src/main/java/com/dji/sample/patches/controller/PatchesController.java 4 ●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/utils/TimerUtil.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/territory/utils/WaterMarkUtil.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/model/entity/WaylineFileEntity.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/service/IWaylineFileService.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/service/impl/WaylineFileServiceImpl.java 28 ●●●●● patch | view | raw | blame | history
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);
src/main/java/com/dji/sample/patches/model/Param/PatchesParam.java
@@ -23,4 +23,6 @@
    private Integer isPlan;
    private String xzqdm;
    private String bsm;
}
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()
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());
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();
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();
    }
src/main/java/com/dji/sample/wayline/model/dto/WaylineFileDTO.java
@@ -40,4 +40,6 @@
    private String username;
    private Long updateTime;
    private String patchesId;
}
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;
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);
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();
        }