Files
happy-life-star/web-new/src/api/conversation.ts
T

75 lines
1.8 KiB
TypeScript

/**
* 对话相关API接口
*/
import request from '@/utils/request'
import { API_PATHS } from '@/config/constants'
import type {
CreateConversationRequest,
ConversationInfo,
GetUserConversationsRequest,
MessageInfo,
GetUserMessagesRequest,
SearchUserMessagesRequest,
GetRecentMessagesRequest
} from '@/types/api'
export const conversationApi = {
/**
* 创建新对话
*/
create(data: CreateConversationRequest): Promise<ConversationInfo> {
return request.post(API_PATHS.CONVERSATION.CREATE, data, {
showLoading: true,
loadingText: '创建中...'
})
},
/**
* 获取用户对话列表
*/
getUserConversations(params: GetUserConversationsRequest): Promise<PageResponse<ConversationInfo>> {
return request.get(API_PATHS.CONVERSATION.USER_LIST, params)
},
/**
* 删除对话
*/
delete(conversationId: string): Promise<void> {
return request.delete(`${API_PATHS.CONVERSATION.DELETE}/${conversationId}`, {
showLoading: true,
loadingText: '删除中...'
})
}
}
export const messageApi = {
/**
* 获取用户消息列表
*/
getUserMessages(params: GetUserMessagesRequest): Promise<PageResponse<MessageInfo>> {
return request.get(API_PATHS.MESSAGE.USER_PAGE, params)
},
/**
* 搜索用户消息
*/
searchUserMessages(params: SearchUserMessagesRequest): Promise<PageResponse<MessageInfo>> {
return request.get(API_PATHS.MESSAGE.USER_SEARCH, params)
},
/**
* 获取最近消息
*/
getRecentMessages(params: GetRecentMessagesRequest): Promise<MessageInfo[]> {
return request.get(API_PATHS.MESSAGE.USER_RECENT, params)
},
/**
* 获取消息详情
*/
getMessageDetail(messageId: string): Promise<MessageInfo> {
return request.get(`${API_PATHS.MESSAGE.DETAIL}/${messageId}`)
}
}