import type { Ref } from 'vue' import { Result } from '@/request/Result' import { get, put } from '@/request/index' import type { ChatUserGroupItem, ChatUserGroupUserItem, ChatUserResourceParams, putUserGroupUserParams } from '@/api/type/workspaceChatUser' import type { pageRequest, PageList } from '@/api/type/common' const prefix = '/workspace/' + localStorage.getItem('workspace_id') /** * 获取用户组列表 */ const getUserGroupList: (resource: ChatUserResourceParams, loading?: Ref) => Promise> = (resource, loading) => { return get(`${prefix}/${resource.resource_type}/${resource.resource_id}/user_group`, undefined, loading) } /** * 获取用户组的用户列表 */ const getUserGroupUserList: ( resource: ChatUserResourceParams, user_group_id: string, page: pageRequest, username_or_nickname: string, loading?: Ref, ) => Promise>> = (resource, user_group_id, page, username_or_nickname, loading) => { return get( `${prefix}/${resource.resource_type}/${resource.resource_id}/user_group_id/${user_group_id}/${page.current_page}/${page.page_size}`, username_or_nickname ? { username_or_nickname } : undefined, loading, ) } /** * 更新用户组的用户列表 */ const putUserGroupUser: ( resource: ChatUserResourceParams, user_group_id: string, data: putUserGroupUserParams[], loading?: Ref, ) => Promise> = (resource, user_group_id, data, loading) => { return put(`${prefix}/${resource.resource_type}/${resource.resource_id}/user_group_id/${user_group_id}`, data, undefined, loading) } export default { getUserGroupList, getUserGroupUserList, putUserGroupUser }