群成员管理

This commit is contained in:
2022-02-14 17:59:01 +08:00
parent a35c96ea0a
commit 2122a0b079

View File

@@ -2,8 +2,10 @@
<view class="container"> <view class="container">
<view class="members u-border-bottom"> <view class="members u-border-bottom">
<view class="users"> <view class="users">
<view class="user" v-for="(item, index) in users" :key="index" @click="toUser(item)"> <view class="user" v-for="(item, index) in users" :key="index" @click="toUser(item)"
<u-avatar size="44" shape="square" :src="item.portraitUrl"></u-avatar> @longpress="showUserActionSheet(item)">
<u-avatar size="44" shape="square" :src="item.portraitUrl">
</u-avatar>
<view class="name">{{ item.name }}</view> <view class="name">{{ item.name }}</view>
</view> </view>
<view class="user" v-if="group.can_invite"> <view class="user" v-if="group.can_invite">
@@ -57,6 +59,10 @@
<u-action-sheet @select="doAction" :actions="joinTypeMap" cancelText="取消" :show="showActions" <u-action-sheet @select="doAction" :actions="joinTypeMap" cancelText="取消" :show="showActions"
@close="showActions=false"> @close="showActions=false">
</u-action-sheet> </u-action-sheet>
<u-action-sheet @select="handleUserAction" :actions="userActionMap" cancelText="取消" :show="showUserAction"
@close="hideUserAction">
</u-action-sheet>
</view> </view>
</template> </template>
@@ -90,7 +96,24 @@
qrContent: 'JOINGROUP|', qrContent: 'JOINGROUP|',
joinType: '', joinType: '',
joinTypeMap: [], joinTypeMap: [],
showActions: false showActions: false,
showUserAction: false,
userActionMap: [{
key: 0,
name: '移除成员',
disabled: false
}, {
key: 1,
name: '设置管理',
disabled: true
},
{
key: 2,
name: '转移群主',
disabled: true
}
],
currentUser: {}
} }
}, },
onLoad(e) { onLoad(e) {
@@ -132,6 +155,7 @@
return item.key == res.join_type return item.key == res.join_type
})[0].name })[0].name
}).catch(err => { }).catch(err => {
console.log('getGroupInfo ERR', err);
uni.showToast({ uni.showToast({
icon: 'none', icon: 'none',
title: '群不存在' title: '群不存在'
@@ -332,6 +356,30 @@
} }
} }
}) })
},
showUserActionSheet(item) {
this.currentUser = item
// 只有管理员以上才会弹窗
if (this.group.is_admin) {
if (this.group.is_owner) {
this.userActionMap.map((item) => {
item.disabled = false
return item
})
}
this.showUserAction = true
}
},
hideUserAction() {
this.currentUser = {}
this.showUserAction = false
},
handleUserAction(e) {
uni.showToast({
icon: 'none',
title: e.name
})
console.log(e);
} }
} }
} }