云端文件下载

This commit is contained in:
2026-06-25 17:48:58 +08:00
parent d284789240
commit 488bebcc87
30 changed files with 5442 additions and 426 deletions

View File

@@ -1,6 +1,6 @@
// 云端基础URL
// const BASE_URL = 'https://cloud.yuxindazhineng.com'
const BASE_URL = 'https://cloudtest.yuxindazhineng.com'
const BASE_URL = 'https://cloud.yuxindazhineng.com'
// const BASE_URL = 'https://cloudtest.yuxindazhineng.com'
// const BASE_URL = 'https://yxdpqj.yuxindazhineng.com'
// 登录请求
@@ -85,8 +85,10 @@ export const getConversationMessages = async (token, conversatio_id) => {
if (res.statusCode === 200) {
const messagesInfo = res.data
if (messagesInfo) {
console.log("工作区id为", messagesInfo.workspace_id);
uni.setStorageSync('workspace_id', messagesInfo.workspace_id)
console.log("工作区id为", messagesInfo.workspace_id || '(无)');
if (messagesInfo.workspace_id) {
uni.setStorageSync('workspace_id', messagesInfo.workspace_id)
}
resolve(messagesInfo.messages)
} else {
const msg = res.data.error || '获取消息出错啦'
@@ -143,7 +145,7 @@ export const addMessageDict = async (token, role, conversation_id, message) => {
})
}
// 获取工作区息(非内容)
// 获取工作区息(非内容)
export const getWorkspaceByConversation = async (token, conversation_id) => {
return new Promise((resolve, reject) => {
uni.request({
@@ -162,11 +164,11 @@ export const getWorkspaceByConversation = async (token, conversation_id) => {
if (workspaceInfo?.success) {
resolve(workspaceInfo.workspace_id)
} else {
const msg = res.data.error || '获取工作区息出错啦'
const msg = res.data.error || '获取工作区息出错啦'
reject(msg)
}
} else {
reject(`获取工作区息失败:${res.statusCode}`)
reject(`获取工作区息失败:${res.statusCode}`)
}
},
fail: (err) => {
@@ -437,7 +439,7 @@ export const daleteWorkspace = (token, workspacesId, path) => {
"file_path": path
},
success: (res) => {
if(res.statusCode === 200){
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.message)
@@ -445,7 +447,7 @@ export const daleteWorkspace = (token, workspacesId, path) => {
const msg = respond?.error || '删除工作区文件出错啦'
reject(msg)
}
}else {
} else {
reject(`删除工作区文件失败:${res.statusCode}`)
}
}
@@ -468,7 +470,7 @@ export const createWorkspaceFolder = (token, workspacesId, path) => {
"dir_path": path
},
success: (res) => {
if(res.statusCode === 200){
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.message)
@@ -476,7 +478,7 @@ export const createWorkspaceFolder = (token, workspacesId, path) => {
const msg = respond?.error || '创建工作区文件夹出错啦'
reject(msg)
}
}else {
} else {
reject(`创建工作区文件夹失败:${res.statusCode}`)
}
}
@@ -484,7 +486,7 @@ export const createWorkspaceFolder = (token, workspacesId, path) => {
})
}
// 获取工作区文URL
// 获取工作区文件的URL
export const getWorkspaceFileURL = (token, workspacesId, path) => {
return new Promise((resolve, reject) => {
uni.request({
@@ -499,7 +501,7 @@ export const getWorkspaceFileURL = (token, workspacesId, path) => {
"file_path": path
},
success: (res) => {
if(res.statusCode === 200){
if (res.statusCode === 200) {
const respond = res.data
// 兼容两种返回格式:{success: true, message: [...]} 或直接返回数组
if (respond.success) {
@@ -510,10 +512,179 @@ export const getWorkspaceFileURL = (token, workspacesId, path) => {
const msg = respond?.error || '获取工作区文URL出错啦'
reject(msg)
}
}else {
} else {
reject(`获取工作区文URL失败${res.statusCode}`)
}
}
})
})
}
}
// 上传文件到工作区手机弃用仅支持pc本地前缀
// export const workspaceUploadFile = (workspacesId,file,path) => {
// return new Promise((resolve, reject) => {
// uni.request({
// url: `${BASE_URL}/workspace/file/upload`,
// method: "POST",
// header: {
// 'Content-Type': 'application/json'
// },
// data: {
// workspaces_id: workspacesId,
// file: file,
// file_path: path,
// overwrite: true
// },
// success: (res) => {
// if(res.statusCode === 200){
// const respond = res.data
// if (respond.success) {
// resolve(respond)Z
// } else {
// const msg = respond?.error || '上传文件到工作区出错啦'
// reject(msg)
// }
// }else {
// reject(`上传文件到工作区失败:${res.statusCode}`)
// }
// }
// })
// })
// }
// 上传用户头像
export const uploadUserAvatar = (token, userId, username, email, avatarURL) => {
return new Promise((resolve, reject) => {
uni.request({
url: `${BASE_URL}/cloud_api/user/file/upload`,
method: "POST",
header: {
'Content-Type': 'application/json'
},
data: {
"access_token": token,
"file": file,
},
success: (res) => {
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.upload_url)
} else {
const msg = respond?.error || '上传用户头像出错啦'
reject(msg)
}
} else {
reject(`上传用户头像失败:${res.statusCode}`)
}
}
})
})
}
// 修改用户信息
export const updateUserInfo = (token, userId, username, email, avatarURL) => {
return new Promise((resolve, reject) => {
uni.request({
url: `${BASE_URL}/cloud_api/update_user_profile`,
method: "POST",
header: {
'Content-Type': 'application/json'
},
data: {
"access_token": token,
"user_id": userId,
"username": username,
"email:": email,
"avatar": avatarURL
},
success: (res) => {
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.message)
} else {
const msg = respond?.error || '修改用户信息出错啦'
reject(msg)
}
} else {
reject(`修改用户信息失败:${res.statusCode}`)
}
}
})
})
}
// ============================云端文件管理=========================
// 获取云端个人/团队文件列表
export const getCloudFileList = (token, type, path = "/", teamId = "") => {
return new Promise((resolve, reject) => {
uni.request({
url: `${BASE_URL}/cloud_api/file/list`,
method: "POST",
header: {
'Content-Type': 'application/json'
},
data: {
"access_token": token,
"path": path,
"type": type,
"team_id": teamId
},
success: (res) => {
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.data)
} else {
const msg = respond?.error || '获取工作区文件目录出错啦'
reject(msg)
}
} else {
reject(`获取工作区文件目录失败:${res.statusCode}`)
}
},
fail: (err) => {
const msg = err.errMsg || '网络错误'
reject(msg)
}
})
})
}
// 下载云端文件通过文件id获取下载url
export const getCloudFileUrl = (token, fileId) => {
return new Promise((resolve, reject) => {
uni.request({
url: `${BASE_URL}/cloud_api/file/download`,
method: "POST",
header: {
'Content-Type': 'application/json'
},
data: {
"access_token": token,
"file_id": fileId,
},
success: (res) => {
if (res.statusCode === 200) {
const respond = res.data
if (respond.success) {
resolve(respond.data.download_url)
} else {
const msg = respond?.error || '获取云端文件url出错啦'
reject(msg)
}
} else {
reject(`获取云端文件url失败${res.statusCode}`)
}
},
fail: (err) => {
const msg = err.errMsg || '网络错误'
reject(msg)
}
})
})
}
// ============================云端数据库=========================