package com.dji.sample.logs.service.impl; import com.dji.sample.logs.model.FileuploadStartParam; import com.dji.sample.logs.service.LogService; import com.dji.sdk.cloudapi.log.FileUploadStartRequest; import com.dji.sdk.cloudapi.log.api.AbstractLogService; import com.dji.sdk.common.HttpResultResponse; import com.dji.sdk.common.SDKManager; import com.dji.sdk.mqtt.services.ServicesReplyData; import com.dji.sdk.mqtt.services.TopicServicesResponse; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Service; /** * @author wmm * @version 0.1 * @date 2024/5/8 */ @Service @Slf4j public class LogServiceImpl implements LogService { @Autowired @Qualifier("SDKLogService") private AbstractLogService abstractLogService; @Autowired private ObjectMapper mapper; @Override public HttpResultResponse fileuploadStart(String sn, FileuploadStartParam param) { TopicServicesResponse response = abstractLogService.fileuploadStart(SDKManager.getDeviceSDK(sn),mapper.convertValue(param, FileUploadStartRequest.class)); ServicesReplyData reply = response.getData(); return reply.getResult().isSuccess() ? HttpResultResponse.success() : HttpResultResponse.error("The fileupload failed to start. " + reply.getResult()); } }