From d1ebb94e1a17b7c25d4fcf73d85345d92cc86b5c Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期二, 02 一月 2024 18:41:34 +0800
Subject: [PATCH] 2024年01月02日18:41:32

---
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java |  106 +++++++++++++++++++++++++++++++----------------------
 1 files changed, 62 insertions(+), 44 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
index 2d5e97f..e5f3378 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -2,11 +2,9 @@
 
 import android.Manifest;
 import android.content.Context;
-import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.hardware.camera2.CameraManager;
 import android.os.Bundle;
-import android.text.TextUtils;
 import android.view.View;
 
 import androidx.annotation.NonNull;
@@ -21,18 +19,15 @@
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.databinding.FragmentHouseListBinding;
 import com.hdl.photovoltaic.base.CustomBaseFragment;
+import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
 import com.hdl.photovoltaic.enums.ShowErrorMode;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
-import com.hdl.photovoltaic.other.HdlCommonLogic;
-import com.hdl.photovoltaic.other.HdlDeviceLogic;
 import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.other.HdlResidenceLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.other.HdlUniLogic;
 import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter;
 import com.hdl.photovoltaic.ui.bean.HouseIdBean;
-import com.hdl.photovoltaic.ui.bean.HouseInfoBean;
-import com.hdl.photovoltaic.ui.device.FastScanActivity;
 import com.hdl.photovoltaic.uni.HDLUniMP;
 import com.hdl.photovoltaic.utils.PermissionUtils;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
@@ -75,7 +70,17 @@
         initView();
         //鍒濆鍖栫晫闈㈢洃鍚櫒
         initEvent();
-
+//        requestPermissions(new PermissionsResultCallback() {
+//            @Override
+//            public void succeed() {
+//
+//
+//            }
+//
+//            @Override
+//            public void failing() {
+//            }
+//        });
 
     }
 
@@ -117,13 +122,12 @@
             @Override
             public void onClick(int position, HouseIdBean houseIdBean) {
                 //鐐瑰嚮浣忓畢璇︽儏
-                HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏===" + new Gson().toJson(houseIdBean), false);
+                HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏--->" + new Gson().toJson(houseIdBean), false);
                 HdlResidenceLogic.getInstance().switchHouse(houseIdBean);
                 String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS
                         + "?homeId=" + houseIdBean.getHomeId()
                         + "&homeName=" + houseIdBean.getHomeName()
-                        + "&powerStationStatus=" + houseIdBean.getPowerStationStatus()
-                        + "&serverAddress=" + AppConfigManage.getUserRegionUrl();
+                        + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
                 HdlUniLogic.getInstance().openUniMP(path, null);
 
             }
@@ -135,9 +139,11 @@
         viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setVisibility(View.VISIBLE);
         viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setImageResource(R.drawable.add);
         LinearLayoutManager linearLayout = new LinearLayoutManager(_mActivity);
-        houseInfoAdapter = new HouseInfoAdapter(this.houseListBeanIDList, _mActivity);
+        houseInfoAdapter = new HouseInfoAdapter(_mActivity);
         viewBinding.fragmentHouseSrlListRc.setLayoutManager(linearLayout);
         viewBinding.fragmentHouseSrlListRc.setAdapter(houseInfoAdapter);
+        houseInfoAdapter.setList(this.houseListBeanIDList);
+        this.nullDataUpdateUi(houseListBeanIDList);
 
 
     }
@@ -167,27 +173,28 @@
 
                 }
             } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT.equals(eventBus.getType())) {
+                //todo 鐜板湪榛樿鍒锋柊鍏ㄩ儴
                 //uin缂栬緫浣忓畢閫氱煡
-                String homeId = HdlUniLogic.getInstance().getKeyValue("homeId", eventBus.getData());
-                String home_name = HdlUniLogic.getInstance().getKeyValue("powerStationName", eventBus.getData());
-                if (TextUtils.isEmpty(homeId) || TextUtils.isEmpty(home_name)) {
-                    return;
-                }
-                int index = -1;
-                for (int i = 0; i < houseListBeanIDList.size(); i++) {
-                    HouseIdBean houseIdBean = houseListBeanIDList.get(i);
-                    if (houseIdBean.getHomeId().equals(homeId)) {
-                        index = i;
-                        houseIdBean.setHomeName(home_name);
-                        break;
-                    }
-                }
-                if (index > -1) {
-                    if (houseInfoAdapter != null) {
-                        //鏇存柊鍗曚釜鏁版嵁
-                        houseInfoAdapter.notifyItemChanged(index);
-                    }
-                }
+//                String homeId = HdlUniLogic.getInstance().getKeyValue("homeId", eventBus.getData());
+//                String home_name = HdlUniLogic.getInstance().getKeyValue("powerStationName", eventBus.getData());
+//                if (TextUtils.isEmpty(homeId) || TextUtils.isEmpty(home_name)) {
+//                    return;
+//                }
+//                int index = -1;
+//                for (int i = 0; i < houseListBeanIDList.size(); i++) {
+//                    HouseIdBean houseIdBean = houseListBeanIDList.get(i);
+//                    if (houseIdBean.getHomeId().equals(homeId)) {
+//                        index = i;
+//                        houseIdBean.setHomeName(home_name);
+//                        break;
+//                    }
+//                }
+//                if (index > -1) {
+//                    if (houseInfoAdapter != null) {
+//                        //鏇存柊鍗曚釜鏁版嵁
+//                        houseInfoAdapter.notifyItemChanged(index);
+//                    }
+//                }
 
 
             }
@@ -196,18 +203,20 @@
             if (MqttRecvClient.getInstance() != null) {
                 MqttRecvClient.getInstance().removeAllTopic();
             }
+            updateUIData(false);
+
         } else if (HDLUniMP.UNI_EVENT_REPLY_DEVICE_LIST.equals(eventBus.getType())) {
             //杩涘幓浣忓畢璇︽儏uni璇诲彇閫嗗彉鍣ㄥ垪琛ㄦ垚鍔熷悗閫氱煡
-            for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList().size(); i++) {
-                //String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList().get(i).getGatewayId();
-                //瀛楃涓叉槸鑷繁鎸夎鍒欐嫾鎺ョ殑,閲岄潰娉ㄥ唽涓婚鏃朵細瑙f瀽瀛楃涓�,鍙嬁getGatewayId()鍊�;
-                //String topic = "/user/" + gatewayId+"/1";
-                //杩涘幓浣忓畢璇︽儏寮�濮嬭闃呬富棰�
-                MqttRecvClient.getInstance().checkAndsubscribeAllTopics("");
-            }
+//            for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList().size(); i++) {
+            //String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList().get(i).getGatewayId();
+            //瀛楃涓叉槸鑷繁鎸夎鍒欐嫾鎺ョ殑,閲岄潰娉ㄥ唽涓婚鏃朵細瑙f瀽瀛楃涓�,鍙嬁getGatewayId()鍊�;
+            //String topic = "/user/" + gatewayId+"/1";
+            //杩涘幓浣忓畢璇︽儏寮�濮嬭闃呬富棰�
+            MqttRecvClient.getInstance().checkAndsubscribeAllTopics("");
+//            }
         } else if (eventBus.getTopic().equals(ConstantManage.homepage_title_tab_switch)) {
             //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢
-            if (eventBus.getType().equals(HdlCommonLogic.HomepageTitleTabSwitch.powerstation.toString())) {
+            if (eventBus.getType().equals(HomepageTitleTabSwitch.powerstation.toString())) {
                 HdlLogLogic.print("姝e湪鐐瑰嚮銆愮數绔欍��");
             }
         }
@@ -236,10 +245,10 @@
                             if (houseInfoAdapter != null) {
                                 //鏇存柊UI
                                 houseInfoAdapter.setList(list);
-                                houseInfoAdapter.notifyDataSetChanged();
                             }
 
                         }
+                        nullDataUpdateUi(list);
                     }
                 }, _mActivity, ShowErrorMode.YES);
 
@@ -269,10 +278,7 @@
 
         mPermissionsResultCallback = permissionsResultCallback;
 
-        String[] s = new String[]{
-                Manifest.permission.ACCESS_FINE_LOCATION,
-                Manifest.permission.CAMERA,
-        };
+        String[] s = new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.CAMERA,};
         String[] ary = PermissionUtils.checkPermission(_mActivity, s);
         if (ary.length > 0) {
             requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
@@ -310,4 +316,16 @@
 
     }
 
+    /**
+     * 娌℃湁鐢电珯鍒楄〃鐨勬牱寮�
+     */
+    private void nullDataUpdateUi(List<HouseIdBean> list) {
+        if (list != null && list.size() > 0) {
+            viewBinding.nullListTv.setVisibility(View.GONE);
+        } else {
+            viewBinding.nullListTv.setVisibility(View.VISIBLE);
+        }
+    }
+
+
 }

--
Gitblit v1.8.0