This commit is contained in:
2022-02-11 15:29:12 +08:00
78 changed files with 4192 additions and 3872 deletions

View File

@@ -11,6 +11,13 @@ import {
// 获取好友列表
const getFriends = () => {
return request({
url: 'im/friends',
}, true)
}
// 获取好友列表
const getFriendsLetter = () => {
return request({
url: 'im/friends/letter',
}, true)
@@ -85,62 +92,98 @@ const pedingFriend = (recipient) => {
})
}
/**
* 好友申请数量
*/
const getPendingCount = () => {
// 以下是群组相关业务的接口
const getMyGroups = () => {
return request({
url: 'im/friends/pending/count'
url: 'im/groups'
})
}
/**
* 上传聊天附件
* 图片
* 语音
* 视频
* 获取群信息,包含基础信息和 14 个用户
*/
// 基础配置
const config = {
apiUrl: 'http://api.zh.shangkelian.cn/api/', // 正式环境
timeout: 60000
}
const uploadMessageFile = (file, type) => {
config.header = {
'Accept': 'application/json',
'Authorization': store.getters.getToken || ''
}
return new Promise((resolve, reject) => {
uni.uploadFile({
url: config.apiUrl + 'im/upload',
filePath: file,
name: 'upload',
formData: {
type
},
header: config.header || {},
success: (res) => {
if (res.statusCode === 200) {
let updData = JSON.parse(res.data)
if (updData.status_code === 200) {
resolve(updData.data)
} else {
reject(updData)
}
}
},
fail: (err) => {
console.log('ERR', err);
}
})
const getGroupInfo = (groupId) => {
return request({
url: 'im/groups/' + groupId
})
}
const getGroupUsers = (groupId) => {
return request({
url: 'im/groups/' + groupId + '/users'
})
}
const getGroupAnnouncements = (groupId) => {
return request({
url: 'im/groups/' + groupId + '/announcements'
})
}
const createGroupAnnouncement = (groupId, content) => {
return request({
method: 'POST',
url: 'im/groups/' + groupId + '/announcements',
data: {
content: content
}
})
}
const deleteGroupAnnouncement = (groupId, announcementId) => {
return request({
method: 'DELETE',
url: 'im/groups/' + groupId + '/announcements/' + announcementId
})
}
/**
* 创建群聊
*/
const createGroup = (data) => {
return request({
method: 'POST',
url: 'im/groups',
data: data
})
}
const updateGroup = (groupId, data) => {
return request({
method: 'PUT',
url: 'im/groups/' + groupId,
data: data
})
}
/**
* 搜索群聊
*/
const searchGroup = (name) => {
return request({
url: 'im/groups/search?name=' + name
})
}
const joinGroup = (groupId) => {
return request({
method: 'POST',
url: 'im/groups/' + groupId + '/join'
})
}
const quitGroup = (groupId) => {
return request({
method: 'POST',
url: 'im/groups/' + groupId + '/quit'
})
}
export {
getImToken,
deleteFriend,
getFriends,
getFriendsLetter,
getUserInfo,
getFriendInfo,
getPedings,
@@ -148,6 +191,15 @@ export {
rejectFriend,
searchFriend,
pedingFriend,
getPendingCount,
uploadMessageFile
getMyGroups,
createGroup,
updateGroup,
getGroupInfo,
getGroupUsers,
getGroupAnnouncements,
createGroupAnnouncement,
deleteGroupAnnouncement,
searchGroup,
joinGroup,
quitGroup
}