Fix: set room user permissions
This commit is contained in:
parent
57c4b1103c
commit
629ebf9671
|
@ -12,7 +12,12 @@ import {
|
|||
setAdminApi,
|
||||
setMemberApi
|
||||
} from "@/services/apis/room";
|
||||
import { useRoomApi, RoomAdminPermission, useRoomPermission } from "@/hooks/useRoom";
|
||||
import {
|
||||
useRoomApi,
|
||||
RoomAdminPermission,
|
||||
useRoomPermission,
|
||||
RoomMemberPermission
|
||||
} from "@/hooks/useRoom";
|
||||
import UserPermission from "./UserPermission.vue";
|
||||
|
||||
const open = ref(false);
|
||||
|
@ -114,7 +119,12 @@ const banUser = async (id: string, is: boolean) => {
|
|||
};
|
||||
|
||||
// 设管理
|
||||
const setAdmin = async (id: string, is: boolean) => {
|
||||
const setAdmin = async (
|
||||
id: string,
|
||||
mP: RoomMemberPermission,
|
||||
aP: RoomAdminPermission,
|
||||
is: boolean
|
||||
) => {
|
||||
try {
|
||||
const config = {
|
||||
headers: {
|
||||
|
@ -122,9 +132,19 @@ const setAdmin = async (id: string, is: boolean) => {
|
|||
},
|
||||
data: {
|
||||
id: id
|
||||
} as {
|
||||
id: string;
|
||||
adminPermissions?: RoomAdminPermission;
|
||||
permissions?: RoomMemberPermission;
|
||||
}
|
||||
};
|
||||
is ? await setAdminApi().execute(config) : await setMemberApi().execute(config);
|
||||
if (is) {
|
||||
config.data.adminPermissions = aP;
|
||||
await setAdminApi().execute(config);
|
||||
} else {
|
||||
config.data.permissions = mP;
|
||||
await setMemberApi().execute(config);
|
||||
}
|
||||
ElNotification({
|
||||
title: "设置成功",
|
||||
type: "success"
|
||||
|
@ -290,7 +310,14 @@ defineExpose({
|
|||
<el-button
|
||||
v-if="scope.row.role < ROLE.Admin"
|
||||
type="primary"
|
||||
@click="setAdmin(scope.row.userId, true)"
|
||||
@click="
|
||||
setAdmin(
|
||||
scope.row.userId,
|
||||
scope.row.permissions,
|
||||
scope.row.adminPermissions,
|
||||
true
|
||||
)
|
||||
"
|
||||
>
|
||||
设为管理
|
||||
</el-button>
|
||||
|
@ -301,7 +328,14 @@ defineExpose({
|
|||
myInfo?.role === ROLE.Creator
|
||||
"
|
||||
type="warning"
|
||||
@click="setAdmin(scope.row.userId, false)"
|
||||
@click="
|
||||
setAdmin(
|
||||
scope.row.userId,
|
||||
scope.row.permissions,
|
||||
scope.row.adminPermissions,
|
||||
false
|
||||
)
|
||||
"
|
||||
>
|
||||
取消管理
|
||||
</el-button>
|
||||
|
|
|
@ -118,9 +118,12 @@ defineExpose({
|
|||
</el-tabs>
|
||||
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="open = false">关闭</el-button>
|
||||
<el-button type="primary" @click="setPermit" :loading="saveBtnLoading"> 保存 </el-button>
|
||||
<div class="flex flex-wrap items-center justify-between">
|
||||
<p><b>注意:</b>每次保存只能修改一种权限</p>
|
||||
<div>
|
||||
<el-button @click="open = false">关闭</el-button>
|
||||
<el-button type="primary" @click="setPermit" :loading="saveBtnLoading"> 保存 </el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
|
|
Loading…
Reference in New Issue