From b2f2aa54cb9d0618da32e42ebdd610f8ebaac4b3 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 12 十二月 2025 18:26:43 +0800
Subject: [PATCH] 驱动文件路径追加镜像Id

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java |    7 ++++---
 app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java  |   15 ++++++++-------
 2 files changed, 12 insertions(+), 10 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 89cb56d..ad46375 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
@@ -155,11 +155,12 @@
      * 鑾峰彇椹卞姩鍗囩骇銆愭枃浠躲�戝叏璺緞
      *
      * @param driverCode 椹卞姩缂栫爜
-     * @param version    椹卞姩鐗堟湰
+     * @param imageId 闀滃儚id
+     * @param version 椹卞姩鐗堟湰
      * @return 鍏ㄨ矾寰�
      */
-    public String getDrivePathFileName(String driverCode, String version) {
-        String fileName = driverCode + "_" + version + ".zip";
+    public String getDrivePathFileName(String driverCode,String imageId,  String version) {
+        String fileName = driverCode  + "_"+ imageId+ "_" + version + ".zip";
         return HdlFileLogic.getInstance().getDriveRootPath() + "/" + 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 f4d3c15..059e728 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -1863,7 +1863,7 @@
     private void uniGetLocalDrivers(String type, Object data, DCUniMPJSCallback callback) {
         try {
             String driveCode = getKeyValue("driveCode", getKeyValue("data", data));//椹卞姩缂栧彿鎴栭┍鍔ㄥ悕绉�
-//            String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//椹卞姩绫诲瀷id
+            String imageId = getKeyValue("imageId", getKeyValue("data", data));//椹卞姩闀滃儚Id
 //            String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩绫诲瀷id
             List<GatewayDriverBean> list = new ArrayList<>();
             String driverFileList = HdlFileLogic.getInstance().getDriveRootPath();
@@ -1871,14 +1871,15 @@
             if (file.list() != null) {
                 for (int i = 0; i < Objects.requireNonNull(file.list()).length; i++) {
                     String fileName = Objects.requireNonNull(file.list())[i];
-                    if (!fileName.contains(driveCode)) {
+                    if (!fileName.contains(driveCode + "_" + imageId)) {
                         continue;
                     }
                     String[] driverInfoAry = fileName.split("_");
                     GatewayDriverBean gatewayDriverBean = new GatewayDriverBean();
                     gatewayDriverBean.setDriverCode(driverInfoAry[0]);
-                    gatewayDriverBean.setVersion(driverInfoAry[1].replace(".zip", ""));
-                    gatewayDriverBean.setLocalUrl(HdlFileLogic.getInstance().getDrivePathFileName(gatewayDriverBean.getDriverCode(), gatewayDriverBean.getVersion()));
+                    gatewayDriverBean.setImageId(driverInfoAry[1]);
+                    gatewayDriverBean.setVersion(driverInfoAry[2].replace(".zip", ""));
+                    gatewayDriverBean.setLocalUrl(HdlFileLogic.getInstance().getDrivePathFileName(gatewayDriverBean.getDriverCode(),gatewayDriverBean.getImageId(), gatewayDriverBean.getVersion()));
                     list.add(gatewayDriverBean);
                 }
             }
@@ -1898,7 +1899,7 @@
 
 //        String deviceOid = getKeyValue("oid", getKeyValue("data", data));//閫嗗彉鍣ㄨ澶噊id
         String driverCode = getKeyValue("driverCode", getKeyValue("data", data));//椹卞姩缂栫爜
-//        String imageId = getKeyValue("imageId", getKeyValue("data", data));//椹卞姩闀滃儚id
+        String imageId = getKeyValue("imageId", getKeyValue("data", data));//椹卞姩闀滃儚id
         String version = getKeyValue("version", getKeyValue("data", data));//椹卞姩鐗堟湰
 //        String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩鐗堟湰id
         String localUrl = getKeyValue("localUrl", getKeyValue("data", data));//鍌ㄥ瓨鍦ㄦ湰鍦伴┍鍔ㄦ枃浠惰矾寰�
@@ -1911,7 +1912,7 @@
                     @Override
                     public void run() {
 
-                        String drivePathFileName = HdlFileLogic.getInstance().getDrivePathFileName(driverCode, version);
+                        String drivePathFileName = HdlFileLogic.getInstance().getDrivePathFileName(driverCode,imageId, version);
                         //涓嶅湪瀛愮嚎绋嬭娴佷細鍗℃涓荤嚎绋�
                         boolean isBoolean = HdlOtaLogic.getInstance().disposeDownLoadFile(drivePathFileName, responseBody, md5, HdlOtaLogic.driver_type);
                         if (isBoolean) {
@@ -1963,7 +1964,7 @@
                         @Override
                         public void onServiceConnected(ComponentName name, IBinder service) {
                             //鏈湴鍗囩骇椹卞姩鏂囦欢璺緞
-                            String drivePathFileName = HdlFileLogic.getInstance().getDrivePathFileName(driverCode, version);
+                            String drivePathFileName = HdlFileLogic.getInstance().getDrivePathFileName(driverCode,imageId, version);
                             byte[] data = HdlFileLogic.getInstance().readFileByte(drivePathFileName);
                             if (data == null || data.length == 0) {
                                 uniCallbackData(type, null, -2, HDLApp.getInstance().getAppLocaleContext().getString(R.string.found_locally_drive_file), callback);

--
Gitblit v1.8.0