rain
2024-06-03 28f661933ffdeb1f65ecee52f8f4b7a3b373da9b
src/main/java/com/dji/sample/media/service/impl/FileServiceImpl.java
@@ -15,9 +15,11 @@
import com.dji.sample.media.dao.IMarkMapper;
import com.dji.sample.media.model.*;
import com.dji.sample.media.service.IFileService;
import com.dji.sample.media.util.ImgUtil;
import com.dji.sample.territory.service.impl.TbFjServiceImpl;
import com.dji.sample.territory.utils.VideoZipUtil;
import com.dji.sample.territory.utils.WaterMarkUtil;
import com.drew.imaging.ImageProcessingException;
import io.minio.MinioClient;
import io.minio.PutObjectArgs;
import org.springframework.beans.factory.annotation.Autowired;
@@ -82,7 +84,7 @@
        return mapper.insert(fileEntity);
    }
    public Integer saveMarkFile(String workspaceId, FileUploadDTO file) throws IOException, FontFormatException {
    public Integer saveMarkFile(String workspaceId, FileUploadDTO file) throws IOException, FontFormatException, ImageProcessingException {
        File file2 = null;
        MediaFileMarkEntity mediaFileMarkEntity = this.fileUploadConvertToMarkEntity(file);
        String url = "http://dev.jxpskj.com:9000/cloud-bucket" + file.getObjectKey();
@@ -92,9 +94,9 @@
        if (!endsWith) {
            file2 = new File(WaterMarkUtil.addWatermark(file1, timestamp, file.getMetadata().getShootPosition().getLat(),
                    file.getMetadata().getShootPosition().getLng(), file.getMetadata().getGimbalYawDegree()).toURI());
        } else {
            file2 = VideoZipUtil.compressVideo(file1, 1600000, 128000, 1280, 720);
        }
        Object data = ImgUtil.getInfo(file1);
        mediaFileMarkEntity.setDronedata(data);
        mediaFileMarkEntity.setWorkspaceId(workspaceId);
        mediaFileMarkEntity.setFileId(UUID.randomUUID().toString());
        mediaFileMarkEntity.setObjectKey("/mark" + file.getPath() + "/" + file.getName());
@@ -110,6 +112,13 @@
    }
    @Override
    public Object mediaInfo(String fileId) {
        MediaFileMarkEntity entity = markMapper.selectOne(new LambdaQueryWrapper<MediaFileMarkEntity>()
                .eq(MediaFileMarkEntity::getFileId, fileId));
        return entity.getDronedata();
    }
    @Override
    public List<MediaFileDTO> getAllFilesByWorkspaceId(String workspaceId) {
        return mapper.selectList(new LambdaQueryWrapper<MediaFileEntity>()
                        .eq(MediaFileEntity::getWorkspaceId, workspaceId))