Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion ui/src/api/admin/system/role.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,9 @@ const deleteRoleMember = (roleId: string, userRelationId: string) => {
return del<boolean>(`${prefix}/${roleId}/remove_member/${userRelationId}`)
}

export default { deleteRole, deleteRoleMember, getRoleList, getRoleMemberList, getRolePermissionList, postRole, postRoleMembers, postRolePermissions }
/** 从指定角色批量移除成员。 */
const deleteRoleMembers = (roleId: string, userRelationIds: string[]) => {
return del<{ member_ids: string[] }, boolean>(`${prefix}/${roleId}/remove_member/batch`, undefined, { member_ids: userRelationIds })
}

export default { deleteRole, deleteRoleMember, deleteRoleMembers, getRoleList, getRoleMemberList, getRolePermissionList, postRole, postRoleMembers, postRolePermissions }
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,12 @@ const batchSelectedMembers = ref<RoleMember[]>([])
function handleBatchDelete() {
MsgConfirm(`是否删除选中的 ${batchSelectedMembers.value.length} 个成员?`, '')
.then(() => {
// TODO: 批量删除
loading.value = true
const memberIds = batchSelectedMembers.value.map((member) => member.user_relation_id)
return RoleApi.deleteRoleMembers(props.currentRole.id, memberIds).then(() => {
MsgSuccess('批量移除成功')
return loadMembers()
})
})
.catch(() => {})
.finally(() => {
Expand Down Expand Up @@ -102,6 +107,7 @@ watch(
@current-change="loadMembers()"
@size-change="loadMembers()"
:max-table-height="290"
rowKey="user_relation_id"
@selection-change="handleBatchSelectionChange"
>
<el-table-column type="selection" width="40" />
Expand Down
Loading