添加群成员查看功能
This commit is contained in:
@@ -197,12 +197,33 @@
|
||||
</el-row>
|
||||
|
||||
<!-- 群组详情对话框 -->
|
||||
<el-dialog title="群组详情" {% raw %}:visible.sync="groupDetailDialogVisible"{% endraw %} width="50%">
|
||||
<el-dialog title="群组详情" {% raw %}:visible.sync="groupDetailDialogVisible"{% endraw %} width="70%">
|
||||
<el-descriptions {% raw %}:column="1"{% endraw %} border>
|
||||
<el-descriptions-item label="群ID">{% raw %}{{ currentGroup.wxid }}{% endraw %}</el-descriptions-item>
|
||||
<el-descriptions-item label="群名称">{% raw %}{{ currentGroup.name }}{% endraw %}</el-descriptions-item>
|
||||
<!-- 可以添加更多群组相关信息 -->
|
||||
</el-descriptions>
|
||||
|
||||
<div style="margin-top: 20px;">
|
||||
<h3>群成员列表</h3>
|
||||
<div {% raw %}v-if="loadingMembers"{% endraw %} style="text-align: center; padding: 20px;">
|
||||
<el-spinner></el-spinner>
|
||||
<p>加载群成员中...</p>
|
||||
</div>
|
||||
<div {% raw %}v-else-if="groupMembers.length === 0"{% endraw %} style="text-align: center; padding: 20px;">
|
||||
<p>暂无群成员信息</p>
|
||||
</div>
|
||||
<el-table
|
||||
{% raw %}v-else
|
||||
:data="groupMembers"{% endraw %}
|
||||
style="width: 100%"
|
||||
border>
|
||||
<el-table-column type="index" width="50"></el-table-column>
|
||||
<el-table-column prop="wxid" label="成员ID" width="220"></el-table-column>
|
||||
<el-table-column prop="nickname" label="昵称"></el-table-column>
|
||||
<el-table-column prop="displayname" label="群内显示名" width="150"></el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 用户详情对话框 -->
|
||||
@@ -263,7 +284,9 @@
|
||||
currentGroup: {},
|
||||
currentUser: {},
|
||||
currentOfficial: {},
|
||||
currentPublic: {}
|
||||
currentPublic: {},
|
||||
groupMembers: [],
|
||||
loadingMembers: false
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@@ -436,6 +459,34 @@
|
||||
viewGroupDetails(group) {
|
||||
this.currentGroup = group;
|
||||
this.groupDetailDialogVisible = true;
|
||||
this.loadGroupMembers(group.wxid);
|
||||
},
|
||||
loadGroupMembers(groupId) {
|
||||
this.loadingMembers = true;
|
||||
this.groupMembers = [];
|
||||
|
||||
axios.get(`/contacts/api/group/${groupId}/members`)
|
||||
.then(response => {
|
||||
if (response.data.success) {
|
||||
const members = response.data.data.members;
|
||||
this.groupMembers = Object.entries(members).map(([wxid, info]) => {
|
||||
return {
|
||||
wxid: wxid,
|
||||
nickname: info.nickname || '未知',
|
||||
displayname: info.displayname || '未设置'
|
||||
};
|
||||
});
|
||||
} else {
|
||||
this.$message.warning('获取群成员信息失败: ' + response.data.error);
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('加载群成员数据失败:', error);
|
||||
this.$message.error('加载群成员数据失败');
|
||||
})
|
||||
.finally(() => {
|
||||
this.loadingMembers = false;
|
||||
});
|
||||
},
|
||||
viewUserDetails(user) {
|
||||
this.currentUser = user;
|
||||
|
||||
Reference in New Issue
Block a user