From 1c22df6f9f652b00fb64f523f1e2ee717fb4cc68 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 14 十二月 2023 18:02:58 +0800 Subject: [PATCH] 2023年12月14日18:02:49 --- app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 80 +++++++++++++++++++++++++++++++++++---- 1 files changed, 71 insertions(+), 9 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 0df63af..20090df 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 @@ -3,12 +3,17 @@ import android.os.Bundle; import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; +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.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; import com.hdl.photovoltaic.ui.bean.MessageBean; import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus; @@ -26,6 +31,7 @@ private MessageAdapter messageRecoverAdapter; private List<MessageBean> mList; + @Override public Object getContentView() { viewBinding = FragmentRecoverMessageBinding.inflate(getLayoutInflater()); @@ -43,18 +49,27 @@ } 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 = 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); +// } } private void initEvent() { + //璁剧疆涓嬫媺绠ご棰滆壊 + viewBinding.messageRecoverSrl.setColorSchemeResources(R.color.text_FF245EC3); + viewBinding.messageRecoverSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { + @Override + public void onRefresh() { + getRecoverMessageList(false); + HdlLogLogic.print("RecoverMessageFragment涓嬫媺鍒锋柊", false); + } + }); messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { @Override public void onClick(int position, MessageBean item) { @@ -69,11 +84,17 @@ viewBinding.messageRecoverRecyclerview.setAdapter(messageRecoverAdapter); } + + /** + * 鍒锋柊鍒楄〃鏁版嵁 + */ private void updateListData() { if (this.messageRecoverAdapter != null) { + this.messageRecoverAdapter.setList(mList); this.messageRecoverAdapter.notifyDataSetChanged(); } } + @Override public void onEventMessage(BaseEventBus eventBus) { super.onEventMessage(eventBus); @@ -81,7 +102,48 @@ if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { if (eventBus.getType().equals(HdlCommonLogic.MessageFunctionTabSwitch.recover.toString())) { HdlLogLogic.print("姝e湪鐐瑰嚮銆愬凡鎭㈠銆�"); + getRecoverMessageList(true); } } } + + + /** + * 鑾峰彇鎭㈠涓殑娑堟伅鍒楄〃 + * + * @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>>() { + @Override + public void onSuccess(List<MessageBean> list) { + if (isShowLoading) { + hideLoading(); + } + if (!isShowLoading) { + viewBinding.messageRecoverSrl.setRefreshing(false); + } + + if (list != null && list.size() != 0) { + mList.addAll(list); + updateListData(); + } + } + + @Override + public void onFailure(HDLException e) { + if (isShowLoading) { + hideLoading(); + } + if (!isShowLoading) { + viewBinding.messageRecoverSrl.setRefreshing(false); + } + } + }); + } + } } -- Gitblit v1.8.0