|
@@ -23,7 +23,9 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
|
|
|
import com.chad.library.adapter.base.listener.OnItemClickListener;
|
|
|
import com.common.im.adapter.MessageSearchAdapter;
|
|
|
import com.common.im.contract.SearchHistoryMessageContract;
|
|
|
+
|
|
|
import io.rong.imkit.utils.helper.ConversationFilterHelper;
|
|
|
+
|
|
|
import com.common.im.presenter.SearchHistoryMessagePresenter;
|
|
|
import com.common.im_ui.databinding.ActivitySearchHistoryMessageBinding;
|
|
|
import com.cooleshow.base.router.RouterPath;
|
|
@@ -63,6 +65,7 @@ public class SearchHistoryMessageActivity extends BaseMVPActivity<ActivitySearch
|
|
|
private MessageSearchAdapter adapter;
|
|
|
private List<Message> data = new ArrayList<>();
|
|
|
private List<Conversation> conversations = new ArrayList<>();
|
|
|
+
|
|
|
@Override
|
|
|
protected void initView() {
|
|
|
etSearch = viewBinding.etSearch;
|
|
@@ -81,7 +84,6 @@ public class SearchHistoryMessageActivity extends BaseMVPActivity<ActivitySearch
|
|
|
});
|
|
|
|
|
|
|
|
|
-
|
|
|
adapter = new MessageSearchAdapter(data);
|
|
|
recyclerView.setLayoutManager(new LinearLayoutManager(this));
|
|
|
recyclerView.setAdapter(adapter);
|
|
@@ -137,6 +139,7 @@ public class SearchHistoryMessageActivity extends BaseMVPActivity<ActivitySearch
|
|
|
}
|
|
|
|
|
|
private String targetId;
|
|
|
+
|
|
|
@Override
|
|
|
public void initData() {
|
|
|
super.initData();
|
|
@@ -144,15 +147,21 @@ public class SearchHistoryMessageActivity extends BaseMVPActivity<ActivitySearch
|
|
|
|
|
|
|
|
|
}
|
|
|
+
|
|
|
public void searchMessage(String targetId, Conversation.ConversationType
|
|
|
conversationType, String match) {
|
|
|
data.clear();
|
|
|
if (TextUtils.isEmpty(targetId)) {
|
|
|
- for (Conversation conversation : conversations) {
|
|
|
- searchIMClientMessage(conversation.getTargetId(), conversation.getConversationType(), match);
|
|
|
+ if (conversations.size() != 0) {
|
|
|
+ for (Conversation conversation : conversations) {
|
|
|
+ searchIMClientMessage(conversation.getTargetId(), conversation.getConversationType(), match);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ updateData(new ArrayList<Message>(), match);
|
|
|
}
|
|
|
+ } else {
|
|
|
+ searchIMClientMessage(targetId, conversationType, match);
|
|
|
}
|
|
|
- searchIMClientMessage(targetId, conversationType, match);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -173,10 +182,12 @@ public class SearchHistoryMessageActivity extends BaseMVPActivity<ActivitySearch
|
|
|
@Override
|
|
|
public void onSuccess(List<Message> messages) {
|
|
|
Iterator<Message> it = messages.iterator();
|
|
|
- while(it.hasNext()){
|
|
|
+ while (it.hasNext()) {
|
|
|
Message conversation = it.next();
|
|
|
- if (!ConversationFilterHelper.checkConversationEnable(conversation.getTargetId())) {
|
|
|
- it.remove();
|
|
|
+ if (conversation.getConversationType() == Conversation.ConversationType.GROUP) {
|
|
|
+ if (!ConversationFilterHelper.checkConversationEnable(conversation.getTargetId())) {
|
|
|
+ it.remove();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
updateData(messages, match);
|