zhaowenyu
2026-02-12 e18802f171fb12246a8bad5a699c55c630a6d2e3
ard-sample/src/main/java/com/ard/sample/media/service/impl/MediaServiceImpl.java
@@ -116,6 +116,7 @@
    @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_FILE_UPLOAD_CALLBACK, outputChannel = ChannelName.OUTBOUND)
    public void handleFileUploadCallBack(CommonTopicReceiver receiver) {
        FileUploadCallback callback = objectMapper.convertValue(receiver.getData(), FileUploadCallback.class);
        log.info("媒体库回调-原始报文内容:{}",receiver);
        log.info("媒体库调试-收到文件上传回调:{}",callback);
        String topic = TopicConst.THING_MODEL_PRE + TopicConst.PRODUCT + receiver.getGateway()
                + TopicConst.EVENTS_SUF + TopicConst._REPLY_SUF;
@@ -214,9 +215,10 @@
        // 设置拍摄媒体的无人机
        Optional<DeviceDTO> dockDTO = deviceService.getDeviceBySn(job.getDockSn());
        dockDTO.ifPresent(dock -> callback.getFile().getExt().setSn(dock.getChildDeviceSn()));
        dockDTO.ifPresent(dock -> callback.getFile().getExt().setPayloadModelKey(dockDTO.get().getDomain()+"-"+dockDTO.get().getType()+"-"+dockDTO.get().getSubType()));
        // 设定路径
        String objectKey = callback.getFile().getObjectKey();
        String objectKey = callback.getFile().getObjectKey()!= null ? callback.getFile().getObjectKey() : "";
        callback.getFile().setPath(objectKey.substring(objectKey.indexOf("/") + 1, objectKey.lastIndexOf("/")));
        log.info("保存媒体库数据:{}",callback);
        return fileService.saveFile(callback.getFile()) > 0;