235 lines
5.6 KiB
JavaScript
235 lines
5.6 KiB
JavaScript
const BASE_Friend_URL = 'http://chat.yuxindazhineng.com'
|
||
|
||
// 获取好友列表
|
||
export const getChatFriend = async (sendId) => {
|
||
return new Promise((resolve, reject) => {
|
||
uni.request({
|
||
url: `${BASE_Friend_URL}/api/chatList/getChatFriend`,
|
||
method: "POST",
|
||
header: {
|
||
'Content-Type': 'application/json'
|
||
},
|
||
data: {
|
||
size: 500,
|
||
current: 1,
|
||
sendId: sendId
|
||
},
|
||
success: (res) => {
|
||
if (res.statusCode === 200) {
|
||
const respond = res.data
|
||
console.log("获取到的好友列表消息", respond);
|
||
if (respond?.code === 0 || respond?.msg === '成功') {
|
||
const friendList = respond.data?.records
|
||
if (friendList.length > 0) {
|
||
const receiverId = friendList[0].receiver
|
||
// 再加一层判断,防止 receiver 为空
|
||
if (receiverId) {
|
||
uni.setStorageSync('receiverId', receiverId)
|
||
}
|
||
}
|
||
resolve(friendList)
|
||
} else {
|
||
const msg = res.data.error || '获取好友列表出错啦'
|
||
reject(msg)
|
||
}
|
||
|
||
} else {
|
||
reject(`获取好友列表失败:${res.statusCode}`)
|
||
}
|
||
},
|
||
fail: (err) => {
|
||
const msg = err.errMsg || '网络错误'
|
||
reject(msg)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
|
||
// 获取群聊列表
|
||
export const getGroup = async (sendId) => {
|
||
return new Promise((resolve, reject) => {
|
||
uni.request({
|
||
url: `${BASE_Friend_URL}/api/group/getGroup`,
|
||
method: "POST",
|
||
header: {
|
||
'Content-Type': 'application/json'
|
||
},
|
||
data: {
|
||
size: 500,
|
||
current: 1,
|
||
contactId: sendId
|
||
},
|
||
success: (res) => {
|
||
if (res.statusCode === 200) {
|
||
const respond = res.data
|
||
if (respond?.code === 0 || respond?.msg === '成功') {
|
||
const groupList = respond.data?.records
|
||
resolve(groupList)
|
||
} else {
|
||
const msg = res.data.error || '获取群聊列表出错啦'
|
||
reject(msg)
|
||
}
|
||
|
||
} else {
|
||
reject(`获取群聊列表失败:${res.statusCode}`)
|
||
}
|
||
},
|
||
fail: (err) => {
|
||
const msg = err.errMsg || '网络错误'
|
||
reject(msg)
|
||
}
|
||
})
|
||
})
|
||
|
||
}
|
||
|
||
// 获取与好友的对话内容
|
||
export const getFriendMessages = async (sessionId, current = 1) => {
|
||
console.log('请求的好友消息id:', sessionId);
|
||
return new Promise((resolve, reject) => {
|
||
uni.request({
|
||
url: `${BASE_Friend_URL}/api/message/list`,
|
||
method: 'POST',
|
||
data: {
|
||
"sessionId": sessionId,
|
||
"size": 100,
|
||
"current": current,
|
||
"beginTime": "",
|
||
"endTime": ""
|
||
},
|
||
header: {
|
||
'Content-Type': 'application/json'
|
||
},
|
||
success: (res) => {
|
||
if (res.statusCode === 200) {
|
||
const messagesInfo = res.data
|
||
// console.log("获取到的好友信息:",messagesInfo);
|
||
if (messagesInfo.code === 0) {
|
||
// uni.setStorageSync('currentSessionId', messagesInfo?.data
|
||
// ?.sessionId)
|
||
const messageList = messagesInfo?.data?.records || [];
|
||
const reversedList = messageList.reverse();
|
||
resolve(reversedList);
|
||
// resolve(messagesInfo?.data?.records)
|
||
} else {
|
||
const msg = res.data.error || '获取好友消息出错啦'
|
||
reject(msg)
|
||
}
|
||
} else {
|
||
reject(`请求失败:${res.statusCode}`)
|
||
}
|
||
|
||
},
|
||
fail: (err) => {
|
||
const msg = err.errMsg || '网络错误'
|
||
reject(msg)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
|
||
|
||
// 获取群聊的对话内容
|
||
export const getGroupMessages = async (groupId, current = 1) => {
|
||
console.log('请求的群聊消息id:', groupId);
|
||
return new Promise((resolve, reject) => {
|
||
uni.request({
|
||
url: `${BASE_Friend_URL}/api/group/getGroupList`,
|
||
method: 'POST',
|
||
data: {
|
||
"current": current,
|
||
"size": 100,
|
||
"groupId": groupId,
|
||
"beginTime": "",
|
||
"endTime": ""
|
||
},
|
||
header: {
|
||
'Content-Type': 'application/json'
|
||
},
|
||
success: (res) => {
|
||
if (res.statusCode === 200) {
|
||
const messagesInfo = res.data
|
||
console.log("获取到的群聊信息:", messagesInfo);
|
||
if (messagesInfo.code === 0) {
|
||
// uni.setStorageSync('currentSessionId', messagesInfo?.data
|
||
// ?.groupId)
|
||
const messageList = messagesInfo?.data?.records || []
|
||
const reversedList = messageList.reverse()
|
||
resolve(reversedList)
|
||
// resolve(messagesInfo?.data?.records)
|
||
} else {
|
||
const msg = res.data.error || '获取群聊消息出错啦'
|
||
reject(msg)
|
||
}
|
||
} else {
|
||
reject(`请求失败:${res.statusCode}`)
|
||
}
|
||
|
||
},
|
||
fail: (err) => {
|
||
const msg = err.errMsg || '网络错误'
|
||
reject(msg)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
|
||
// 获取群成员
|
||
export const getGroupMemberList = async (groupId) => {
|
||
return new Promise((resolve, reject) => {
|
||
uni.request({
|
||
url: `${BASE_Friend_URL}/api/group/getGroupMemberList`,
|
||
method: "POST",
|
||
header: {
|
||
'Content-Type': 'application/json'
|
||
},
|
||
data: {
|
||
"groupId": groupId,
|
||
"current": 1,
|
||
"size": 100
|
||
},
|
||
success: (res) => {
|
||
if(res.statusCode ===200){
|
||
const respond = res.data
|
||
if(respond.code === 0){
|
||
const groupMemberList = respond.data.records
|
||
resolve(groupMemberList)
|
||
} else {
|
||
const msg = res.data.error || '获取群成员出错啦'
|
||
reject(msg)
|
||
}
|
||
|
||
}else{
|
||
reject(`请求群成员失败:${res.statusCode}`)
|
||
}
|
||
},
|
||
fail: (err) => {
|
||
const msg = err.errMsg || '网络错误'
|
||
reject(msg)
|
||
}
|
||
})
|
||
})
|
||
}
|
||
|
||
// 上传文件
|
||
export const uploadFileToServer = (filePath) => {
|
||
return new Promise((resolve, reject) => {
|
||
uni.uploadFile({
|
||
url: `${BASE_Friend_URL}/api/file/upload`,
|
||
filePath: filePath,
|
||
name: 'file',
|
||
success: (res) => {
|
||
const data = JSON.parse(res.data)
|
||
if (data.code === 0) {
|
||
resolve(data.data)
|
||
} else {
|
||
reject(data.msg || '上传失败')
|
||
}
|
||
},
|
||
fail: (err) => {
|
||
reject(err.errMsg || '网络错误')
|
||
}
|
||
})
|
||
})
|
||
}
|