diff --git a/frontend/src/components/Dashboard-AI.vue b/frontend/src/components/Dashboard-AI.vue index 41d7c77..95c17ac 100644 --- a/frontend/src/components/Dashboard-AI.vue +++ b/frontend/src/components/Dashboard-AI.vue @@ -224,10 +224,18 @@ const fetchAIRecommendations = async () => { title: rec.title, url: bid?.url || '', source: bid?.source || '', - confidence: rec.confidence + confidence: rec.confidence, + publishDate: bid?.publishDate } }) + // 按发布时间倒序排列 + recommendations.sort((a: AIRecommendation, b: AIRecommendation) => { + if (!a.publishDate) return 1 + if (!b.publishDate) return -1 + return new Date(b.publishDate).getTime() - new Date(a.publishDate).getTime() + }) + aiRecommendations.value = recommendations // 保存推荐结果到数据库 diff --git a/src/ai/ai.service.ts b/src/ai/ai.service.ts index c3db107..5b670ee 100644 --- a/src/ai/ai.service.ts +++ b/src/ai/ai.service.ts @@ -144,6 +144,13 @@ ${JSON.stringify(bids.map(b => b.title), null, 2)}`; }); } + // 按发布时间倒序排列 + result.sort((a, b) => { + if (!a.publishDate) return 1; + if (!b.publishDate) return -1; + return new Date(b.publishDate).getTime() - new Date(a.publishDate).getTime(); + }); + return result; } catch (error) { this.logger.error('获取最新 AI 推荐失败:', error);