fix issues

This commit is contained in:
2026-07-22 17:50:21 +08:00
parent 84bd6efd2f
commit 5c97060a52
3 changed files with 23 additions and 9 deletions

View File

@@ -44,15 +44,20 @@ router.post('/:roomId/messages', authMiddleware, async (req, res) => {
try {
const history = getHistory(roomId);
const historyMessages = history.map(e => ({ role: e.role, content: e.content }));
const aiResponse = await analyzeWithDeepSeek(text || '', historyMessages, username, req.user.isAdmin);
const aiResponse = await analyzeWithDeepSeek(text || '', historyMessages, username, req.user.isAdmin, roomId);
if (aiResponse && aiResponse.action !== 'ignore') {
handleAIResult(aiResponse, roomId, username, text || '', attachments || []);
}
} catch (e) { console.error('AI 分析失败:', e); }
});
async function analyzeWithDeepSeek(text, historyMessages, username, isAdmin) {
const systemPrompt = buildSystemPrompt(username, isAdmin);
async function analyzeWithDeepSeek(text, historyMessages, username, isAdmin, roomId) {
// 注入当前房间采购清单上下文
const purchases = db.prepare("SELECT item, quantity, amount, status, created_at FROM purchases WHERE room_id = ? ORDER BY created_at DESC LIMIT 10").all(roomId);
const purchaseContext = purchases.length
? `\n📋 当前房间采购清单最近10条\n${purchases.map(p => `- ${p.item} | ×${p.quantity} | ¥${p.amount} | ${p.status} | ${p.created_at}`).join('\n')}`
: '';
const systemPrompt = buildSystemPrompt(username, isAdmin) + purchaseContext;
const messages = [
{ role: 'system', content: systemPrompt },
...historyMessages.slice(-30),