From f7d89d0364769209c7af15c97204bdae55ac7505 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 22 五月 2024 17:29:53 +0800
Subject: [PATCH] 2024年05月22日17:29:51

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java |   42 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
index 5d4748c..957b41b 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
@@ -1134,6 +1134,48 @@
     }
 
     /**
+     * 璁剧疆璁惧鐨勮繙绋嬩俊鎭�
+     *
+     * @param list          浜戠涓婄殑閫嗗彉鍣ㄥ垪琛�
+     * @param homeId        浣忓畢id
+     * @param cloudCallBeak 鍥炶皟
+     */
+    public void setDeviceRemoteInfo(List<CloudInverterDeviceBean> list, String homeId, CloudCallBeak<List<GatewayBean>> cloudCallBeak) {
+        AtomicInteger atomicInteger = new AtomicInteger(0);
+        for (int i = 0; i < list.size(); i++) {
+            CloudInverterDeviceBean cloudInverterDeviceBean = list.get(i);
+            //鑾峰彇杩滅▼璁惧閫氳淇℃伅(鎷垮埌缃戝叧ID锛宮qtt閫氳绉橀挜)
+            getDeviceRemoteInfo(homeId, cloudInverterDeviceBean.getSpk(), cloudInverterDeviceBean.getOsn(), new CloudCallBeak<DeviceRemoteInfo>() {
+                @Override
+                public void onSuccess(DeviceRemoteInfo deviceRemoteInfo) {
+                    atomicInteger.set(atomicInteger.get() + 1);
+                    //鏇存柊閫嗗彉鍣ㄦ湰鍦扮紦瀛樹俊鎭�
+                    refreshGatewayCacheData(false, cloudInverterDeviceBean, deviceRemoteInfo, homeId);
+                    //鍒版渶鍚庝竴鏉★紝鎵嶆湁鍥炶皟
+                    if (atomicInteger.get() == list.size()) {
+                        if (cloudCallBeak != null) {
+                            cloudCallBeak.onSuccess(getCurrentHomeGatewayList(homeId));
+                        }
+                    }
+                }
+
+                @Override
+                public void onFailure(HDLException e) {
+                    atomicInteger.set(atomicInteger.get() + 1);
+                    //褰撴渶鍚庝竴鏉¤姹傚け璐ヤ簡锛屾墠鏈夊洖璋�
+                    if (atomicInteger.get() == list.size()) {
+                        if (cloudCallBeak != null) {
+                            cloudCallBeak.onSuccess(getCurrentHomeGatewayList(homeId));
+                        }
+                    }
+                    HdlLogLogic.print("鑾峰彇璁惧杩滅▼閫氳淇℃伅澶辫触---msg---" + e.getMsg() + "(" + e.getCode() + ")");
+                }
+            });
+        }
+
+    }
+
+    /**
      * 閫氳繃sid鏌ヨ閫嗗彉鍣�
      *
      * @param list 浜戠涓婇�嗗彉鍣ㄥ垪琛�

--
Gitblit v1.8.0