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/other/HdlMessageLogic.java | 96 ++++++++++++++++++++++++++--------------------- 1 files changed, 53 insertions(+), 43 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 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 { -- Gitblit v1.8.0