import request from '@/utils/ai_request' /** * 获取聊天历史记录 * @param {Object} params 请求参数 * @param {string} params.conversationId 会话ID * @param {string} params.user 用户ID * @param {number} [params.limit=20] 返回记录数量 * @param {string} [params.beforeId] 获取此ID之前的记录 * @returns {Promise} 包含历史记录的Promise */ export const getHistory = ({ conversationId, user, limit = 20, beforeId }) => { const params = { conversationId, user, limit } if (beforeId) { params.beforeId = beforeId } return request({ url: '/aitutor/aichat/getMessagesToUser', method: 'get', params }) } /** * 发送反馈(点赞/点踩) * @param {Object} params 请求参数 * @param {string} params.messageId 消息ID * @param {number} params.action 1-点赞 0-点踩 * @param {string} params.user 用户ID * @returns {Promise} 包含操作结果的Promise */ export const sendFeedback = ({ messageId, action, user }) => { return request({ url: '/aitutor/aichat/feedback', method: 'post', data: { message_id: messageId, rating: action === 1 ? 'like' : 'dislike', user } }) } /** * 上传文件 * @param {FormData} formData 包含文件的FormData * @param {string} user 用户ID * @returns {Promise} 包含文件URL的Promise */ export const uploadFile = (formData, user) => { formData.append('user', user) return request({ url: '/aitutor/aichat/files/upload', method: 'post', data: formData, headers: { 'Content-Type': 'multipart/form-data' } }) } /** * 创建新会话 * @param {string} user 用户ID * @param {string} title 会话标题 * @returns {Promise} 包含新会话ID的Promise */ export const createConversation = (user, title) => { return request({ url: '/aitutor/aichat/conversation/create', method: 'post', data: { user, title } }) } /** * 删除会话 * @param {string} conversationId 会话ID * @param {string} user 用户ID * @returns {Promise} 包含操作结果的Promise */ export const deleteConversation = (conversationId, user) => { return request({ url: '/aitutor/aichat/conversation/delete', method: 'post', data: { conversation_id: conversationId, user } }) }