From a583d00d2e629b72cae74864d67168ccb5f71daa Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 28 十二月 2023 21:46:24 +0800 Subject: [PATCH] 2023年12月28日21:46:15 --- app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 41 ++++++++++++++++++++++++++--------------- 1 files changed, 26 insertions(+), 15 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 20090df..e2216c4 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 @@ -1,17 +1,20 @@ package com.hdl.photovoltaic.ui.message; +import android.content.Intent; import android.os.Bundle; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; +import com.google.gson.Gson; import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.base.CustomBaseFragment; import com.hdl.photovoltaic.config.ConstantManage; import com.hdl.photovoltaic.databinding.FragmentRecoverMessageBinding; +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.ui.adapter.MessageAdapter; @@ -30,7 +33,7 @@ private MessageAdapter messageRecoverAdapter; - private List<MessageBean> mList; + private final List<MessageBean> mList = new ArrayList<>(); @Override public Object getContentView() { @@ -40,8 +43,9 @@ @Override public void onBindView(Bundle savedInstanceState) { + //鍒濆鍖栨暟鎹� - initData(); +// initData(); //鍒濆鍖栫晫闈� initView(); //鍒濆鍖栫洃鍚櫒 @@ -49,15 +53,8 @@ } private void initData() { -// mList = new ArrayList<>(); -// for (int i = 0; i < 2; i++) { -// MessageBean messageBean = new MessageBean(); -//// messageBean.setContent("鏉ヤ簡涓�鏉″憡璀︿俊鎭�" + i); -// messageBean.setHomeName(i + ""); -//// messageBean.setTime("2023-12-06-15"); -// messageBean.setRead(false); -// mList.add(messageBean); -// } + mList.clear(); + mList.addAll(HdlMessageLogic.getInstance().getRecoverMessageMemoryList()); } private void initEvent() { @@ -66,6 +63,7 @@ viewBinding.messageRecoverSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { + mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰娑堟伅鍒楄〃 getRecoverMessageList(false); HdlLogLogic.print("RecoverMessageFragment涓嬫媺鍒锋柊", false); } @@ -73,7 +71,13 @@ messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { @Override public void onClick(int position, MessageBean item) { - + if (position < 0 || position > mList.size()) { + return; + } + Intent intent = new Intent(); + intent.putExtra("msgId", item.getMsgId().toString()); + intent.setClass(_mActivity, MessageInfoActivity.class); + startActivity(intent); } }); } @@ -100,9 +104,15 @@ super.onEventMessage(eventBus); //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { - if (eventBus.getType().equals(HdlCommonLogic.MessageFunctionTabSwitch.recover.toString())) { + if (eventBus.getType().equals(MessageFunctionTabSwitch.recover.toString())) { HdlLogLogic.print("姝e湪鐐瑰嚮銆愬凡鎭㈠銆�"); + initData(); getRecoverMessageList(true); + } + } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) { + if (eventBus.getType().equals(MessageStateType.processed)) { + initData(); + updateListData(); } } } @@ -114,11 +124,12 @@ * @param isShowLoading 鏄惁鍚姩 true鍚姩 */ private void getRecoverMessageList(boolean isShowLoading) { + if (mList.size() == 0) { if (isShowLoading) { showLoading(); } - HdlMessageLogic.getInstance().getMessageList(HdlMessageLogic.MessageStatus.processed, new CloudCallBeak<List<MessageBean>>() { + HdlMessageLogic.getInstance().getRecoverMessageList(new CloudCallBeak<List<MessageBean>>() { @Override public void onSuccess(List<MessageBean> list) { if (isShowLoading) { -- Gitblit v1.8.0