diff --git a/src/api/chatSettings/index.js b/src/api/chatSettings/index.js
index 3d124e2..dafa079 100644
--- a/src/api/chatSettings/index.js
+++ b/src/api/chatSettings/index.js
@@ -1,24 +1,6 @@
import request from '@/service/index.js'
import qs from 'qs'
-// 群信息查询
-export const ServeQueryGroupInfo = (data) => {
- return request({
- url: '/api/v1/group/detail',
- method: 'GET',
- data,
- })
-}
-
-// 查看群成员
-export const ServeQueryGroupMembers = (data) => {
- return request({
- url: '/api/v1/group/member/list',
- method: 'GET',
- data,
- })
-}
-
// 群公告查询
export const ServeQueryGroupNotice = (data) => {
return request({
diff --git a/src/api/group/index.js b/src/api/group/index.js
index 9fb5927..c2cc17b 100644
--- a/src/api/group/index.js
+++ b/src/api/group/index.js
@@ -207,6 +207,7 @@ export const ServeGroupAssignAdmin = (data) => {
})
}
+//指定人员禁言
export const ServeGroupNoSpeak = (data) => {
return request({
url: '/api/v1/group/no-speak',
@@ -214,4 +215,3 @@ export const ServeGroupNoSpeak = (data) => {
data,
})
}
-
diff --git a/src/components/custom-input/custom-input.vue b/src/components/custom-input/custom-input.vue
new file mode 100644
index 0000000..f7ad30e
--- /dev/null
+++ b/src/components/custom-input/custom-input.vue
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
diff --git a/src/pages.json b/src/pages.json
index be2de0b..69299ec 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -138,6 +138,22 @@
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
+ },
+ {
+ "path": "pages/chatSettings/groupManage/selectMembers",
+ "type": "page",
+ "style": {
+ "navigationStyle": "custom",
+ "enablePullDownRefresh": false
+ }
+ },
+ {
+ "path": "pages/chatSettings/groupManage/manageGroupAdmin",
+ "type": "page",
+ "style": {
+ "navigationStyle": "custom",
+ "enablePullDownRefresh": false
+ }
}
],
"globalStyle": {
diff --git a/src/pages/chatSettings/components/select-member-item.vue b/src/pages/chatSettings/components/select-member-item.vue
new file mode 100644
index 0000000..4a03bc7
--- /dev/null
+++ b/src/pages/chatSettings/components/select-member-item.vue
@@ -0,0 +1,115 @@
+
+
+
+
+
+
![]()
+
+ {{ imgText }}
+
+
+
+ {{ nameText }}
+
+
+
+
+
+ {{ $t('chatSettings.btn.undoSilence') }}
+
+
+ {{ $t('silence.tag.hasDone') }}
+
+
+
+
+
+
+
diff --git a/src/pages/chatSettings/groupManage/manageGroupAdmin.vue b/src/pages/chatSettings/groupManage/manageGroupAdmin.vue
new file mode 100644
index 0000000..35bc10c
--- /dev/null
+++ b/src/pages/chatSettings/groupManage/manageGroupAdmin.vue
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+ {{ $t('chat.settings.groupAdmin') }}
+
+
+
+
+
+
+ {{ $t('chat.settings.groupAdmin') }}
+
+
+

+
+ {{ $t('chat.manage.addAdmin') }}
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/chatSettings/groupManage/manageGroupMembers.vue b/src/pages/chatSettings/groupManage/manageGroupMembers.vue
index 40d55bf..235a77d 100644
--- a/src/pages/chatSettings/groupManage/manageGroupMembers.vue
+++ b/src/pages/chatSettings/groupManage/manageGroupMembers.vue
@@ -6,8 +6,6 @@
:show-scrollbar="false"
:use-virtual-list="true"
:virtual-list-col="5"
- v-model="state.memberList"
- @query="getGroupMembers"
:auto="false"
:refresher-enabled="false"
:loading-more-enabled="false"
@@ -22,7 +20,9 @@
-
+
@@ -32,43 +32,16 @@
import groupMemberList from '../components/groupMembersList.vue'
import ZPaging from '@/uni_modules/z-paging/components/z-paging/z-paging.vue'
import useZPaging from '@/uni_modules/z-paging/components/z-paging/js/hooks/useZPaging.js'
-import { onLoad } from '@dcloudio/uni-app'
-import { ref, reactive } from 'vue'
-import { ServeQueryGroupMembers } from '@/api/chatSettings/index'
+import { ref, computed, reactive } from 'vue'
+import { useDialogueStore } from '@/store'
-const state = reactive({
- memberList: [], //人员列表
+const dialogueStore = useDialogueStore()
+const talkParams = reactive({
+ memberList: computed(() => dialogueStore.members),
})
const zPaging = ref()
useZPaging(zPaging)
-
-onLoad((options) => {
- console.log(options)
- if (options.groupId) {
- state.groupId = Number(options.groupId)
- getGroupMembers()
- }
-})
-
-//查看群成员
-const getGroupMembers = () => {
- let params = {
- group_id: state.groupId,
- }
- console.log(params)
- const resp = ServeQueryGroupMembers(params)
- console.log(resp)
- resp.then(({ code, data }) => {
- console.log(data)
- if (code == 200) {
- zPaging.value?.completeByNoMore(data.items, true)
- } else {
- }
- })
-
- resp.catch(() => {})
-}
diff --git a/src/pages/chatSettings/index.vue b/src/pages/chatSettings/index.vue
index b36bf13..7719454 100644
--- a/src/pages/chatSettings/index.vue
+++ b/src/pages/chatSettings/index.vue
@@ -27,7 +27,7 @@
class="base-info-tag"
:style="{
borderColor:
- groupTypeMapping[state?.groupInfo?.group_type]
+ groupTypeMapping[groupParams?.groupInfo?.group_type]
?.result_type_color,
}"
>
@@ -35,7 +35,7 @@
class="text-[24rpx] font-medium"
:style="{
color:
- groupTypeMapping[state?.groupInfo?.group_type]
+ groupTypeMapping[groupParams?.groupInfo?.group_type]
?.result_type_color,
}"
>
@@ -58,7 +58,7 @@
@toManagePage="toManagePage"
>
@@ -76,14 +76,7 @@
-
+
dialogueStore.online),
keyboard: computed(() => dialogueStore.keyboard),
num: computed(() => dialogueStore.members.length),
+ memberList: computed(() => dialogueStore.members),
})
const topItems = computed(() => talkStore.topItems)
const disturbItems = computed(() => talkStore.disturbItems)
-
+const groupStore = useGroupStore()
+const groupParams = reactive({
+ groupInfo: computed(() => groupStore.groupInfo),
+})
const state = reactive({
chatGroupMembers: [], //群成员form-item
chatGroupInfos: [], //群聊信息
@@ -192,19 +193,17 @@ const state = reactive({
chatSettings: [], //群聊设置
chatManagement: [], //群聊管理
groupId: '', //群id
- groupInfo: null, //群信息
- memberList: [], //群成员列表
groupNotice: [], //群公告
sessionId: '', //会话id
})
-onLoad((options) => {
+onLoad(async (options) => {
console.log(talkParams)
if (options.groupId) {
console.log(options.groupId)
state.groupId = Number(options.groupId)
- getGroupInfo()
- getGroupMembers()
+ await groupStore.setGroupInfo()
+ updateGroupInfos()
getGroupNotice()
}
if (options.sessionId) {
@@ -287,19 +286,19 @@ onMounted(() => {
//群头像
const groupAvatar = computed(() => {
return (
- state?.groupInfo?.avatar ||
- groupTypeMapping[state?.groupInfo?.group_type]?.defaultImg
+ groupParams?.groupInfo?.avatar ||
+ groupTypeMapping[groupParams?.groupInfo?.group_type]?.defaultImg
)
})
//群名称
const groupName = computed(() => {
- return state?.groupInfo?.group_name
+ return groupParams?.groupInfo?.group_name
})
//群人数
const groupNum = computed(() => {
- return state?.groupInfo?.group_num || 0
+ return groupParams?.groupInfo?.group_num || 0
})
// 映射表-根据groupType设置对应值
@@ -329,46 +328,9 @@ const groupTypeMapping = {
//群类型
const groupType = computed(() => {
- return groupTypeMapping[state?.groupInfo?.group_type]?.result_type || ''
+ return groupTypeMapping[groupParams?.groupInfo?.group_type]?.result_type || ''
})
-//查询群信息
-const getGroupInfo = () => {
- let params = {
- group_id: state.groupId,
- }
- const resp = ServeQueryGroupInfo(params)
- console.log(resp)
- resp.then(({ code, data }) => {
- console.log(data)
- if (code == 200) {
- state.groupInfo = data
- updateGroupInfos()
- } else {
- }
- })
-
- resp.catch(() => {})
-}
-
-//查看群成员
-const getGroupMembers = () => {
- let params = {
- group_id: state.groupId,
- }
- const resp = ServeQueryGroupMembers(params)
- console.log(resp)
- resp.then(({ code, data }) => {
- console.log(data)
- if (code == 200) {
- state.memberList = data.items
- } else {
- }
- })
-
- resp.catch(() => {})
-}
-
//群公告查询
const getGroupNotice = () => {
let params = {
@@ -466,6 +428,10 @@ const toManagePage = (label) => {
uni.navigateTo({
url: '/pages/chatSettings/groupManage/manageGroupSilence',
})
+ } else if (label === t('chat.settings.groupAdmin')) {
+ uni.navigateTo({
+ url: '/pages/chatSettings/groupManage/manageGroupAdmin',
+ })
}
}
}
diff --git a/src/pages/search/components/searchList.vue b/src/pages/search/components/searchList.vue
index fb6401d..cc086fb 100644
--- a/src/pages/search/components/searchList.vue
+++ b/src/pages/search/components/searchList.vue
@@ -22,19 +22,11 @@
>
-
+