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/AllMessageFragment.java | 6 + app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java | 41 +++++++++ app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java | 2 app/src/main/java/com/hdl/photovoltaic/enums/MessageStateType.java | 5 app/src/main/java/com/hdl/photovoltaic/ui/message/NascentMessageFragment.java | 20 +++- app/src/main/java/com/hdl/photovoltaic/ui/message/RecoverMessageFragment.java | 24 +++-- app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java | 7 + app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java | 4 + app/src/main/java/com/hdl/photovoltaic/ui/bean/MessageBean.java | 2 app/src/main/java/com/hdl/photovoltaic/enums/MessageAlarmStateType.java | 19 ++++ app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java | 96 +++++++++++++---------- 11 files changed, 157 insertions(+), 69 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java index 222e572..add6714 100644 --- a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java +++ b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java @@ -16,6 +16,8 @@ //all public static final String message_function_tab_switch = "message_function_tab_switch"; + //娑堟伅璀﹀憡瑙e喅鎴栬�呮湭瑙e喅 + public static final String message_function_push_post = "message_function_push"; public static final String homepage_title_tab_switch = "homepage_title_tab_switch"; //缃戠粶鐘舵�佸彂鐢熷彉鍖� public static final String network_change_post = "network_change"; diff --git a/app/src/main/java/com/hdl/photovoltaic/enums/MessageAlarmStateType.java b/app/src/main/java/com/hdl/photovoltaic/enums/MessageAlarmStateType.java new file mode 100644 index 0000000..67c28f2 --- /dev/null +++ b/app/src/main/java/com/hdl/photovoltaic/enums/MessageAlarmStateType.java @@ -0,0 +1,19 @@ +package com.hdl.photovoltaic.enums; + +import static java.lang.annotation.RetentionPolicy.SOURCE; + +import androidx.annotation.StringDef; + +import java.lang.annotation.Retention; + + +@Retention(SOURCE) +@StringDef({MessageAlarmStateType.fault, MessageAlarmStateType.warn, MessageAlarmStateType.event}) +public @interface MessageAlarmStateType { + //鏁呴殰 + String fault = "FAULT"; + //鍛婅 + String warn = "WARN"; + //浜嬩欢 + String event = "EVENT"; +} diff --git a/app/src/main/java/com/hdl/photovoltaic/enums/MessageStateType.java b/app/src/main/java/com/hdl/photovoltaic/enums/MessageStateType.java index ec76cf0..2ba489c 100644 --- a/app/src/main/java/com/hdl/photovoltaic/enums/MessageStateType.java +++ b/app/src/main/java/com/hdl/photovoltaic/enums/MessageStateType.java @@ -4,18 +4,17 @@ import androidx.annotation.StringDef; -import com.hdl.sdk.link.gateway.type.GatewayMasterType; import java.lang.annotation.Retention; @Retention(SOURCE) -@StringDef({MessageStateType.untreated, MessageStateType.processed}) +@StringDef({MessageStateType.untreated, MessageStateType.processed, MessageStateType.all}) public @interface MessageStateType { //鏈鐞� String untreated = "UNTREATED"; //宸插鐞� String processed = "PROCESSED"; - //宸插鐞� + //鍏ㄩ儴 String all = "ALL"; 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 93f1665..f78b194 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java @@ -41,7 +41,7 @@ /** * 鑾峰彇鍙戠敓涓紦瀛樺垪琛� */ - public List<MessageBean> getRecoverMessageMemoryList() { + public List<MessageBean> getNascentMessageMemoryList() { if (this.mListMessage == null || this.mListMessage.size() == 0) { return new ArrayList<>(); } @@ -57,9 +57,9 @@ } /** - * 鑾峰彇澶勭悊涓紦瀛樺垪琛� + * 鑾峰彇鎭㈠涓紦瀛樺垪琛� */ - public List<MessageBean> getNascentMessageMemoryList() { + public List<MessageBean> getRecoverMessageMemoryList() { if (this.mListMessage == null || this.mListMessage.size() == 0) { return new ArrayList<>(); } @@ -67,6 +67,7 @@ for (int i = 0; i < mListMessage.size(); i++) { MessageBean messageBean = mListMessage.get(i); if (messageBean.getStatus().equals(MessageStateType.processed)) { + messageBean.setRead(true);//榛樿宸茶 newList.add(messageBean); } @@ -78,6 +79,11 @@ return mListMessage; } + /** + * 娣诲姞娑堟伅鍒板垪琛ㄩ噷闈� + * + * @param list - + */ public void setListMessage(List<MessageBean> list) { try { if (list == null || list.size() == 0) { @@ -87,23 +93,37 @@ this.mListMessage.addAll(list); return; } - List<MessageBean> newList = new ArrayList<>(); for (int i = 0; i < list.size(); i++) { - MessageBean messageBean = list.get(i); - boolean if_boolean = false; - for (int j = 0; j < mListMessage.size(); j++) { - if (mListMessage.get(j).toString().equals(messageBean.getMsgId().toString())) { - mListMessage.remove(j); - mListMessage.add(j, messageBean); - if_boolean = true; - break; - } - } - if (!if_boolean) { - newList.add(messageBean); + this.setListMessage(list.get(i)); + } + } catch (Exception ignored) { + } + } + + /** + * 娣诲姞娑堟伅鍒板垪琛ㄩ噷闈� + * + * @param messageBean - + */ + public void setListMessage(MessageBean messageBean) { + try { + if (messageBean == null) { + return; + } + boolean if_boolean = false; + for (int i = 0; i < mListMessage.size(); i++) { + if (mListMessage.get(i).getMsgId().toString().equals(messageBean.getMsgId().toString())) { + //瀛樺湪鏇挎崲 + mListMessage.remove(i); + mListMessage.add(i, messageBean); + if_boolean = true; + break; } } - this.mListMessage.addAll(newList); + if (!if_boolean) { + //娌℃湁娣诲姞 + this.mListMessage.add(messageBean); + } } catch (Exception ignored) { } } @@ -146,7 +166,16 @@ * @param cloudCallBeak - */ public void getAllMessageList(CloudCallBeak<List<MessageBean>> cloudCallBeak) { - getMessageList(MessageStatus.all, cloudCallBeak); + getMessageList(MessageStateType.all, cloudCallBeak); + } + + /** + * 鑾峰彇鎭㈠涓垪琛� + * + * @param cloudCallBeak - + */ + public void getRecoverMessageList(CloudCallBeak<List<MessageBean>> cloudCallBeak) { + getMessageList(MessageStateType.processed, cloudCallBeak); } /** @@ -154,33 +183,22 @@ * * @param cloudCallBeak - */ - public void getRecoverMessageList(CloudCallBeak<List<MessageBean>> cloudCallBeak) { - getMessageList(MessageStatus.untreated, cloudCallBeak); - } - - /** - * 鑾峰彇澶勭悊涓垪琛� - * - * @param cloudCallBeak - - */ public void getNascentMessageList(CloudCallBeak<List<MessageBean>> cloudCallBeak) { - getMessageList(MessageStatus.processed, cloudCallBeak); + getMessageList(MessageStateType.untreated, cloudCallBeak); } /** * 鑾峰彇娑堟伅鍒楄〃 * - * @param messageStatus all:鍏ㄩ儴,untreated:鏈鐞�,processed:宸插鐞�; - * @param cloudCallBeak - + * @param messageStateType all:鍏ㄩ儴,UNTREATED:鏈鐞�,PROCESSED:宸插鐞�; + * @param cloudCallBeak - */ - public void getMessageList(MessageStatus messageStatus, CloudCallBeak<List<MessageBean>> cloudCallBeak) { + private void getMessageList(String messageStateType, CloudCallBeak<List<MessageBean>> cloudCallBeak) { String requestUrl = HttpApi.POST_Message_List; JsonObject json = new JsonObject(); - if (messageStatus == MessageStatus.untreated) { - json.addProperty("status", "UNTREATED");//鏈鐞� - } else if (messageStatus == MessageStatus.processed) { - json.addProperty("status", "PROCESSED");//宸插鐞� + if (!MessageStateType.all.equals(messageStateType)) { + json.addProperty("status", messageStateType); } json.addProperty("pageNo", 1);//椤电爜 json.addProperty("pageSize", 50);//椤垫暟 @@ -315,14 +333,6 @@ } - - public enum MessageStatus { - all,//鍏ㄩ儴 - untreated,//鏈鐞� - processed,//宸插鐞� - - - } static class MessageListClass { diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java index 7822688..1fcb006 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java @@ -94,6 +94,10 @@ * 鏀瑰彉缁勪欢鏍峰紡 * * @param textView 鏄剧ず缁勪欢 + * 濡傛灉璁惧浠庢潵娌′笂鎶ヨ繃鏁版嵁鏁版嵁 鐘舵�侊細杩炴帴涓� + * 璁惧鍦ㄧ嚎 浣嗘槸褰撳墠澶勪簬鏁呴殰 鐘舵�侊細鏁呴殰 + * 璁惧鍦ㄧ嚎锛堟湁涓婃姤杩囨暟鎹紝娌℃湁鏁呴殰锛� 鐘舵�侊細鍦ㄧ嚎 + * 璁惧绂荤嚎 鐘舵�侊細绂荤嚎 * @param state_value 鐢电珯鐘舵��(1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰) */ private void setTextViewStyle(TextView textView, int state_value) { diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java index 973be86..55a9cf4 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java @@ -12,6 +12,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.hdl.photovoltaic.R; +import com.hdl.photovoltaic.enums.MessageAlarmStateType; import com.hdl.photovoltaic.ui.bean.MessageBean; import com.hdl.photovoltaic.utils.TimeUtils; @@ -46,13 +47,13 @@ holder.item_time_tv.setText(date); String type = "";//FAULT:鏁呴殰,WARN:鍛婅,EVENT:浜嬩欢 Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300); - if (messageBean.getType().equals("FAULT")) { + if (messageBean.getType().equals(MessageAlarmStateType.fault)) { type = mContext.getString(R.string.my_power_station_malfunction); drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343); - } else if (messageBean.getType().equals("WARN")) { + } else if (messageBean.getType().equals(MessageAlarmStateType.warn)) { type = mContext.getString(R.string.message_alarm); drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300); - } else if (messageBean.getType().equals("EVENT")) { + } else if (messageBean.getType().equals(MessageAlarmStateType.event)) { type = "浜嬩欢"; drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300); } diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/MessageBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/MessageBean.java index abed74b..5e2f030 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/bean/MessageBean.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/MessageBean.java @@ -26,7 +26,7 @@ private String address;//璇︾粏鍦板潃 - private boolean isRead;//鏄惁宸茬粡璇诲彇 + private boolean isRead;//鏄惁宸茬粡璇诲彇(true=璇诲彇) private HouseInfoBean.Location location = new HouseInfoBean.Location();//鐢电珯鍦板潃 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 309502c..fe7d003 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 @@ -12,6 +12,7 @@ import com.hdl.photovoltaic.config.ConstantManage; import com.hdl.photovoltaic.databinding.FragmentMessageAllBinding; 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; @@ -79,6 +80,9 @@ messageAllAdapter.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); @@ -128,7 +132,7 @@ if (isShowLoading) { showLoading(); } - HdlMessageLogic.getInstance().getMessageList(HdlMessageLogic.MessageStatus.all, new CloudCallBeak<List<MessageBean>>() { + HdlMessageLogic.getInstance().getAllMessageList(new CloudCallBeak<List<MessageBean>>() { @Override public void onSuccess(List<MessageBean> list) { if (isShowLoading) { 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 044b216..9dfa792 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 @@ -10,12 +10,18 @@ import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.base.CustomBaseActivity; +import com.hdl.photovoltaic.config.ConstantManage; import com.hdl.photovoltaic.databinding.ActivityMessageInfoBinding; +import com.hdl.photovoltaic.enums.MessageAlarmStateType; +import com.hdl.photovoltaic.enums.MessageStateType; import com.hdl.photovoltaic.listener.CloudCallBeak; import com.hdl.photovoltaic.other.HdlMessageLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.ui.bean.MessageBean; import com.hdl.photovoltaic.utils.TimeUtils; +import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus; + +import org.greenrobot.eventbus.EventBus; /** * 娑堟伅璇︽儏 @@ -76,18 +82,24 @@ String type = "";//FAULT:鏁呴殰,WARN:鍛婅,EVENT:浜嬩欢 Drawable drawable = AppCompatResources.getDrawable(_mActivity, R.drawable.alarm_ffb300); - if (mMessageBean.getType().equals("FAULT")) { + if (mMessageBean.getType().equals(MessageAlarmStateType.fault)) { type = _mActivity.getString(R.string.my_power_station_malfunction); drawable = AppCompatResources.getDrawable(_mActivity, R.drawable.alarm_e34343); - } else if (mMessageBean.getType().equals("WARN")) { + } else if (mMessageBean.getType().equals(MessageAlarmStateType.warn)) { type = _mActivity.getString(R.string.message_alarm); drawable = AppCompatResources.getDrawable(_mActivity, R.drawable.alarm_ffb300); - } else if (mMessageBean.getType().equals("EVENT")) { + } else if (mMessageBean.getType().equals(MessageAlarmStateType.event)) { type = "浜嬩欢"; drawable = AppCompatResources.getDrawable(_mActivity, R.drawable.alarm_ffb300); } viewBinding.messageInfoAlarmStateTv.setText(type); viewBinding.messageInfoAlarmStateTv.setBackground(drawable); + + if (mMessageBean.getStatus().equals(MessageStateType.processed)) { + //宸茬粡瑙e喅鎺夌殑闅愯棌 + viewBinding.messageInfoBackTv.setVisibility(View.GONE); + viewBinding.messageInfoSolveTv.setVisibility(View.GONE); + } } }); } @@ -104,6 +116,16 @@ viewBinding.toolbarTopIn.topBackBtn.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(); } }); @@ -121,7 +143,20 @@ HdlMessageLogic.getInstance().getMessageMessageSolve(mMsgId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { + //鎭㈠杩涙潵鍙槸鏌ョ湅鐨� + if (mMessageBean.getStatus().equals(MessageStateType.untreated)) { + //閲嶇疆鍙橀噺 + mMessageBean.setRead(true); + mMessageBean.setStatus(MessageStateType.processed); + HdlMessageLogic.getInstance().setListMessage(mMessageBean); + BaseEventBus baseEventBus = new BaseEventBus(); + baseEventBus.setTopic(ConstantManage.message_function_push_post); + baseEventBus.setType(MessageStateType.processed); + EventBus.getDefault().post(baseEventBus); + } finish(); + + } @Override 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 d1016fd..a04dbdf 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 @@ -7,15 +7,14 @@ 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.FragmentNascentMessageBinding; 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.HdlMessageLogic; import com.hdl.photovoltaic.ui.adapter.MessageAdapter; import com.hdl.photovoltaic.ui.bean.MessageBean; @@ -43,7 +42,7 @@ @Override public void onBindView(Bundle savedInstanceState) { //鍒濆鍖栨暟鎹� - initData(); +// initData(); //鍒濆鍖栫晫闈� initView(); //鍒濆鍖栫洃鍚櫒 @@ -51,7 +50,8 @@ } private void initData() { - getNascentMessageList(true); + mList.clear(); + mList.addAll(HdlMessageLogic.getInstance().getNascentMessageMemoryList()); } private void initEvent() { @@ -67,6 +67,9 @@ messageNascentAdapter.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); @@ -98,7 +101,14 @@ //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { if (eventBus.getType().equals(MessageFunctionTabSwitch.nascent.toString())) { + initData(); getNascentMessageList(true); + } + + } else if (eventBus.getTopic().equals(ConstantManage.message_function_push_post)) { + if (eventBus.getType().equals(MessageStateType.untreated)) { + initData(); + updateListData(); } } } @@ -113,7 +123,7 @@ if (isShowLoading) { showLoading(); } - HdlMessageLogic.getInstance().getMessageList(HdlMessageLogic.MessageStatus.untreated, new CloudCallBeak<List<MessageBean>>() { + HdlMessageLogic.getInstance().getNascentMessageList(new CloudCallBeak<List<MessageBean>>() { @Override public void onSuccess(List<MessageBean> list) { if (isShowLoading) { 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 b45b1d5..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 @@ -13,6 +13,7 @@ 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.HdlLogLogic; import com.hdl.photovoltaic.other.HdlMessageLogic; @@ -44,7 +45,7 @@ public void onBindView(Bundle savedInstanceState) { //鍒濆鍖栨暟鎹� - initData(); +// initData(); //鍒濆鍖栫晫闈� initView(); //鍒濆鍖栫洃鍚櫒 @@ -52,14 +53,8 @@ } private void initData() { -// 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() { @@ -76,6 +71,9 @@ 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); @@ -108,7 +106,13 @@ if (eventBus.getTopic().equals(ConstantManage.message_function_tab_switch)) { 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(); } } } @@ -125,7 +129,7 @@ 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