From 159dcb5c3b04a268c20c131df4ab99c1ae12e7db Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 26 一月 2024 18:29:47 +0800
Subject: [PATCH] 2024年01月26日18:29:37

---
 app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java |  113 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 111 insertions(+), 2 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java
index b86779f..fac9a85 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java
@@ -4,12 +4,18 @@
 import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
+import android.text.TextUtils;
+import android.view.MotionEvent;
+import android.view.View;
+import android.widget.TextView;
 
 import androidx.annotation.NonNull;
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
 import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseFragment;
@@ -18,10 +24,14 @@
 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.HouseIdBean;
 import com.hdl.photovoltaic.ui.bean.MessageBean;
+import com.hdl.photovoltaic.utils.GlideUtils;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
 
 import org.greenrobot.eventbus.EventBus;
@@ -93,16 +103,28 @@
 
             }
         });
+
         viewBinding.messageNascentRecyclerview.addOnScrollListener(new RecyclerView.OnScrollListener() {
             @Override
             public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
                 super.onScrolled(recyclerView, dx, dy);
 
+//                if (dy <= 0) {
+//                    //绛変簬0鏄《閮�
+//                    return;
+//                }
+//                LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
+//                assert layoutManager != null;
+//                // 鍙湁鍨傜洿甯冨眬鎵嶄細瑙﹀彂涓婃媺浜嬩欢
+//                if (!layoutManager.canScrollVertically()) {
+//                    return;
+//                }
+//
 //                int totalItemCount = layoutManager.getItemCount();
 //                int lastVisibleItemPosition = layoutManager.findLastVisibleItemPosition();
 //
 //                if (!isLoadingMore && totalItemCount <= (lastVisibleItemPosition + visibleThreshold)) {
-//                    loadNextPage();
+////                    loadNextPage();
 //                }
             }
         });
@@ -123,6 +145,30 @@
             this.messageNascentAdapter.setList(mList);
             this.messageNascentAdapter.notifyDataSetChanged();
         }
+        //鍒锋柊銆愬彂鐢熶腑銆戜俊鎭暟閲忔�绘暟
+        this.refreshNascentCount();
+        this.nullDataUpdateUi();
+
+
+    }
+
+    /**
+     * 鍒锋柊銆愬彂鐢熶腑銆戜俊鎭暟閲忔�绘暟
+     */
+    private void refreshNascentCount() {
+        HdlThreadLogic.runMainThread(new Runnable() {
+            @Override
+            public void run() {
+                TextView textView = _mActivity.findViewById(R.id.message_tab_nascent_title_tv);
+                if (textView != null) {
+                    textView.setText(getText(R.string.message_nascent));
+                    if (mList.size() > 0) {
+                        String s = getText(R.string.message_nascent) + "(" + mList.size() + ")";
+                        textView.setText(s);
+                    }
+                }
+            }
+        });
     }
 
     @Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
@@ -136,8 +182,10 @@
             if (eventBus.getType().equals(MessageFunctionTabSwitch.nascent.toString())) {
                 initData();
                 getNascentMessageList(true);
+                getUnreadCount();
                 // 鍙栨秷绮樻�т簨浠�
                 EventBus.getDefault().removeStickyEvent(eventBus);
+
             }
 
         } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) {
@@ -145,6 +193,7 @@
                 //娑堟伅璇︽儏鍥炶皟
                 initData();
                 updateListData();
+                getUnreadCount();
             }
         }
     }
@@ -152,7 +201,7 @@
     /**
      * 鑾峰彇鍙戠敓涓殑娑堟伅鍒楄〃
      *
-     * @param isShowLoading 鏄惁鍚姩 true鍚姩
+     * @param isShowLoading 鏄惁鍚姩鍔犺浇妗� true鍚姩
      */
     private void getNascentMessageList(boolean isShowLoading) {
         if (mList.size() == 0) {
@@ -212,4 +261,64 @@
 //        List<MessageBean> newData = HdlMessageLogic.getInstance().getAllMessageList();
 //        return newData;
 //    }
+
+    /**
+     * 璇诲彇娑堟伅銆愭湭璇绘暟閲忋��
+     */
+    private void getUnreadCount() {
+        HdlMessageLogic.getInstance().getMessageUntreatedCount(new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String data) {
+
+                HdlThreadLogic.runMainThread(new Runnable() {
+                    @Override
+                    public void run() {
+                        JSONObject jsonObject = JSON.parseObject(data);
+//                        if (jsonObject.containsKey("untreatedCount")) {
+//                            //鏈鐞嗘暟閲�
+//                            jsonObject.getString("untreatedCount");
+//                        }
+                        String unreadCount = "0";
+                        if (jsonObject.containsKey("unreadCount")) {
+                            //鏈鏁伴噺
+                            unreadCount = jsonObject.getString("unreadCount");
+                        }
+                        TextView textView = _mActivity.findViewById(R.id.my_message_bottom_il2).findViewById(R.id.red_count_tv);
+                        if (textView != null) {
+                            if (TextUtils.isEmpty(unreadCount) || unreadCount.equals("0")) {
+                                textView.setVisibility(View.GONE);
+                            } else {
+                                if (unreadCount.length() > 2) {
+                                    //澶т簬3浣嶆暟,榛樿99+
+                                    unreadCount = "99+";
+                                }
+                                textView.setVisibility(View.VISIBLE);
+                                textView.setText(unreadCount);
+                            }
+                        }
+                    }
+                });
+
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                TextView textView = _mActivity.findViewById(R.id.my_message_bottom_il2).findViewById(R.id.red_count_tv);
+                if (textView != null) {
+                    textView.setVisibility(View.GONE);
+                }
+            }
+        });
+    }
+
+
+    /**
+     * 娌℃湁鐢电珯鍒楄〃鐨勬牱寮�
+     */
+    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