From dd4ddc2c1279157bd87c1b9e1cf6d63aa3466af4 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 06 十二月 2023 18:40:54 +0800
Subject: [PATCH] 2023年12月06日18:39:55

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java |    5 +++--
 app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java  |   16 +++++++++-------
 2 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
index fc1faff..a746b13 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
@@ -127,11 +127,12 @@
      * 鑾峰彇鍥轰欢鍗囩骇鏂囦欢鍏ㄨ矾寰�
      *
      * @param oid     璇ュ浐浠秓id
+     * @param imageId 闀滃儚id
      * @param version 椹卞姩鐗堟湰
      * @return 鍏ㄨ矾寰�
      */
-    public String getFirmwarePathFileName(String oid, String version) {
-        String fileName = oid + "_" + version + ".zip";
+    public String getFirmwarePathFileName(String oid, String imageId, String version) {
+        String fileName = oid + "_" + imageId + "_" + version + ".zip";
         return HdlFileLogic.getInstance().getFirmwareRootPath() + "/" + fileName;
     }
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
index 9158911..81460b0 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -419,15 +419,16 @@
             if (file.list() != null) {
                 for (int i = 0; i < Objects.requireNonNull(file.list()).length; i++) {
                     String path = Objects.requireNonNull(file.list())[i];
-//                    if (!path.contains(oid)) {
-//                        continue;
-//                    }
+                    if (!path.contains(osImageId)) {
+                        continue;
+                    }
                     String[] ary = path.split("/");
                     String[] driverInfoAry = ary[ary.length - 1].split("_");
                     DeviceFirmwareBean deviceFirmwareBean = new DeviceFirmwareBean();
                     deviceFirmwareBean.setOid(driverInfoAry[0]);
-                    deviceFirmwareBean.setVersion(driverInfoAry[1].replace(".zip", ""));
-                    deviceFirmwareBean.setLocalUrl(HdlFileLogic.getInstance().getFirmwarePathFileName(deviceFirmwareBean.getOid(), deviceFirmwareBean.getVersion()));
+                    deviceFirmwareBean.setImageId(driverInfoAry[1]);
+                    deviceFirmwareBean.setVersion(driverInfoAry[2].replace(".zip", ""));
+                    deviceFirmwareBean.setLocalUrl(HdlFileLogic.getInstance().getFirmwarePathFileName(deviceFirmwareBean.getOid(), osImageId, deviceFirmwareBean.getVersion()));
                     list.add(deviceFirmwareBean);
                 }
             }
@@ -452,7 +453,7 @@
         HdlOtaLogic.getInstance().getDeviceUpgradeDownloadFile(url, new CloudCallBeak<ResponseBody>() {
             @Override
             public void onSuccess(ResponseBody responseBody) {
-                String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, version);
+                String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, imageId, version);
                 boolean isBoolean = HdlOtaLogic.getInstance().disposeDownLoadFile(firmwarePathFileName, responseBody, md5, HdlOtaLogic.firmware_type);
                 if (isBoolean) {
                     HdlFileLogic.getInstance().deleteFile(localUrl);//涓嬭浇鎴愬姛,鍒犻櫎鏃у浐浠舵枃浠�;
@@ -480,6 +481,7 @@
         String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//鍥轰欢鐗堟湰id
         String version = getKeyValue("version", getKeyValue("data", data));//鍥轰欢鐗堟湰
         String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//浜戠涓婃枃浠禡D5
+        String imageId = getKeyValue("imageId", getKeyValue("data", data));//鍥轰欢闀滃儚id
 
         //鍗囩骇鏈湴浼樺厛->浜戠鍗囩骇
         boolean isLocalConnect = HdlDeviceLogic.getInstance().isLocalConnect(deviceMac);
@@ -492,7 +494,7 @@
                 @Override
                 public void onServiceConnected(ComponentName name, IBinder service) {
                     //鏈湴鍗囩骇鍥轰欢鏂囦欢璺緞
-                    String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, version);
+                    String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, imageId, version);
                     String data = HdlFileLogic.getInstance().readFile(firmwarePathFileName);
                     String md5 = HDLMD5Utils.encodeMD5(data);//缃戝叧鍥轰欢闇�瑕�
                     //鍗囩骇鍥轰欢鏂囦欢鍦板潃

--
Gitblit v1.8.0