From 6c6bcb7dceabeb09427ba036b4847ddc6362a64f Mon Sep 17 00:00:00 2001 From: wangyifeng <812766448@qq.com> Date: Fri, 11 Jul 2025 15:02:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=8D=A2=E4=BD=93=E5=88=B6=E5=A4=96?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E6=9F=A5=E7=9C=8B=E5=99=A8=E7=9A=84=E5=9C=B0?= =?UTF-8?q?=E5=9D=80=E8=B7=AF=E5=BE=84=EF=BC=9B=E8=A7=A3=E5=86=B3=E5=8D=95?= =?UTF-8?q?=E8=81=8A=E6=90=9C=E7=B4=A2=E5=AE=9A=E4=BD=8D=E8=81=8A=E5=A4=A9?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=EF=BC=8C=E6=97=A0=E6=B3=95=E5=AE=9A=E4=BD=8D?= =?UTF-8?q?=E5=88=B0=E5=AF=B9=E6=96=B9=E7=9A=84=E8=81=8A=E5=A4=A9=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- env/.env.prodOut | 2 +- src/components/search/searchByCondition.vue | 13 ++++++++++--- src/router/index.js | 8 ++++---- src/utils/erpRequest.js | 6 +++--- src/views/message/inner/IndexSider.vue | 15 ++++++++++++--- 5 files changed, 30 insertions(+), 14 deletions(-) diff --git a/env/.env.prodOut b/env/.env.prodOut index e498eee..9ed8909 100644 --- a/env/.env.prodOut +++ b/env/.env.prodOut @@ -13,4 +13,4 @@ VITE_SOCKET_API = 'wss://chat-out.szjixun.cn' #体制外 # EPRAPI baseUrl VITE_EPR_BASEURL = 'https://erpapi-out.szjixun.cn' #体制外 # 文档查看器 -VITE_PAGE_URL = https://chat-pc.szjixun.cn #体制外 \ No newline at end of file +VITE_PAGE_URL = https://chat-pc-out.szjixun.cn #体制外 \ No newline at end of file diff --git a/src/components/search/searchByCondition.vue b/src/components/search/searchByCondition.vue index 6376bc8..4496b64 100644 --- a/src/components/search/searchByCondition.vue +++ b/src/components/search/searchByCondition.vue @@ -296,7 +296,7 @@ import fileType_EXCEL from '@/assets/image/excel-text.png' import fileType_WORD from '@/assets/image/word-text.png' import fileType_PDF from '@/assets/image/pdf-text.png' import fileType_Files from '@/assets/image/file-text.png' -import { useDialogueStore } from '@/store' +import { useDialogueStore, useUserStore } from '@/store' import { onMounted, reactive, computed, ref, nextTick, watch } from 'vue' import searchItem from './searchItem.vue' import { ServeFindTalkRecords } from '@/api/chat.js' @@ -315,10 +315,12 @@ const emits = defineEmits([ ]) const dialogueStore = useDialogueStore() +const userStore = useUserStore() // 当前对话参数 const dialogueParams = reactive({ talk_type: computed(() => dialogueStore.talk.talk_type), - receiver_id: computed(() => dialogueStore.talk.receiver_id) + receiver_id: computed(() => dialogueStore.talk.receiver_id), + uid: computed(() => userStore.uid) }) let nowDay = new Date().setHours(0, 0, 0, 0) @@ -739,11 +741,16 @@ const downloadAndOpenFile = (item) => { //跳转到对应的记录位置 const toDialogueByMember = async (msgInfo) => { console.error('====跳转到对应的记录位置====', msgInfo) + let receiver_id_ = msgInfo.receiver_id + //单聊如果receiver_id为当前用户id,则使用user_id + if(msgInfo.talk_type === 1 && msgInfo.receiver_id === dialogueParams.uid){ + receiver_id_ = msgInfo.user_id + } // 根据搜索结果, 指定用于查询指定消息上下文的sequence dialogueStore.specifiedMsg = encodeURIComponent( JSON.stringify({ talk_type: msgInfo.talk_type, - receiver_id: msgInfo.receiver_id, + receiver_id: receiver_id_, msg_id: msgInfo.msg_id, cursor: msgInfo.sequence - 15 > 0 ? msgInfo.sequence - 15 : 0, direction: 'down', diff --git a/src/router/index.js b/src/router/index.js index 06c1110..8af4da5 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -62,10 +62,10 @@ const router = createRouter({ // 设置中间件,权限验证 router.beforeEach((to) => { if (to.meta?.auth && !isLoggedIn()) { - return { - path: '/auth/login', - query: { redirect: to.fullPath } - } + // return { + // path: '/auth/login', + // query: { redirect: to.fullPath } + // } } }) diff --git a/src/utils/erpRequest.js b/src/utils/erpRequest.js index 2837d95..b9b7c48 100644 --- a/src/utils/erpRequest.js +++ b/src/utils/erpRequest.js @@ -42,7 +42,7 @@ service.interceptors.response.use( if (response && response.data.status === 409) { // 账户另一处登录 此处踢下线 message.error('您的账号已在其他设备登录') - $router.push("/login"); + // $router.push("/login"); return; } if (response && response.data.code === 401) { @@ -88,7 +88,7 @@ const getRefreshToken = async (response) => { return Promise.resolve(service(response.config)); } else { // 跳转登录页 - $router.push("/login"); + // $router.push("/login"); res.message = res.message || res.msg; return Promise.reject(res); } @@ -100,7 +100,7 @@ const getRefreshToken = async (response) => { refreshSubscribers = []; } } else { - $router.push("/login"); + // $router.push("/login"); return Promise.reject(response); } } else { diff --git a/src/views/message/inner/IndexSider.vue b/src/views/message/inner/IndexSider.vue index 368e088..ad054c5 100644 --- a/src/views/message/inner/IndexSider.vue +++ b/src/views/message/inner/IndexSider.vue @@ -11,7 +11,7 @@ import { nextTick } from 'vue' import { onBeforeRouteUpdate } from 'vue-router' -import { useDialogueStore, useTalkStore } from '@/store' +import { useDialogueStore, useTalkStore, useUserStore } from '@/store' import { NDropdown, NIcon, @@ -62,6 +62,10 @@ const { const dialogueStore = useDialogueStore() const talkStore = useTalkStore() +const userStore = useUserStore() +const userParams = reactive({ + uid: computed(() => userStore.uid) +}) const isShowGroup = ref(false) const searchKeyword = ref('') const topItems = computed((): ISession[] => talkStore.topItems) @@ -973,11 +977,16 @@ const handleClickSearchItem = (searchText, searchResultKey, talk_type, receiver_ const handleClickSearchResultItem = (searchText, searchResultKey, talk_type, receiver_id, res) => { const result = JSON.parse(decodeURIComponent(res)) console.error(result, 'result') + let receiver_id_ = receiver_id + //单聊如果receiver_id为当前用户id,则使用user_id + if(talk_type === 1 && receiver_id === userParams.uid){ + receiver_id_ = result.user_id + } // 根据搜索结果, 指定用于查询指定消息上下文的sequence dialogueStore.specifiedMsg = encodeURIComponent( JSON.stringify({ talk_type, - receiver_id, + receiver_id: receiver_id_, msg_id: result.msg_id, cursor: result.sequence - 15 > 0 ? result.sequence - 15 : 0, direction: 'down', @@ -986,7 +995,7 @@ const handleClickSearchResultItem = (searchText, searchResultKey, talk_type, rec }) ) console.error(dialogueStore.specifiedMsg, 'dialogueStore.specifiedMsg') - talkStore.toTalk(talk_type, receiver_id, router) + talkStore.toTalk(talk_type, receiver_id_, router) state.isShowSearchRecordModal = false state.searchRecordText = '' searchKeyword.value = ''