From 8814f3f0828e6ac652a29cc9de9f971fd55bca5b Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 14:54:42 +0800
Subject: [PATCH] 2025年05月07日14:54:39

---
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java |   56 ++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 34 insertions(+), 22 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
index f1fe445..d5a58ef 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
@@ -8,6 +8,8 @@
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.provider.Settings;
+import android.text.TextUtils;
+import android.util.Log;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
@@ -126,7 +128,7 @@
 
     @Override
     public void onBindView(Bundle savedInstanceState) {
-        getStatusOverview();
+//        getStatusOverview();
         initData();
         //鍒濆鍖�
         initView();
@@ -171,7 +173,7 @@
                     return;
                 }
                 powerStationStatusValue = PowerStationStatus.All;
-                stationStatusStyle(viewBinding.allLl,viewBinding.allDesTv);
+                stationStatusStyle(viewBinding.allLl, viewBinding.allDesTv);
                 getStatusOverview();
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             }
@@ -184,7 +186,7 @@
                     return;
                 }
                 powerStationStatusValue = PowerStationStatus.malfunction;
-                stationStatusStyle(viewBinding.faultsLl,viewBinding.faultsDesTv);
+                stationStatusStyle(viewBinding.faultsLl, viewBinding.faultsDesTv);
                 getStatusOverview();
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             }
@@ -197,7 +199,7 @@
                     return;
                 }
                 powerStationStatusValue = PowerStationStatus.off;
-                stationStatusStyle(viewBinding.offlineLl,viewBinding.offlineDesTv);
+                stationStatusStyle(viewBinding.offlineLl, viewBinding.offlineDesTv);
                 getStatusOverview();
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             }
@@ -210,7 +212,7 @@
                     return;
                 }
                 powerStationStatusValue = PowerStationStatus.connecting;
-                stationStatusStyle(viewBinding.connectedLl,viewBinding.connectedDesTv);
+                stationStatusStyle(viewBinding.connectedLl, viewBinding.connectedDesTv);
                 getStatusOverview();
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             }
@@ -435,7 +437,17 @@
                 HdlDeviceLogic.getInstance().setDeviceRemoteInfo(newList, deviceBean.getHomeId(), new CloudCallBeak<List<GatewayBean>>() {
                     @Override
                     public void onSuccess(List<GatewayBean> obj) {
+
                         GatewayBean newGatewayBean = HDLLinkLocalGateway.getInstance().getLocalGateway(deviceBean.getOsn());
+                        if (newGatewayBean == null) {
+                            HdlThreadLogic.toast(_mActivity, getString(R.string.device_off));
+                            return;
+                        }
+                        if (TextUtils.isEmpty(newGatewayBean.getGatewayId()) || TextUtils.isEmpty(newGatewayBean.getAesKey())) {
+                            //杩欓噷鍙敮鎸佽繙绋嬭皟璇曪紝杩滅▼鎷夸笉鍒癿qtt閫氳绉橀挜浠ュ強gatewayId锛�
+                            HdlThreadLogic.toast(_mActivity, getString(R.string.Device_failed_to_certificate) + "(124004)");
+                            return;
+                        }
                         String jsonEncryption = URLEncodingUtils.encodeURIComponent(new Gson().toJson(newGatewayBean));
                         String path = HDLUniMP.UNI_EVENT_OPEN_DEVICE_DETAILS + "?inverterInfo=" + jsonEncryption;
                         HdlUniLogic.getInstance().openUniMP(path, null);
@@ -507,7 +519,7 @@
         viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);
         viewBinding.deviceLabelParent.setVisibility(View.GONE);
 
-        stationStatusStyle(viewBinding.allLl,viewBinding.allDesTv);
+        stationStatusStyle(viewBinding.allLl, viewBinding.allDesTv);
         //鐢电珯鏍囩
         houseInfoAdapter = new HouseInfoAdapter(_mActivity);
         viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity));
@@ -640,8 +652,8 @@
             }
             String homeId = eventBus.getData().toString();
             //杩涘幓浣忓畢璇︽儏uni璇诲彇閫嗗彉鍣ㄥ垪琛ㄦ垚鍔熷悗閫氱煡
-            for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId).size(); i++) {
-                String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId).get(i).getGatewayId();
+            for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId, null).size(); i++) {
+                String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId, null).get(i).getGatewayId();
                 //瀛楃涓叉槸鑷繁鎸夎鍒欐嫾鎺ョ殑,閲岄潰娉ㄥ唽涓婚鏃朵細瑙f瀽瀛楃涓�,鍙嬁getGatewayId()鍊�;
                 String topic = "/user/" + gatewayId + "/#";
                 //杩涘幓浣忓畢璇︽儏寮�濮嬭闃呬富棰�
@@ -667,27 +679,27 @@
                 isClickPowerStationLabel = true;
                 selectedTitleLabelStyle();
                 initializationState();
+                stationStatusStyle(viewBinding.allLl, viewBinding.allDesTv);
                 getStatusOverview();
                 loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             } else if (eventBus.getType().equals(ConstantManage.station_page)) {
+                // 鍙栨秷绮樻�т簨浠�
+                EventBus.getDefault().removeStickyEvent(eventBus);
+                isClickPowerStationLabel = true;
+                selectedTitleLabelStyle();
+                powerStationStatusValue = eventBus.getData() == null ? "" : eventBus.getData().toString();
                 //閫氳繃棣栭〉鐢电珯杩涙潵鐨�
                 if (eventBus.getData().equals(PowerStationStatus.All)) {
-                    isClickPowerStationLabel = true;
-                    selectedTitleLabelStyle();
-                    viewBinding.allLl.performClick();
+                    stationStatusStyle(viewBinding.allLl, viewBinding.allDesTv);
                 } else if (eventBus.getData().equals(PowerStationStatus.malfunction)) {
-                    isClickPowerStationLabel = true;
-                    selectedTitleLabelStyle();
-                    viewBinding.faultsLl.performClick();
+                    stationStatusStyle(viewBinding.faultsLl, viewBinding.faultsDesTv);
                 } else if (eventBus.getData().equals(PowerStationStatus.off)) {
-                    isClickPowerStationLabel = true;
-                    selectedTitleLabelStyle();
-                    viewBinding.offlineLl.performClick();
+                    stationStatusStyle(viewBinding.offlineLl, viewBinding.offlineDesTv);
                 } else if (eventBus.getData().equals(PowerStationStatus.connecting)) {
-                    isClickPowerStationLabel = true;
-                    selectedTitleLabelStyle();
-                    viewBinding.connectedLl.performClick();
+                    stationStatusStyle(viewBinding.connectedLl, viewBinding.connectedDesTv);
                 }
+                getStatusOverview();
+                loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
             } else if (eventBus.getType().equals(ConstantManage.station_edit)) {
                 //缂栬緫鍚庢洿鏂颁竴涓嬩綇瀹呭垪琛�
                 //loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
@@ -1078,7 +1090,7 @@
                         // 鎵ц浠诲姟锛堝鏇存柊UI銆佽烦杞瓑锛�
                         viewBinding.fragmentHouseSrl.endRefreshing();
                         //鍔犺浇鏈�鏂版暟鎹畬鎴�
-                        loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
+                        loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
                         getStatusOverview();
                     }
                 }.execute();
@@ -1141,7 +1153,7 @@
                     @Override
                     protected void onPostExecute(Void aVoid) {
                         viewBinding.fragmentDeviceSrl.endRefreshing();
-                        loadNextPageDeviceList(true, 1, true);
+                        loadNextPageDeviceList(false, 1, true);
                     }
                 }.execute();
             }

--
Gitblit v1.8.0