优化缓存命中
This commit is contained in:
@@ -168,8 +168,8 @@ function handleAIResult(aiResult, roomId, username, originalText, attachments) {
|
||||
}
|
||||
|
||||
if (aiResult.action === 'query') {
|
||||
storeAndBroadcastText(roomId, '小财', '🔍 正在查询采购数据,请稍候...');
|
||||
const purchaseData = db.prepare('SELECT item, amount, payment_method, status FROM purchases WHERE room_id = ? ORDER BY created_at DESC').all(roomId).map(p => p.item + ' ' + p.amount + ' ' + (p.payment_method||'') + ' ' + p.status).join('\n');
|
||||
broadcastToRoom(roomId, { type: 'query_pending', text: '🔍 正在查询采购数据,请稍候...' });
|
||||
const purchaseData = db.prepare('SELECT item, amount, payment_method, status, created_at FROM purchases WHERE room_id = ? ORDER BY created_at DESC').all(roomId).map(p => p.created_at + ' ' + p.item + ' ¥' + p.amount + ' ' + (p.payment_method||'') + ' ' + p.status).join('\n');
|
||||
const summaryPrompt = '根据以下采购记录,用自然语言回答用户查询"' + originalText + '"。采购记录:\n' + (purchaseData || '暂无记录');
|
||||
callDeepSeekForSummary(summaryPrompt, username).then(reply => { storeAndBroadcastText(roomId, '小财', reply); addToHistory(roomId, 'assistant', reply); });
|
||||
return;
|
||||
|
||||
@@ -170,6 +170,15 @@ function clearTempBubble() {
|
||||
tempEls.forEach(function(el) { el.remove(); });
|
||||
}
|
||||
|
||||
function showTempBubble(text) {
|
||||
clearTempBubble();
|
||||
var tempId = 'temp_' + Date.now();
|
||||
var tempMsg = { id: tempId, user: '小财', text: text, attachments: [], timestamp: '', isTemp: true };
|
||||
Store.messageCache.push(tempMsg);
|
||||
messagesContainer.insertAdjacentHTML('beforeend', renderMessageHTML(tempMsg));
|
||||
scrollToBottom();
|
||||
}
|
||||
|
||||
// 双指缩放 + 拖拽
|
||||
function initPinchZoom(img) {
|
||||
var scale = 1, startDist = 0, startScale = 1;
|
||||
|
||||
@@ -19,6 +19,8 @@ function initWebSocket() {
|
||||
const room = Store.rooms.find(r => r.id === data.room_preview.room_id);
|
||||
if (room) { room.last_message = data.room_preview.last_message; room.last_time = data.room_preview.last_time; renderChatList(); }
|
||||
}
|
||||
} else if (data.type === 'query_pending') {
|
||||
if (Store.currentRoom === roomId) showTempBubble(data.text);
|
||||
} else if (data.type === 'purchase_updated') {
|
||||
if (Store.currentRoom) loadPurchases();
|
||||
updateSummaryPreview();
|
||||
|
||||
Reference in New Issue
Block a user