feat: 改进标签系统 — 新增品类/费用/强度/预约标签,timeSlot 参与选活动

- IdeaCategory 扩展 7→9,新增 experience(体验)和 nature(自然)
- 替换 outdoor boolean 为 costLevel/intensity/needsBooking 三个高价值字段
- AI 标注 prompt 同步更新,行程规划新增强度交替、费用平衡、预约提醒原则
- selectIdeasForSlots 重写为四优先级:timeSlot+category > category > timeSlot > 任意
- 前端想法卡片展示费用/强度/预约标签
This commit is contained in:
2026-03-02 00:03:35 +08:00
parent bc2b0e40c6
commit 93499867d5
10 changed files with 160 additions and 43 deletions
+3 -1
View File
@@ -30,7 +30,9 @@ interface BlindboxPlanProps {
function guessCategory(activity: string): string | null {
const lower = activity.toLowerCase();
if (/吃|餐|饭|火锅|烧烤|面|菜|厨|食/.test(lower)) return "dining";
if (/公园|山|湖|海|户外|骑|徒步|露营/.test(lower)) return "outdoor";
if (/手作|工坊|烘焙|插花|陶艺|DIY|体验/.test(lower)) return "experience";
if (/露营|徒步|赶海|农场|自然|野|营地/.test(lower)) return "nature";
if (/公园|山|湖|海|户外|骑/.test(lower)) return "outdoor";
if (/电影|KTV|密室|游戏|桌游|剧/.test(lower)) return "entertainment";
if (/逛街|购物|商场|买/.test(lower)) return "shopping";
if (/运动|健身|球|跑|游泳|瑜伽/.test(lower)) return "sports";