203 lines
4.5 KiB
TypeScript
203 lines
4.5 KiB
TypeScript
import { get, post, Delete, put } from '@/utils/axios'
|
|
import {
|
|
TpageReq,
|
|
TpageRes,
|
|
TcreateReq,
|
|
TlistRes,
|
|
TGetChannelPostsRes,
|
|
PageResultPostsCommentRespVO,
|
|
sendSingleChatReq,
|
|
PageResultSessionRespVO,
|
|
PageResultMessageRespVO,
|
|
ChannelRespVO,
|
|
MemberUserRespDTO,
|
|
SingleMessageVo,
|
|
} from './types'
|
|
|
|
/**
|
|
* 获得频道帖子分页
|
|
* @return {Promise}
|
|
*/
|
|
export const page = (params: TpageReq) => {
|
|
return get<IResponse<TpageRes>>({
|
|
url: '/prod-api/app-api/business/posts/page',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 创建帖子
|
|
* @return {Promise}
|
|
*/
|
|
export const create = (params: TcreateReq) => {
|
|
return post<IResponse<number>>({
|
|
url: '/prod-api/app-api/business/posts/create',
|
|
data: params,
|
|
})
|
|
}
|
|
/**
|
|
* 获得论坛频道列表
|
|
* @return {Promise}
|
|
*/
|
|
export const list = () => {
|
|
return get<IResponse<TlistRes[]>>({
|
|
url: '/prod-api/app-api/business/channel/list',
|
|
})
|
|
}
|
|
/**
|
|
* 获得论坛频道列表
|
|
* @return {Promise}
|
|
*/
|
|
export const getChannelPosts = (params: { id: number }) => {
|
|
return get<IResponse<TGetChannelPostsRes[]>>({
|
|
url: '/prod-api/app-api/business/posts/get',
|
|
params,
|
|
})
|
|
}
|
|
/**
|
|
* 删除频道帖子
|
|
* @return {Promise}
|
|
*/
|
|
export const postsDelete = (params: { id: number }) => {
|
|
return Delete<IResponse<boolean>>({
|
|
url: '/prod-api/app-api/business/posts/delete',
|
|
params,
|
|
})
|
|
}
|
|
/**
|
|
* 获取帖子详情
|
|
* @return {Promise}
|
|
*/
|
|
export const getChannelDetail = (params: { id: string }) => {
|
|
return get<IResponse<TGetChannelPostsRes>>({
|
|
url: '/prod-api/app-api/business/posts/get',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 获取帖子评论列表
|
|
* @return {Promise}
|
|
*/
|
|
export const postscommentpage = (params: { postsId: string; pageNo: number; pageSize: number }) => {
|
|
return get<IResponse<PageResultPostsCommentRespVO>>({
|
|
url: '/prod-api/app-api/business/posts-comment/page',
|
|
params,
|
|
})
|
|
}
|
|
/**
|
|
* 创建帖子评论
|
|
* @return {Promise}
|
|
*/
|
|
export const createPostsComment = (params: { postsId: string; content: string; commentId?: string }) => {
|
|
return post<IResponse<number>>({
|
|
url: '/prod-api/app-api/business/posts-comment/create',
|
|
data: params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 发送单聊信息
|
|
* @return {Promise}
|
|
*/
|
|
export const sendSingleChat = (params: sendSingleChatReq) => {
|
|
return post<IResponse<any>>({
|
|
url: '/prod-api/app-api/mqtt/message/send/single',
|
|
data: params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 发送客服消息
|
|
*/
|
|
export const sendKefuMessage = (params: SingleMessageVo) => {
|
|
return post<IResponse<any>>({
|
|
url: '/prod-api/app-api/mqtt/message/send/kefu',
|
|
data: params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 获得消息记录分页
|
|
*/
|
|
export const getMessagePage = (params: { pageNo: number; pageSize: number; fromId?: number; msgType?: number; topic: string }) => {
|
|
return get<IResponse<PageResultMessageRespVO>>({
|
|
url: '/prod-api/app-api/mqtt/message/page',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 会话列表
|
|
*/
|
|
export const conversationList = () => {
|
|
return get<IResponse<PageResultSessionRespVO[]>>({
|
|
url: '/prod-api/app-api/mqtt/session/list',
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 获取聊天记录
|
|
*/
|
|
export const getChatDetail = (params: { sessionId: number; pageNo: number; pageSize: number }) => {
|
|
return get<IResponse<PageResultMessageRespVO>>({
|
|
url: '/prod-api/app-api/mqtt/message/pageBySession',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 清空未读信息
|
|
*/
|
|
export const clearUnreadMessage = (params: { id: number }) => {
|
|
return put<IResponse<boolean>>({
|
|
url: '/prod-api/app-api/mqtt/session/clear',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 获得论坛频道
|
|
*/
|
|
export const getChannelLunTanDetail = (params: { id: string }) => {
|
|
return get<IResponse<ChannelRespVO>>({
|
|
url: '/prod-api/app-api/business/channel/get',
|
|
params,
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 创建论坛关注
|
|
*/
|
|
export const createChannelFollow = (params: { channelId: string }) => {
|
|
return post<IResponse<boolean>>({
|
|
url: '/prod-api/app-api/business/channel-follow/create',
|
|
data: params,
|
|
headers: {
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 删除论坛关注
|
|
*/
|
|
export const deleteChannelFollow = (params: { channelId: string }) => {
|
|
return Delete<IResponse<boolean>>({
|
|
url: '/prod-api/app-api/business/channel-follow/delete',
|
|
params,
|
|
headers: {
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
},
|
|
})
|
|
}
|
|
|
|
/**
|
|
* 根据群组ID获取群组成员
|
|
*/
|
|
export const getGroupMembers = (params: { channelId: string }) => {
|
|
return get<IResponse<MemberUserRespDTO[]>>({
|
|
url: `/prod-api/app-api/mqtt/session/users/${params.channelId}`,
|
|
})
|
|
}
|