From ecaff4ffd05c630ac32e49daf3b9b8904052b0fe Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期五, 29 十二月 2023 15:16:07 +0800 Subject: [PATCH] 备份一下 --- app/src/main/java/com/hdl/photovoltaic/ui/message/AllMessageFragment.java | 54 ++++++++++------- app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java | 14 ++-- app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java | 10 +++ app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java | 9 ++ app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 36 +++++++----- app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java | 9 ++- app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java | 6 -- 7 files changed, 83 insertions(+), 55 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java index f78b194..70f0b18 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java @@ -75,7 +75,7 @@ return newList; } - public List<MessageBean> getListMessage() { + public List<MessageBean> getAllMessageList() { return mListMessage; } @@ -207,8 +207,11 @@ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { @Override public void onSuccess(String jsonStr) { - if (cloudCallBeak != null) { - cloudCallBeak.onSuccess(new ArrayList<>()); + if (TextUtils.isEmpty(jsonStr)) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(new ArrayList<>()); + } + return; } Gson gson = new Gson(); MessageListClass messageListClass = gson.fromJson(jsonStr, MessageListClass.class); 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 8e6431a..09d24c5 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 @@ -17,9 +17,14 @@ 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.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; @@ -52,15 +57,8 @@ } private void initData() { -// 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); -// } + mList.clear(); + mList.addAll(HdlMessageLogic.getInstance().getAllMessageList()); } @@ -111,14 +109,22 @@ } } - @Override + @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void onEventMessage(BaseEventBus eventBus) { super.onEventMessage(eventBus); //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { if (eventBus.getType().equals(MessageFunctionTabSwitch.all.toString())) { + initData(); getAllMessageList(true); - HdlLogLogic.print("姝e湪鐐瑰嚮銆愬叏閮ㄣ��"); + // 鍙栨秷绮樻�т簨浠� + EventBus.getDefault().removeStickyEvent(eventBus); + } + } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) { + if (eventBus.getType().equals(MessageStateType.all)) { + //娑堟伅璇︽儏鍥炶皟 +// initData(); +// updateListData(); } } } @@ -137,18 +143,22 @@ @Override public void onSuccess(List<MessageBean> list) { + HdlThreadLogic.runMainThread(new Runnable() { + @Override + public void run() { + if (isShowLoading) { + hideLoading(); + } + if (!isShowLoading) { + viewBinding.messageAllSrl.setRefreshing(false); + } - if (isShowLoading) { - hideLoading(); - } - if (!isShowLoading) { - viewBinding.messageAllSrl.setRefreshing(false); - } - - if (list != null && list.size() != 0) { - mList.addAll(list); - updateListData(); - } + if (list != null && list.size() != 0) { + mList.addAll(list); + updateListData(); + } + } + }); } @Override diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java index ff6ccf9..aa13d48 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java @@ -67,6 +67,7 @@ currentIndex = 0; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.nascent); } }); @@ -77,6 +78,7 @@ currentIndex = 1; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.recover); } }); @@ -88,6 +90,7 @@ currentIndex = 2; initView(); showFragment(); + postEventBus(MessageFunctionTabSwitch.all); } }); } @@ -116,6 +119,7 @@ viewBinding.line2V.setVisibility(View.GONE); viewBinding.line3V.setVisibility(View.VISIBLE); } + } private void initData() { @@ -130,7 +134,8 @@ BaseEventBus baseEventBus = new BaseEventBus(); baseEventBus.setTopic(ConstantManage.message_function_tab_switch); baseEventBus.setType(tabSwitch.toString()); - EventBus.getDefault().post(baseEventBus); + //鍙戦�佺矘鎬т簨浠�(濡傛灉涓嶅彂绮樻�т簨浠朵細閬囧埌涓�涓病鏈夊姞杞藉嚭鏉ョ殑纰庣墖鎺ユ敹涓嶅埌淇℃伅) + EventBus.getDefault().postSticky(baseEventBus); } @@ -183,13 +188,6 @@ //鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵 currentFragment = fragmentList.get(currentIndex); - if (this.currentIndex == 0) { - postEventBus(MessageFunctionTabSwitch.nascent); - } else if (this.currentIndex == 1) { - postEventBus(MessageFunctionTabSwitch.recover); - } else if (this.currentIndex == 2) { - postEventBus(MessageFunctionTabSwitch.all); - } } diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java index 9dfa792..b17d003 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java @@ -133,6 +133,16 @@ viewBinding.messageInfoBackTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + //鎭㈠杩涙潵鍙槸鏌ョ湅鐨� + if (mMessageBean.getStatus().equals(MessageStateType.untreated)) { + mMessageBean.setRead(true); + mMessageBean.setStatus(MessageStateType.untreated); + HdlMessageLogic.getInstance().setListMessage(mMessageBean); + BaseEventBus baseEventBus = new BaseEventBus(); + baseEventBus.setTopic(ConstantManage.message_function_push_post); + baseEventBus.setType(MessageStateType.untreated); + EventBus.getDefault().post(baseEventBus); + } finish(); } }); 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 1bf65a5..1568045 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 @@ -21,6 +21,10 @@ 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; @@ -97,7 +101,7 @@ } } - @Override + @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void onEventMessage(BaseEventBus eventBus) { super.onEventMessage(eventBus); //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 @@ -105,10 +109,13 @@ if (eventBus.getType().equals(MessageFunctionTabSwitch.nascent.toString())) { initData(); getNascentMessageList(true); + // 鍙栨秷绮樻�т簨浠� + EventBus.getDefault().removeStickyEvent(eventBus); } } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) { if (eventBus.getType().equals(MessageStateType.untreated)) { + //娑堟伅璇︽儏鍥炶皟 initData(); updateListData(); } 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 a9af873..00bded9 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 @@ -17,11 +17,13 @@ import com.hdl.photovoltaic.listener.CloudCallBeak; 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; @@ -70,7 +72,6 @@ mList.clear();//琛ㄧず寮哄埗閲嶆柊璇锋眰娑堟伅鍒楄〃 updateListData();//娓呯┖涔嬪墠缂撳瓨,鍥犱负閬囧埌涓�涓棶棰樼寷鎷夌殑鏃跺�欐姤閿�; getRecoverMessageList(false); - HdlLogLogic.print("RecoverMessageFragment涓嬫媺鍒锋柊", false); } }); messageRecoverAdapter.setNoOnclickListener(new MessageAdapter.OnclickListener() { @@ -104,25 +105,25 @@ } } - @Override + @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void onEventMessage(BaseEventBus eventBus) { super.onEventMessage(eventBus); //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 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(); } } } - - /** @@ -139,17 +140,22 @@ 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(); + } + } + }); } @Override diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java index 0cc5896..8f7ee04 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java @@ -2,11 +2,9 @@ import android.Manifest; import android.content.Context; -import android.content.Intent; import android.content.pm.PackageManager; import android.hardware.camera2.CameraManager; import android.os.Bundle; -import android.text.TextUtils; import android.view.View; import androidx.annotation.NonNull; @@ -24,16 +22,12 @@ import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; import com.hdl.photovoltaic.enums.ShowErrorMode; import com.hdl.photovoltaic.listener.CloudCallBeak; -import com.hdl.photovoltaic.other.HdlCommonLogic; -import com.hdl.photovoltaic.other.HdlDeviceLogic; import com.hdl.photovoltaic.other.HdlLogLogic; import com.hdl.photovoltaic.other.HdlResidenceLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.other.HdlUniLogic; import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter; import com.hdl.photovoltaic.ui.bean.HouseIdBean; -import com.hdl.photovoltaic.ui.bean.HouseInfoBean; -import com.hdl.photovoltaic.ui.device.FastScanActivity; import com.hdl.photovoltaic.uni.HDLUniMP; import com.hdl.photovoltaic.utils.PermissionUtils; import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus; -- Gitblit v1.8.0