From a7aaeabc7873a0eafb4a7ecad7f65b018b7a9bc9 Mon Sep 17 00:00:00 2001
From: sean.zhou <sean.zhou@dji.com>
Date: Fri, 24 Feb 2023 19:31:23 +0800
Subject: [PATCH] What's new? 1. Add license for dock. 2. Modify the logic corresponding to the firmware file and device type. 3. Add multiple mqtt clients options. 4. Modify the structure of the interface for obtaining the device list. 5. Fixed some issues.

---
 src/main/java/com/dji/sample/manage/service/IDeviceFirmwareService.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/dji/sample/manage/service/IDeviceFirmwareService.java b/src/main/java/com/dji/sample/manage/service/IDeviceFirmwareService.java
index 6e3c3b1..2d82e7b 100644
--- a/src/main/java/com/dji/sample/manage/service/IDeviceFirmwareService.java
+++ b/src/main/java/com/dji/sample/manage/service/IDeviceFirmwareService.java
@@ -1,11 +1,15 @@
 package com.dji.sample.manage.service;
 
+import com.dji.sample.common.model.PaginationData;
 import com.dji.sample.component.mqtt.model.CommonTopicReceiver;
 import com.dji.sample.manage.model.dto.DeviceFirmwareDTO;
 import com.dji.sample.manage.model.dto.DeviceFirmwareNoteDTO;
 import com.dji.sample.manage.model.dto.DeviceFirmwareUpgradeDTO;
+import com.dji.sample.manage.model.param.DeviceFirmwareQueryParam;
+import com.dji.sample.manage.model.param.DeviceFirmwareUploadParam;
 import com.dji.sample.manage.model.param.DeviceOtaCreateParam;
 import org.springframework.messaging.MessageHeaders;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 import java.util.Optional;
@@ -19,11 +23,13 @@
 
     /**
      * Query specific firmware information based on the device model and firmware version.
+     *
+     * @param workspaceId
      * @param deviceName
      * @param version
      * @return
      */
-    Optional<DeviceFirmwareDTO> getFirmware(String deviceName, String version);
+    Optional<DeviceFirmwareDTO> getFirmware(String workspaceId, String deviceName, String version);
 
     /**
      * Get the latest firmware release note for this device model.
@@ -34,10 +40,12 @@
 
     /**
      * Get the firmware information that the device needs to update.
+     *
+     * @param workspaceId
      * @param upgradeDTOS
      * @return
      */
-    List<DeviceOtaCreateParam> getDeviceOtaFirmware(List<DeviceFirmwareUpgradeDTO> upgradeDTOS);
+    List<DeviceOtaCreateParam> getDeviceOtaFirmware(String workspaceId, List<DeviceFirmwareUpgradeDTO> upgradeDTOS);
 
     /**
      * Interface to handle device firmware update progress.
@@ -45,4 +53,44 @@
      * @param headers
      */
     void handleOtaProgress(CommonTopicReceiver receiver, MessageHeaders headers);
+
+    /**
+     * Query firmware version information by page.
+     *
+     * @param workspaceId
+     * @param param
+     * @return
+     */
+    PaginationData<DeviceFirmwareDTO> getAllFirmwarePagination(String workspaceId, DeviceFirmwareQueryParam param);
+
+    /**
+     * Checks for file existence based on md5.
+     *
+     * @param workspaceId
+     * @param fileMd5
+     * @return
+     */
+    Boolean checkFileExist(String workspaceId, String fileMd5);
+
+    /**
+     * Import firmware file for device upgrades.
+     * @param workspaceId
+     * @param creator
+     * @param param
+     * @param file
+     */
+    void importFirmwareFile(String workspaceId, String creator, DeviceFirmwareUploadParam param, MultipartFile file);
+
+    /**
+     * Save the file information of the firmware.
+     * @param firmware
+     * @param deviceNames
+     */
+    void saveFirmwareInfo(DeviceFirmwareDTO firmware, List<String> deviceNames);
+
+    /**
+     * Update the file information of the firmware.
+     * @param firmware
+     */
+    void updateFirmwareInfo(DeviceFirmwareDTO firmware);
 }

--
Gitblit v1.9.3