feat:聊天后台撤回消息

fix:聊天禁用bug
This commit is contained in:
dzc committed 2026-11-03 19:09:09 +08:00
1 parent 57a35f2f9d
commit a9bac9d3bf
12 files changed
+2709 -17

No files matched your search

+75 -4
View File
@@ -1,8 +1,80 @@
import request from '@/config/axios'
export type ChatUserId = number | string
export interface ConversationUser {
id: ChatUserId
nickname?: string
username?: string
avatar?: string
}
export interface PrivateMessage {
id: ChatUserId
sendId: ChatUserId
recvId: ChatUserId
sendUserName?: string
recvUserName?: string
content?: string | null
type: number
status: number
sendTime: string | number
}
export interface ChatConversation {
userA: ConversationUser
userB: ConversationUser
messageCount: number
lastMessage: PrivateMessage
}
export interface ConversationPageRequest {
pageNum: number
pageSize: number
userKeyword?: string
peerKeyword?: string
lastSendTimeList?: [number, number]
}
export interface PrivateMessagePageRequest {
pageNum: number
pageSize: number
sendId: ChatUserId
recvId: ChatUserId
content?: string
sendTimeList?: [number, number]
}
export interface ChatPageResult<T> {
list: T[]
total: number
}
export interface PrivateMessageModerateRequest {
messageId: ChatUserId
reason?: string
}
export interface PrivateMessageModerateResult {
messageId: ChatUserId
status: 2
recallMessageId: ChatUserId
alreadyHidden: boolean
notificationSent: boolean
}
export const moderateMessage = (data: PrivateMessageModerateRequest) =>
request.post<PrivateMessageModerateResult>({ url: '/chat/private-msg/moderate', data })
export const conversationPage = (data: ConversationPageRequest) =>
request.post<ChatPageResult<ChatConversation>>({
url: '/chat/private-msg/conversation/page',
data
})
// 查询私聊消息列表
export const page = async (data: any) => {
return await request.post({
export const page = async <T = any>(data: any) => {
return await request.post<T>({
url: '/chat/private-msg/page',
data: data
})
@@ -11,7 +83,7 @@ export const page = async (data: any) => {
// 获取私聊详细信息
export const getInfo = async (id: any) => {
return await request.get({
url: '/chat/private-msg/getById?id=' + id,
url: '/chat/private-msg/getById?id=' + id
})
}
@@ -22,4 +94,3 @@ export const dailyCount = async (params: any) => {
params: params
})
}