From 21d03528f530053bd5247102ff95276afaf2998a Mon Sep 17 00:00:00 2001 From: Lei OT Date: Thu, 6 Jun 2024 21:29:50 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix(history):=20opisn=20=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/actions/ConversationActions.js | 3 ++- .../Conversations/History/MessagesList.jsx | 19 ++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/actions/ConversationActions.js b/src/actions/ConversationActions.js index 3f849e8..4cd07a8 100644 --- a/src/actions/ConversationActions.js +++ b/src/actions/ConversationActions.js @@ -125,6 +125,7 @@ export const fetchConversationsSearch = async (params) => { whatsapp_name: `${ele.whatsapp_name || ''}`.trim(), opi_sn: ele.OPI_SN || ele.opi_sn || 0, OPI_Name: `${ele.OPI_Name || ele.opi_name || ''}`.trim(), + opi_name: `${ele.OPI_Name || ele.opi_name || ''}`.trim(), dateText: dayjs((ele.lasttime || ele.lasttime)).format('MM-DD HH:mm'), matchMsgList: parseRenderMessageList((ele.msglist_AsJOSN || [])), // .reverse()), coli_id: '', @@ -145,7 +146,7 @@ export const fetchMessagesHistory = async (params) => { pagedir: 'next', }; const _params = pick(params, Object.keys(defaultParams)); - if (isEmpty(_params.opisn) || isEmpty(_params.whatsappid)) { + if (isEmpty(_params.whatsappid)) { return []; } const { errcode, result } = await fetchJSON(`${API_HOST}/get_item_messages`, {...defaultParams, ..._params}); diff --git a/src/views/Conversations/History/MessagesList.jsx b/src/views/Conversations/History/MessagesList.jsx index d4ffcb2..8dbb8ee 100644 --- a/src/views/Conversations/History/MessagesList.jsx +++ b/src/views/Conversations/History/MessagesList.jsx @@ -26,17 +26,25 @@ const MessagesList = ({ ...props }) => { setMessageListPreLoading(true); const data = await fetchMessagesHistory({ ...chatItem, lasttime: chatItem.pretime, pagedir: 'pre', pagesize: BIG_PAGE_SIZE }); setMessageListPreLoading(false); - setChatItemMessages((prevValue) => data.concat(prevValue)); + // const prevChatItemMessages = chatItemMessages; + // setChatItemMessages([].concat(data, prevChatItemMessages)); + setChatItemMessages((prevValue) => [].concat(data, prevValue)); const loadPrePage = !(data.length === 0 || data.length < BIG_PAGE_SIZE); - setParamsForMsgList({ loadPrePage }); + if (data.length > 0) { + setParamsForMsgList({ loadPrePage, pretime: data[0].orgmsgtime }); + } }; const getMessagesNext = async (chatItem) => { setMessageListLoading(true); const data = await fetchMessagesHistory({ ...chatItem, pagedir: 'next', pagesize: BIG_PAGE_SIZE }); setMessageListLoading(false); - setChatItemMessages((prevValue) => prevValue.concat(data)); + // const prevChatItemMessages = chatItemMessages; + // setChatItemMessages([].concat(prevChatItemMessages, data)); + setChatItemMessages((prevValue) => [].concat(prevValue, data)); const loadNextPage = !(data.length === 0 || data.length < BIG_PAGE_SIZE); - setParamsForMsgList({ loadNextPage }); + if (data.length > 0) { + setParamsForMsgList({ loadNextPage, lasttime: data[data.length - 1].orgmsgtime }); + } }; // 选择指定消息之后, 定位 @@ -52,6 +60,7 @@ const MessagesList = ({ ...props }) => { setChatItemMessages([]); setParamsForMsgList({}); setSelectedMatch({}); + setFocusMsg(''); if (isEmpty(selectedConversation.conversationid)) { return () => {}; } @@ -94,7 +103,7 @@ const MessagesList = ({ ...props }) => { // 更新是否需要显示上一页,下一页按钮 useEffect(() => { if (chatItemMessages.length > 0) { - setParamsForMsgList({ pretime: chatItemMessages[0].orgmsgtime, lasttime: chatItemMessages[chatItemMessages.length - 1].orgmsgtime }); + // setParamsForMsgList({ pretime: chatItemMessages[0].orgmsgtime, lasttime: chatItemMessages[chatItemMessages.length - 1].orgmsgtime }); const album = chatItemMessages.filter((ele) => ele.whatsapp_msg_type === 'image').map((ele) => ele.data.uri); setImageAlbumList(album); } From c3274bd31e2bb52f2581615e8691200f1e68910c Mon Sep 17 00:00:00 2001 From: Lei OT Date: Thu, 6 Jun 2024 21:48:38 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E6=97=B6,=20=E4=B8=8A=E4=BC=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/ErrorBoundary.jsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/ErrorBoundary.jsx b/src/components/ErrorBoundary.jsx index 845839d..9072959 100644 --- a/src/components/ErrorBoundary.jsx +++ b/src/components/ErrorBoundary.jsx @@ -15,6 +15,7 @@ class ErrorBoundary extends PureComponent { componentDidCatch(error, info) { console.error('Sorry, Something went wrong.') console.error(error) + window.$pageSpy.triggerPlugins('onOfflineLog', 'upload'); this.setState({ hasError: true, info: error.message }) } @@ -30,4 +31,4 @@ class ErrorBoundary extends PureComponent { } } -export default ErrorBoundary \ No newline at end of file +export default ErrorBoundary