rain
2024-07-18 76b7d06f5f8ff283279fcc8409b3c28f02cbd37c
修复图斑图片信息缺失
4 files modified
25 ■■■■■ changed files
src/main/java/com/dji/sample/media/model/MediaFileEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/media/service/IFileService.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/media/service/impl/FileServiceImpl.java 10 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/media/model/MediaFileEntity.java
@@ -78,8 +78,12 @@
    @TableField("examine")
    private Integer examine;
    @TableField("job_name")
    private String jobName;
    @TableField(value = "drone_data", typeHandler = FastjsonTypeHandler.class)
    private Object droneData;
}
src/main/java/com/dji/sample/media/service/IFileService.java
@@ -34,7 +34,7 @@
     * @param file
     * @return
     */
    Integer saveFile(String workspaceId, FileUploadDTO file);
    Integer saveFile(String workspaceId, FileUploadDTO file) throws IOException, ImageProcessingException;
    /**
     * 存储水印图片
src/main/java/com/dji/sample/media/service/impl/FileServiceImpl.java
@@ -108,10 +108,14 @@
    }
    @Override
    public Integer saveFile(String workspaceId, FileUploadDTO file) {
    public Integer saveFile(String workspaceId, FileUploadDTO file) throws IOException, ImageProcessingException {
        MediaFileEntity fileEntity = this.fileUploadConvertToEntity(file);
        fileEntity.setWorkspaceId(workspaceId);
        fileEntity.setFileId(UUID.randomUUID().toString());
        String url = pojo.getEndpoint() + "/" + pojo.getBucket() + file.getObjectKey();
        File file1 = TbFjServiceImpl.downloadFile(url);
        Object data = ImgUtil.getInfo(file1);
        fileEntity.setDroneData(data);
        return mapper.insert(fileEntity);
    }
@@ -185,7 +189,9 @@
        if (entity != null) {
            return entity.get(0).getDronedata();
        } else {
            return "该图片信息正在加载";
            List<MediaFileEntity> entitys = mapper.selectList(new LambdaQueryWrapper<MediaFileEntity>()
                    .eq(MediaFileEntity::getFileName, name));
            return entitys.get(0).getDroneData();
        }
    }
src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java
@@ -89,7 +89,7 @@
    }
    @Override
    public Integer saveMediaFile(String workspaceId, FileUploadDTO file){
    public Integer saveMediaFile(String workspaceId, FileUploadDTO file) throws IOException, ImageProcessingException {
        return fileService.saveFile(workspaceId, file);
    }
@@ -218,7 +218,7 @@
                BizCodeEnum.FILE_UPLOAD_CALLBACK.getCode(), mediaFileCount);
    }
    private Boolean parseMediaFile(FileUploadCallback callback, WaylineJobDTO job)  {
    private Boolean parseMediaFile(FileUploadCallback callback, WaylineJobDTO job) throws ImageProcessingException, IOException, FontFormatException {
        // Set the drone sn that shoots the media
        Optional<DeviceDTO> dockDTO = deviceService.getDeviceBySn(job.getDockSn());
        dockDTO.ifPresent(dock -> callback.getFile().getExt().setSn(dock.getChildDeviceSn()));
@@ -227,11 +227,8 @@
        String objectKey = callback.getFile().getObjectKey();
        callback.getFile().setPath(objectKey.substring(objectKey.indexOf("/") + 1, objectKey.lastIndexOf("/")));
        int count =fileService.saveFile(job.getWorkspaceId(), callback.getFile());
                try {
                    fileService.saveMarkFile(job.getWorkspaceId(), callback.getFile());
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
        return count > 0;
    }