ai对话分页

This commit is contained in:
2026-08-05 11:42:57 +08:00
parent fbda01a624
commit e0d7f93c80
5 changed files with 799 additions and 105 deletions

View File

@@ -29,7 +29,11 @@ export const login = async (username, password) => {
}
} else {
if (String(res.statusCode).startsWith('5')) {
reject({ serverError: true, code: res.statusCode, message: '服务器升级中,请稍后再试' })
reject({
serverError: true,
code: res.statusCode,
message: '服务器升级中,请稍后再试'
})
} else {
reject(`请求失败:${res.statusCode}`)
}
@@ -73,15 +77,16 @@ export const getUserConversations = async (token) => {
}
// 获取与AI的对话内容
export const getConversationMessages = async (token, conversatio_id) => {
export const getConversationMessages = async (token, conversation_id, size, page_number) => {
return new Promise((resolve, reject) => {
uni.request({
url: `${BASE_URL}/get_conversation_messages`,
method: 'POST',
data: {
"access_token": token,
"login_type": "phone",
"conversation_id": conversatio_id
"conversation_id": conversation_id,
"size": 20,
"current": page_number
},
header: {
'Content-Type': 'application/json'
@@ -90,14 +95,15 @@ export const getConversationMessages = async (token, conversatio_id) => {
if (res.statusCode === 200) {
const messagesInfo = res.data
if (messagesInfo) {
console.log("返回数据为",messagesInfo);
console.log("工作区id为", messagesInfo.workspace_id || '(无)');
if (messagesInfo.workspace_id) {
uni.setStorageSync('workspace_id', messagesInfo.workspace_id)
}
const filtered = (messagesInfo.messages || []).filter(
m => m.role !== 'tool'
)
resolve(filtered)
m => m.role !== 'tool'
)
resolve(filtered)
} else {
const msg = res.data.error || '获取消息出错啦'
reject(msg)
@@ -556,9 +562,9 @@ export const workspaceUploadFileByURL = (token, workspacesId, urls, dirPath) =>
const failedItems = (respond.results || [])
.filter(r => !r.success)
.map(r => r.error || '未知错误');
const msg = failedItems.length > 0
? `上传失败 ${respond.failed_count}/${respond.total_files}${failedItems[0]}`
: (respond.summary || respond?.error || '上传文件到工作区出错啦');
const msg = failedItems.length > 0 ?
`上传失败 ${respond.failed_count}/${respond.total_files}${failedItems[0]}` :
(respond.summary || respond?.error || '上传文件到工作区出错啦');
reject(msg);
}
} else {
@@ -585,14 +591,19 @@ export const uploadFileToShortStorage = (workspacesId, files, filePath) => {
// 构建 files 数组供 uni.uploadFile 使用
const uploadFiles = fileList.map((file) => {
const fileUri = typeof file === 'string' ? file : (file.tempFilePath || file.path || file);
const fileUri = typeof file === 'string' ? file : (file.tempFilePath || file.path ||
file);
return {
name: 'files',
uri: fileUri
};
});
console.log('uploadFileToShortStorage 参数:', { workspacesId, fileCount: uploadFiles.length, filePath });
console.log('uploadFileToShortStorage 参数:', {
workspacesId,
fileCount: uploadFiles.length,
filePath
});
uni.uploadFile({
url: `${BASE_URL}/cloud_api/file/temp/upload`,
@@ -614,9 +625,13 @@ export const uploadFileToShortStorage = (workspacesId, files, filePath) => {
resolve(respond);
} else if (respond.success) {
// 兼容 { success: true, url: "..." } 格式
resolve([{ url: respond.url || respond.message, success: true }]);
resolve([{
url: respond.url || respond.message,
success: true
}]);
} else {
const msg = respond?.error || respond?.message || '上传文件到短存云端获取URL出错啦';
const msg = respond?.error || respond?.message ||
'上传文件到短存云端获取URL出错啦';
reject(msg);
}
} catch (e) {
@@ -1721,26 +1736,30 @@ export const conversationMessageDownload = (token, workspacesId, localUrl) => {
// 智能体
// 获取智能体列表
export const getAgentList = (token) =>{
return new Promise((resolve,reject)=>{
export const getAgentList = (token) => {
return new Promise((resolve, reject) => {
uni.request({
url:`${BASE_URL}/cloud_api/agent/list`,
method:"POST",
header:{'Content-Type':'application/json'},
data:{"access_token":token},
url: `${BASE_URL}/cloud_api/agent/list`,
method: "POST",
header: {
'Content-Type': 'application/json'
},
data: {
"access_token": token
},
success: (res) => {
if(res.statusCode === 200){
if (res.statusCode === 200) {
const respond = res.data;
if(respond.success){
if (respond.success) {
resolve(respond.data)
} else {
const msg = '获取智能体列表出错啦';
reject(msg);
}
}else{
} else {
reject(`获取智能体列表失败:${res.statusCode}`)
}
}
})
})
}
}