From ed0737b5e3c35543ddf7fa7c72b6708b264eac5f Mon Sep 17 00:00:00 2001 From: wangyifeng <812766448@qq.com> Date: Wed, 14 May 2025 17:22:25 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=81=8A=E5=A4=A9?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=BC=B9=E7=AA=97=EF=BC=8C=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=8D=95=E8=81=8A=E7=9A=84=E8=81=8A=E5=A4=A9=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=EF=BC=9B=E6=96=B0=E5=A2=9E=E6=90=9C=E7=B4=A2=E8=81=8A=E5=A4=A9?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E7=9A=84=E5=BC=B9=E7=AA=97=EF=BC=8C=E6=8E=A5?= =?UTF-8?q?=E5=85=A5=E9=83=A8=E5=88=86=E6=8E=A5=E5=8F=A3=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E8=B0=83=E6=95=B4=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/search.js | 11 ++ src/assets/image/chatList/chat-settings.png | Bin 0 -> 657 bytes src/assets/image/chatList/search-empty.png | Bin 0 -> 6901 bytes src/assets/image/icon/close-btn-grey-line.png | Bin 0 -> 286 bytes src/components/group/GroupPanel.vue | 66 ++++++-- src/components/search/searchItem.vue | 4 + src/components/search/searchList.vue | 33 +++- src/utils/auth.js | 2 +- src/views/message/inner/IndexContent.vue | 19 ++- src/views/message/inner/IndexSider.vue | 158 ++++++++++++++++-- src/views/message/inner/panel/PanelHeader.vue | 6 +- 11 files changed, 254 insertions(+), 45 deletions(-) create mode 100644 src/api/search.js create mode 100644 src/assets/image/chatList/chat-settings.png create mode 100644 src/assets/image/chatList/search-empty.png create mode 100644 src/assets/image/icon/close-btn-grey-line.png diff --git a/src/api/search.js b/src/api/search.js new file mode 100644 index 0000000..ee3654e --- /dev/null +++ b/src/api/search.js @@ -0,0 +1,11 @@ +import { post, get, upload } from '@/utils/request' + +//ES搜索-主页搜索什么都有、指定用户、指定群、群与用户概览 +export const ServeSeachQueryAll = (data = {}) => { + return post('/api/v1/elasticsearch/query-all', data) +} + +//ES搜索聊天记录-主页搜索什么都有、聊天记录 +export const ServeQueryTalkRecord = (data = {}) => { + return post('/api/v1/elasticsearch/query-talk-record', data) +} diff --git a/src/assets/image/chatList/chat-settings.png b/src/assets/image/chatList/chat-settings.png new file mode 100644 index 0000000000000000000000000000000000000000..2a3a55c2550ed084fe22d9b6c73b6e36ba21297f GIT binary patch literal 657 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 literal 0 HcmV?d00001 diff --git a/src/assets/image/icon/close-btn-grey-line.png b/src/assets/image/icon/close-btn-grey-line.png new file mode 100644 index 0000000000000000000000000000000000000000..79ee1515e273e0f49a45811f1f0d39c6d19804a4 GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^;vmez3?zkEPEH0=jKx9jP7LeL$-D$|v;urWT!HlY z^Y^b_y?Xib^@|s;T)K4i(j^Fa_2NYk8z=~7T)neSS{A69w zy#El%!PyOz==5}P43W5Odu}7|AqSq;hs%8qaD=;gaeeEYaEPsB%b5dg9ag-HoFxx( zv+Rv6_>;44=VrT?f0B1OFaK?FV|%7V#oXHfqXk^f)IILR`ymCs-MR(VLG&iO-Ygi@!jSk import { reactive, computed, watch, ref } from 'vue' -import { NEmpty, NPopover, NPopconfirm } from 'naive-ui' +import { NEmpty, NPopover, NPopconfirm, NSwitch } from 'naive-ui' import { useUserStore } from '@/store' import GroupLaunch from './GroupLaunch.vue' import GroupManage from './manage/index.vue' @@ -22,6 +22,11 @@ const props = defineProps({ gid: { type: Number, default: 0 + }, + talkType: { + // 1: 单聊, 2: 群聊 + type: Number, + default: 0 } }) @@ -53,7 +58,7 @@ const state = reactive({ actionBtns: { confirmBtn: true, cancelBtn: true - }, // 操作按钮 + } // 操作按钮 }) const members = ref([]) @@ -198,9 +203,10 @@ const showChatSettingOperateModal = (type: string) => {