From c48f6e1e7f7fc4ca3db8ecadf441d6da942ceb8f Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期五, 22 十二月 2023 18:05:13 +0800 Subject: [PATCH] 2023年12月22日18:05:07 --- app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java | 137 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 110 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java index cd113b8..31951e4 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java @@ -3,13 +3,20 @@ 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.UserConfigManage; +import com.hdl.photovoltaic.config.ConstantManage; import com.hdl.photovoltaic.databinding.FragmentMessageAllBinding; -import com.hdl.photovoltaic.ui.adapter.LanguageAdapter; +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; import java.util.ArrayList; import java.util.List; @@ -21,9 +28,9 @@ private FragmentMessageAllBinding viewBinding; - private MessageAdapter messageAdapter; + private MessageAdapter messageAllAdapter; - private List<MessageBean> mList; + private final List<MessageBean> mList = new ArrayList<>(); @Override public Object getContentView() { @@ -33,41 +40,117 @@ @Override public void onBindView(Bundle savedInstanceState) { + //鍒濆鍖栨暟鎹� + initData(); //鍒濆鍖栫晫闈� initView(); //鍒濆鍖栫洃鍚櫒 initEvent(); - //鍒濆鍖栨暟鎹� - initData(); } private void initData() { - mList = new ArrayList<>(); - for (int i = 0; i < 5; i++) { - MessageBean messageBean = new MessageBean(); - messageBean.setContent("鏉ヤ簡涓�鏉″憡璀︿俊鎭�" + i); - messageBean.setHomeName(UserConfigManage.getInstance().getHomeName()); - messageBean.setTime("2023-12-06-15"); - messageBean.setRead(false); - if (i == 2 || i == 4) { - messageBean.setRead(true); +// mList.clear(); +// for (int i = 0; i < 5; 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.messageAllSrl.setColorSchemeResources(R.color.text_FF245EC3); + viewBinding.messageAllSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { + @Override + public void onRefresh() { + mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰娑堟伅鍒楄〃 + getAllMessageList(false); + HdlLogLogic.print("AllMessageFragment涓嬫媺鍒锋柊", false); + } + }); + if (messageAllAdapter != null) { + messageAllAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { + @Override + public void onClick(int position, MessageBean item) { + + } + }); + } + + + } + + private void initView() { + viewBinding.messageAllRecyclerview.setLayoutManager(new LinearLayoutManager(_mActivity)); + messageAllAdapter = new MessageAdapter(this.mList, _mActivity); + viewBinding.messageAllRecyclerview.setAdapter(messageAllAdapter); + } + + /** + * 鍒锋柊鍒楄〃鏁版嵁 + */ + private void updateListData() { + if (this.messageAllAdapter != null) { + this.messageAllAdapter.setList(mList); + this.messageAllAdapter.notifyDataSetChanged(); + } + } + + @Override + public void onEventMessage(BaseEventBus eventBus) { + super.onEventMessage(eventBus); + //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 + if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { + if (eventBus.getType().equals(HdlCommonLogic.MessageFunctionTabSwitch.all.toString())) { + getAllMessageList(true); + HdlLogLogic.print("姝e湪鐐瑰嚮銆愬叏閮ㄣ��"); } } } - private void initEvent() { - messageAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { - @Override - public void onClick(int position, MessageBean item) { - + /** + * 鑾峰彇鍏ㄩ儴涓殑娑堟伅鍒楄〃 + * + * @param isShowLoading 鏄惁鍚姩 true鍚姩 + */ + private void getAllMessageList(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.messageAllSrl.setRefreshing(false); + } + + if (list != null && list.size() != 0) { + mList.addAll(list); + updateListData(); + } + } + + @Override + public void onFailure(HDLException e) { + if (isShowLoading) { + hideLoading(); + } + if (!isShowLoading) { + viewBinding.messageAllSrl.setRefreshing(false); + } + } + }); + } } - private void initView() { - LinearLayoutManager linearLayout = new LinearLayoutManager(_mActivity); - messageAdapter = new MessageAdapter(this.mList, _mActivity); - viewBinding.messageAllRecyclerview.setLayoutManager(linearLayout); - viewBinding.messageAllRecyclerview.setAdapter(messageAdapter); - } + } -- Gitblit v1.8.0