From 96f2b56c103c53b17cf946d2c733d4cb03d2f39d Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期一, 29 一月 2024 15:16:28 +0800
Subject: [PATCH] 2024年01月29日15:16:23

---
 app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java |   83 +++++++++++++++++++++++++++++++++++------
 1 files changed, 70 insertions(+), 13 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java
index e2216c4..ec05cd8 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java
@@ -2,6 +2,7 @@
 
 import android.content.Intent;
 import android.os.Bundle;
+import android.widget.TextView;
 
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
@@ -15,11 +16,18 @@
 import com.hdl.photovoltaic.enums.MessageFunctionTabSwitch;
 import com.hdl.photovoltaic.enums.MessageStateType;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
+import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.other.HdlMessageLogic;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.ui.adapter.MessageAdapter;
+import com.hdl.photovoltaic.ui.bean.BUserInfo;
 import com.hdl.photovoltaic.ui.bean.MessageBean;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -64,8 +72,8 @@
             @Override
             public void onRefresh() {
                 mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰娑堟伅鍒楄〃
+                updateListData();//娓呯┖涔嬪墠缂撳瓨,鍥犱负閬囧埌涓�涓棶棰樼寷鎷夌殑鏃跺�欐姤閿�;
                 getRecoverMessageList(false);
-                HdlLogLogic.print("RecoverMessageFragment涓嬫媺鍒锋柊", false);
             }
         });
         messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() {
@@ -97,22 +105,33 @@
             this.messageRecoverAdapter.setList(mList);
             this.messageRecoverAdapter.notifyDataSetChanged();
         }
+
+        //鍒锋柊銆愬凡鎭㈠銆戜俊鎭暟閲忔�绘暟
+        this.refreshRecoverCount();
+        this.nullDataUpdateUi();
     }
 
-    @Override
+
+    @Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
     public void onEventMessage(BaseEventBus eventBus) {
         super.onEventMessage(eventBus);
+        if (eventBus == null) {
+            return;
+        }
         //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢
         if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) {
             if (eventBus.getType().equals(MessageFunctionTabSwitch.recover.toString())) {
-                HdlLogLogic.print("姝e湪鐐瑰嚮銆愬凡鎭㈠銆�");
                 initData();
                 getRecoverMessageList(true);
+                // 鍙栨秷绮樻�т簨浠�
+                EventBus.getDefault().removeStickyEvent(eventBus);
             }
         } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) {
             if (eventBus.getType().equals(MessageStateType.processed)) {
+                //娑堟伅璇︽儏鍥炶皟
                 initData();
                 updateListData();
+
             }
         }
     }
@@ -132,17 +151,24 @@
             HdlMessageLogic.getInstance().getRecoverMessageList(new CloudCallBeak<List<MessageBean>>() {
                 @Override
                 public void onSuccess(List<MessageBean> list) {
-                    if (isShowLoading) {
-                        hideLoading();
-                    }
-                    if (!isShowLoading) {
-                        viewBinding.messageRecoverSrl.setRefreshing(false);
-                    }
+                    HdlThreadLogic.runMainThread(new Runnable() {
+                        @Override
+                        public void run() {
+                            if (isShowLoading) {
+                                hideLoading();
+                            }
+                            if (!isShowLoading) {
+                                viewBinding.messageRecoverSrl.setRefreshing(false);
+                            }
 
-                    if (list != null && list.size() != 0) {
-                        mList.addAll(list);
-                        updateListData();
-                    }
+                            if (list != null && list.size() != 0) {
+                                mList.addAll(list);
+                                updateListData();
+                            } else {
+                                nullDataUpdateUi();
+                            }
+                        }
+                    });
                 }
 
                 @Override
@@ -157,4 +183,35 @@
             });
         }
     }
+
+    /**
+     * 鍒锋柊銆愬凡鎭㈠銆戜俊鎭暟閲忔�绘暟
+     */
+    private void refreshRecoverCount() {
+        HdlThreadLogic.runMainThread(new Runnable() {
+            @Override
+            public void run() {
+                TextView textView = _mActivity.findViewById(R.id.message_tab_recover_title_tv);
+                if (textView != null) {
+                    textView.setText(getText(R.string.message_recover));
+                    if (mList.size() > 0) {
+                        String s = getText(R.string.message_recover) + "(" + mList.size() + ")";
+                        textView.setText(s);
+                    }
+                }
+
+            }
+        });
+    }
+
+    /**
+     * 娌℃湁鐢电珯鍒楄〃鐨勬牱寮�
+     */
+    private void nullDataUpdateUi() {
+        HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity,
+                viewBinding.nullDataIc.getRoot(),
+                viewBinding.nullDataIc.nullDataGifAnimationIv,
+                viewBinding.nullDataIc.nullDataTv, getString(R.string.message_alarm_data_null), mList.size() > 0);
+    }
+
 }

--
Gitblit v1.8.0