// AI 行程生成:本地规则引擎(可替换为真实大模型 API) (function () { // 一些常见城市的示例景点库 const SPOT_DB = { '杭州': { '自然风光': ['西湖', '西溪湿地', '九溪烟树'], '历史文化': ['灵隐寺', '雷峰塔', '南宋御街'], '美食购物': ['河坊街', '武林夜市', '湖滨银泰'], '亲子家庭': ['杭州动物园', '极地海洋公园', '少年儿童公园'] }, '北京': { '自然风光': ['颐和园', '香山公园', '奥林匹克森林公园'], '历史文化': ['故宫', '天坛', '八达岭长城'], '美食购物': ['南锣鼓巷', '王府井', '簋街'], '亲子家庭': ['北京动物园', '欢乐谷', '中国科技馆'] }, '成都': { '自然风光': ['青城山', '都江堰', '西岭雪山'], '历史文化': ['武侯祠', '杜甫草堂', '金沙遗址'], '美食购物': ['宽窄巷子', '锦里', '春熙路'], '亲子家庭': ['成都动物园', '大熊猫繁育研究基地', '欢乐谷'] }, '上海': { '自然风光': ['外滩', '世纪公园', '佘山'], '历史文化': ['豫园', '城隍庙', '中共一大会址'], '美食购物': ['南京路', '新天地', '田子坊'], '亲子家庭': ['上海动物园', '迪士尼乐园', '上海科技馆'] } }; // 默认通用景点(当城市不在库中时使用) const DEFAULT_SPOTS = { '自然风光': ['城市公园', '滨江步道', '近郊山景'], '历史文化': ['博物馆', '老城区', '历史街区'], '美食购物': ['美食街', '商业中心', '夜市'], '亲子家庭': ['动物园', '科技馆', '游乐场'] }; // 生成行程计划 function generatePlan(dest, days, pref) { const city = (dest || '').trim(); const db = SPOT_DB[city] || DEFAULT_SPOTS; const pool = db[pref] || DEFAULT_SPOTS[pref] || DEFAULT_SPOTS['自然风光']; const lines = []; lines.push(`📍 目的地:${city || '未指定'}`); lines.push(`🗓️ 天数:${days} 天`); lines.push(`🎯 偏好:${pref}`); lines.push(''); for (let d = 1; d <= days; d++) { lines.push(`—— 第 ${d} 天 ——`); const morning = pool[(d - 1) % pool.length]; const afternoon = pool[(d) % pool.length]; const evening = pool[(d + 1) % pool.length]; lines.push(`上午:游览「${morning}」`); lines.push(`下午:前往「${afternoon}」`); lines.push(`晚上:在「${evening}」附近用餐 / 散步`); lines.push(''); } lines.push('💡 提示:可在地图上点击添加自定义景点并标注状态。'); return lines.join('\n'); } // 对外接口(异步,方便未来替换为真实 API) function generatePlanAsync(dest, days, pref) { return new Promise(resolve => { setTimeout(() => resolve(generatePlan(dest, days, pref)), 400); }); } window.AI = { generatePlanAsync }; })();