feat: 完善订单班路由系统,支持全部12个订单班
详细说明: - 更新routes.yaml配置,将所有订单班状态设为completed - 重构app.js静态文件路由,使用循环简化代码 - 更新订单班图标映射,匹配实际目录名称 - 修复订单班路由跳转,支持以下订单班: * wenlu(文旅) - 会展策划 * food(食品) - 轻食经营 * finance(财经商贸) - 电商运营 * health(大健康) - 智慧养老 * chemical(化工) - 废水处理 * environmental(环保) - 水质监测 * transportation(交通物流) - 冷链物流 * energy(能源) - 光伏发电 * visual-design(视觉设计) - 宣传片策划 * civil(土木) - 室内设计 * developer(智能开发) - AI检测 * manufacturing(智能制造) - 系统集成 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -107,7 +107,9 @@
|
||||
"Bash(if [ -f \"/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/web_frontend/web_result/order-classes/chemical/images/$img\" ])",
|
||||
"Bash(then)",
|
||||
"Bash(else)",
|
||||
"Bash(xxd:*)"
|
||||
"Bash(xxd:*)",
|
||||
"Bash(open \"http://localhost:4155/order-classes/civil/\")",
|
||||
"Bash(file:*)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": [],
|
||||
|
||||
40
.serena/memories/design_guidelines.md
Normal file
40
.serena/memories/design_guidelines.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# 设计规范 - 图标使用指南
|
||||
|
||||
## 严格禁止使用emoji
|
||||
|
||||
**规则**: 在所有HTML文件中,必须使用Lucide SVG图标代替emoji。
|
||||
|
||||
**正确格式**:
|
||||
```html
|
||||
<i data-lucide="icon-name"></i>
|
||||
```
|
||||
|
||||
**参考实现**: 食品订单班 (food order class) 的实现方式
|
||||
|
||||
**常用图标映射**:
|
||||
- 🏗️ → `<i data-lucide="building-2"></i>`
|
||||
- 🏠 → `<i data-lucide="home"></i>`
|
||||
- 🛏️ → `<i data-lucide="bed"></i>`
|
||||
- 📚 → `<i data-lucide="book-open"></i>`
|
||||
- 🔧 → `<i data-lucide="settings"></i>` 或 `<i data-lucide="wrench"></i>`
|
||||
- 📏 → `<i data-lucide="ruler"></i>`
|
||||
- 🎨 → `<i data-lucide="palette"></i>`
|
||||
- ⚡ → `<i data-lucide="zap"></i>`
|
||||
- 💧 → `<i data-lucide="droplets"></i>`
|
||||
- ☀️ → `<i data-lucide="sun"></i>`
|
||||
- 🌙 → `<i data-lucide="moon"></i>`
|
||||
- 💡 → `<i data-lucide="lightbulb"></i>`
|
||||
- 📐 → `<i data-lucide="layout-grid"></i>`
|
||||
- 🎬 → `<i data-lucide="film"></i>`
|
||||
- 📸 → `<i data-lucide="camera"></i>`
|
||||
- 📊 → `<i data-lucide="bar-chart"></i>`
|
||||
- 🎯 → `<i data-lucide="target"></i>`
|
||||
|
||||
**优势**:
|
||||
- SVG图标可扩展、清晰度高
|
||||
- 支持CSS样式自定义
|
||||
- 跨浏览器兼容性好
|
||||
- 符合现代Web设计标准
|
||||
|
||||
**执行记录**:
|
||||
- 2025年10月: civil订单班完成22处emoji到SVG图标的替换
|
||||
@@ -98,7 +98,7 @@
|
||||
"color": "#3F51B5",
|
||||
"template": {
|
||||
"title": "冷链智慧共配中心AGV调度系统",
|
||||
"description": "项目名称:百车级AGV全局交通管制与充电调度系统\n应用场景:15000㎡冷链配送中心\n设备规模:100台AGV小车+50个充电桩\n调度算法:蚁群算法+深度强化学习\n系统功能:路径规划、交通管制、充电调度、故障处理\n运行效率:日处理10000单,准确率99.95%\n温控要求:-18℃恒温,温度波动±2℃\n投资回报:系统投资500万,年节省人工成本300万"
|
||||
"description": "项目名称:百车级AGV全局交通管制与充电调度系统\n应用场景:15000㎡冷链配送中心\n设备规模:120台AGV小车+50个充电桩\n调度算法:蚁群算法+深度强化学习\n系统功能:路径规划、交通管制、充电调度、故障处理\n运行效率:日处理10000单,准确率99.95%\n温控要求:-18℃恒温,温度波动±2℃\n投资回报:系统投资500万,年节省人工成本300万"
|
||||
},
|
||||
"agentCount": 8,
|
||||
"estimatedTime": "3分钟",
|
||||
|
||||
@@ -24,21 +24,17 @@ app.use('/js', express.static('js'));
|
||||
app.use('/data', express.static('data'));
|
||||
app.use('/order-classes', express.static('order-classes'));
|
||||
|
||||
// 为每个订单班提供独立的静态文件服务
|
||||
app.use('/order-class/wenlu/css', express.static('order-classes/wenlu/css'));
|
||||
app.use('/order-class/wenlu/js', express.static('order-classes/wenlu/js'));
|
||||
app.use('/order-class/wenlu/data', express.static('order-classes/wenlu/data'));
|
||||
// 为所有订单班提供独立的静态文件服务
|
||||
const orderClassDirs = ['wenlu', 'food', 'finance', 'health', 'chemical', 'environmental',
|
||||
'transportation', 'energy', 'visual-design', 'civil', 'developer', 'manufacturing'];
|
||||
|
||||
// 由于HTML中使用相对路径,还需要从父路径提供静态文件
|
||||
app.use('/order-class/css', express.static('order-classes/wenlu/css'));
|
||||
app.use('/order-class/js', express.static('order-classes/wenlu/js'));
|
||||
app.use('/order-class/data', express.static('order-classes/wenlu/data'));
|
||||
|
||||
app.use('/order-class/food/css', express.static('order-classes/food/css'));
|
||||
app.use('/order-class/food/js', express.static('order-classes/food/js'));
|
||||
app.use('/order-class/food/data', express.static('order-classes/food/data'));
|
||||
app.use('/order-class/food/images', express.static('order-classes/food/images'));
|
||||
app.use('/order-class/food/agent-avatars', express.static('order-classes/food/agent-avatars'));
|
||||
orderClassDirs.forEach(dir => {
|
||||
app.use(`/order-class/${dir}/css`, express.static(`order-classes/${dir}/css`));
|
||||
app.use(`/order-class/${dir}/js`, express.static(`order-classes/${dir}/js`));
|
||||
app.use(`/order-class/${dir}/data`, express.static(`order-classes/${dir}/data`));
|
||||
app.use(`/order-class/${dir}/images`, express.static(`order-classes/${dir}/images`));
|
||||
app.use(`/order-class/${dir}/agent-avatars`, express.static(`order-classes/${dir}/agent-avatars`));
|
||||
});
|
||||
|
||||
// 日志中间件
|
||||
app.use((req, res, next) => {
|
||||
@@ -259,16 +255,16 @@ function getClassIcon(key) {
|
||||
const icons = {
|
||||
'wenlu': '🚗',
|
||||
'food': '🍽️',
|
||||
'caijing': '💰',
|
||||
'jiankang': '🏥',
|
||||
'huagong': '⚗️',
|
||||
'huanbao': '🌱',
|
||||
'jiaotong': '🚚',
|
||||
'nengyuan': '⚡',
|
||||
'shijue': '🎨',
|
||||
'tumu': '🏗️',
|
||||
'zhineng-dev': '💻',
|
||||
'zhineng-mfg': '🏭'
|
||||
'finance': '💰',
|
||||
'health': '🏥',
|
||||
'chemical': '⚗️',
|
||||
'environmental': '🌱',
|
||||
'transportation': '🚚',
|
||||
'energy': '⚡',
|
||||
'visual-design': '🎨',
|
||||
'civil': '🏗️',
|
||||
'developer': '💻',
|
||||
'manufacturing': '🏭'
|
||||
};
|
||||
return icons[key] || '📦';
|
||||
}
|
||||
|
||||
@@ -329,6 +329,15 @@ body.dark-theme .hero {
|
||||
background-attachment: fixed;
|
||||
}
|
||||
|
||||
.section:nth-child(7) {
|
||||
background-image:
|
||||
linear-gradient(to bottom, rgba(240, 249, 255, 0.9) 0%, rgba(224, 242, 254, 1) 100%),
|
||||
url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=1920&q=80');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-attachment: fixed;
|
||||
}
|
||||
|
||||
/* 深色主题下的区块背景 */
|
||||
body.dark-theme .section:nth-child(2) {
|
||||
background-image:
|
||||
@@ -375,6 +384,15 @@ body.dark-theme .section:nth-child(6) {
|
||||
background-attachment: fixed;
|
||||
}
|
||||
|
||||
body.dark-theme .section:nth-child(7) {
|
||||
background-image:
|
||||
linear-gradient(to bottom, rgba(120, 53, 15, 0.92) 0%, rgba(161, 98, 7, 0.88) 100%),
|
||||
url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=1920&q=80');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-attachment: fixed;
|
||||
}
|
||||
|
||||
/* 深色主题下的特定元素调整 */
|
||||
body.dark-theme .stat-item {
|
||||
background: rgba(161, 98, 7, 0.8);
|
||||
|
||||
@@ -661,7 +661,7 @@
|
||||
</section>
|
||||
|
||||
<!-- Footer: 项目成果总结 -->
|
||||
<section class="section" style="background: var(--bg-semi-dark); padding: var(--spacing-3xl) 0;">
|
||||
<section class="section" style="padding: var(--spacing-3xl) 0;">
|
||||
<div class="container">
|
||||
<h2 class="section-title text-center" style="margin-bottom: var(--spacing-2xl);">
|
||||
<i data-lucide="award"></i> 项目成果总结
|
||||
|
||||
@@ -5,7 +5,7 @@ order_classes:
|
||||
wenlu:
|
||||
name: "文旅订单班"
|
||||
title: "2024长三角国际新能源汽车与智能交通产业博览会"
|
||||
path: "/order-classes/wenlu/"
|
||||
path: "order-classes/wenlu"
|
||||
entry: "index.html"
|
||||
description: "会展策划完整方案"
|
||||
status: "completed"
|
||||
@@ -20,7 +20,7 @@ order_classes:
|
||||
food:
|
||||
name: "食品订单班"
|
||||
title: "中高端个性化轻食店铺经营方案"
|
||||
path: "/order-classes/food/"
|
||||
path: "order-classes/food"
|
||||
entry: "index.html"
|
||||
description: "轻食创业全流程指导"
|
||||
status: "completed"
|
||||
@@ -33,95 +33,134 @@ order_classes:
|
||||
- "餐饮团队人员管理专家"
|
||||
- "财务预算专家"
|
||||
|
||||
caijing:
|
||||
finance:
|
||||
name: "财经商贸订单班"
|
||||
title: "财经商贸综合解决方案"
|
||||
path: "/order-classes/caijing/"
|
||||
title: "化妆品电商运营综合方案"
|
||||
path: "order-classes/finance"
|
||||
entry: "index.html"
|
||||
description: "财经商贸领域专业方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "电商运营全流程解决方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "电商运营专家"
|
||||
- "市场分析师"
|
||||
- "品牌策划专家"
|
||||
- "供应链管理专家"
|
||||
- "数据分析师"
|
||||
- "客服管理专家"
|
||||
|
||||
jiankang:
|
||||
health:
|
||||
name: "大健康订单班"
|
||||
title: "大健康产业发展方案"
|
||||
path: "/order-classes/jiankang/"
|
||||
title: "医养结合智慧养老服务方案"
|
||||
path: "order-classes/health"
|
||||
entry: "index.html"
|
||||
description: "健康产业综合解决方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "智慧养老综合解决方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "养老服务专家"
|
||||
- "医疗顾问"
|
||||
- "智能设备专家"
|
||||
- "运营管理专家"
|
||||
|
||||
huagong:
|
||||
chemical:
|
||||
name: "化工订单班"
|
||||
title: "化工产业升级方案"
|
||||
path: "/order-classes/huagong/"
|
||||
title: "工业废水处理与资源化方案"
|
||||
path: "order-classes/chemical"
|
||||
entry: "index.html"
|
||||
description: "化工领域专业解决方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "化工废水处理专业方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "环保工程师"
|
||||
- "化工工艺专家"
|
||||
- "设备选型专家"
|
||||
- "运营管理专家"
|
||||
|
||||
huanbao:
|
||||
environmental:
|
||||
name: "环保订单班"
|
||||
title: "环保产业创新方案"
|
||||
path: "/order-classes/huanbao/"
|
||||
title: "地表水环境质量监测方案"
|
||||
path: "order-classes/environmental"
|
||||
entry: "index.html"
|
||||
description: "环保领域综合解决方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "水质监测专业解决方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "环境监测专家"
|
||||
- "水质分析师"
|
||||
- "数据管理专家"
|
||||
|
||||
jiaotong:
|
||||
transportation:
|
||||
name: "交通物流订单班"
|
||||
title: "智慧物流解决方案"
|
||||
path: "/order-classes/jiaotong/"
|
||||
title: "区域冷链物流网络优化方案"
|
||||
path: "order-classes/transportation"
|
||||
entry: "index.html"
|
||||
description: "交通物流智能化方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "冷链物流智能化方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "物流规划专家"
|
||||
- "供应链优化专家"
|
||||
- "运营管理专家"
|
||||
|
||||
nengyuan:
|
||||
energy:
|
||||
name: "能源订单班"
|
||||
title: "新能源产业发展方案"
|
||||
path: "/order-classes/nengyuan/"
|
||||
title: "分布式光伏发电系统方案"
|
||||
path: "order-classes/energy"
|
||||
entry: "index.html"
|
||||
description: "能源产业转型升级方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "光伏发电系统解决方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "光伏系统工程师"
|
||||
- "电气设计师"
|
||||
- "项目管理专家"
|
||||
|
||||
shijue:
|
||||
visual-design:
|
||||
name: "视觉设计订单班"
|
||||
title: "视觉设计创新方案"
|
||||
path: "/order-classes/shijue/"
|
||||
title: "同里古镇宣传片策划方案"
|
||||
path: "order-classes/visual-design"
|
||||
entry: "index.html"
|
||||
description: "视觉设计专业解决方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "视频宣传策划专业方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "导演/策划"
|
||||
- "摄影指导"
|
||||
- "后期制作专家"
|
||||
|
||||
tumu:
|
||||
civil:
|
||||
name: "土木订单班"
|
||||
title: "土木工程智能化方案"
|
||||
path: "/order-classes/tumu/"
|
||||
title: "室内CAD整体方案设计"
|
||||
path: "order-classes/civil"
|
||||
entry: "index.html"
|
||||
description: "土木工程领域解决方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "室内设计专业解决方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "需求分析师"
|
||||
- "平面设计师"
|
||||
- "效果图设计师"
|
||||
- "施工图设计师"
|
||||
- "预算工程师"
|
||||
- "项目经理"
|
||||
|
||||
zhineng-dev:
|
||||
developer:
|
||||
name: "智能开发订单班"
|
||||
title: "智能软件开发方案"
|
||||
path: "/order-classes/zhineng-dev/"
|
||||
title: "半导体AI综合检测项目"
|
||||
path: "order-classes/developer"
|
||||
entry: "index.html"
|
||||
description: "AI驱动的软件开发方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "AI检测系统开发方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "AI算法工程师"
|
||||
- "视觉系统工程师"
|
||||
- "软件架构师"
|
||||
- "测试工程师"
|
||||
|
||||
zhineng-mfg:
|
||||
manufacturing:
|
||||
name: "智能制造订单班"
|
||||
title: "智能制造升级方案"
|
||||
path: "/order-classes/zhineng-mfg/"
|
||||
title: "智能制造系统集成方案"
|
||||
path: "order-classes/manufacturing"
|
||||
entry: "index.html"
|
||||
description: "制造业智能化转型方案"
|
||||
status: "pending"
|
||||
agents: []
|
||||
description: "制造业智能化升级方案"
|
||||
status: "completed"
|
||||
agents:
|
||||
- "自动化工程师"
|
||||
- "系统集成专家"
|
||||
- "工艺优化专家"
|
||||
|
||||
# 服务器配置
|
||||
server:
|
||||
|
||||
@@ -24,3 +24,44 @@
|
||||
[2025-10-03T11:20:28.064Z] GET /order-class/food/
|
||||
[2025-10-03T11:20:29.177Z] GET /favicon.ico
|
||||
[2025-10-03T11:20:31.728Z] GET /order-class/food/images/%E9%9D%92%E8%8E%B3%E5%87%8F%E8%84%82%E4%B8%93%E5%B1%9E%E5%A5%97%E9%A4%90(%E5%8F%AF%E6%8D%A2%E9%85%B1%E6%B1%81).jpg
|
||||
[2025-10-07T05:56:45.978Z] GET /favicon.ico
|
||||
[2025-10-07T05:56:59.096Z] GET /favicon.ico
|
||||
[2025-10-07T05:57:38.765Z] GET /order-classes/
|
||||
[2025-10-07T05:58:25.873Z] GET /
|
||||
[2025-10-07T06:09:03.840Z] GET /order-class/wenlu
|
||||
[2025-10-07T06:09:07.630Z] GET /order-class/food
|
||||
[2025-10-07T06:09:07.649Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%B8%82%E5%9C%BA%E8%B0%83%E7%A0%94%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.651Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%93%81%E7%89%8C%E8%AE%BE%E8%AE%A1%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.973Z] GET /order-class/agent-avatars/%E9%A4%90%E5%8E%85%E9%80%89%E5%9D%80%E8%A3%85%E4%BF%AE%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.979Z] GET /order-class/agent-avatars/%E8%8F%9C%E5%93%81%E7%A0%94%E5%8F%91%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.983Z] GET /order-class/agent-avatars/%E8%BD%BB%E9%A3%9F%E5%BA%97%E7%BB%8F%E8%90%A5%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.994Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%9B%A2%E9%98%9F%E4%BA%BA%E5%91%98%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.995Z] GET /order-class/agent-avatars/%E8%B4%A2%E5%8A%A1%E9%A2%84%E7%AE%97%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:07.996Z] GET /order-class/agent-avatars/%E9%A3%8E%E9%99%A9%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:08.070Z] GET /order-class/images/%E5%81%A5%E8%BA%AB%E5%AE%A3%E4%BC%A0%E4%BB%A3%E8%A8%80.jpg
|
||||
[2025-10-07T06:09:08.072Z] GET /order-class/images/%E5%B8%82%E5%9C%BA%E5%AE%A3%E4%BC%A0%E8%90%A5%E9%94%80.jpg
|
||||
[2025-10-07T06:09:08.074Z] GET /order-class/images/%E5%BA%97%E9%9D%A2%E5%9B%BE%E7%89%87_%E6%AD%A3%E9%97%A8.jpg
|
||||
[2025-10-07T06:09:09.051Z] GET /order-class/food
|
||||
[2025-10-07T06:09:09.068Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%B8%82%E5%9C%BA%E8%B0%83%E7%A0%94%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.071Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%93%81%E7%89%8C%E8%AE%BE%E8%AE%A1%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.375Z] GET /order-class/agent-avatars/%E9%A4%90%E5%8E%85%E9%80%89%E5%9D%80%E8%A3%85%E4%BF%AE%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.377Z] GET /order-class/agent-avatars/%E8%8F%9C%E5%93%81%E7%A0%94%E5%8F%91%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.384Z] GET /order-class/agent-avatars/%E8%BD%BB%E9%A3%9F%E5%BA%97%E7%BB%8F%E8%90%A5%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.387Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%9B%A2%E9%98%9F%E4%BA%BA%E5%91%98%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.388Z] GET /order-class/agent-avatars/%E8%B4%A2%E5%8A%A1%E9%A2%84%E7%AE%97%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.388Z] GET /order-class/agent-avatars/%E9%A3%8E%E9%99%A9%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:09.434Z] GET /order-class/images/%E5%81%A5%E8%BA%AB%E5%AE%A3%E4%BC%A0%E4%BB%A3%E8%A8%80.jpg
|
||||
[2025-10-07T06:09:09.436Z] GET /order-class/images/%E5%B8%82%E5%9C%BA%E5%AE%A3%E4%BC%A0%E8%90%A5%E9%94%80.jpg
|
||||
[2025-10-07T06:09:09.437Z] GET /order-class/images/%E5%BA%97%E9%9D%A2%E5%9B%BE%E7%89%87_%E6%AD%A3%E9%97%A8.jpg
|
||||
[2025-10-07T06:09:29.757Z] GET /order-class/food
|
||||
[2025-10-07T06:09:29.773Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%B8%82%E5%9C%BA%E8%B0%83%E7%A0%94%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:29.774Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%93%81%E7%89%8C%E8%AE%BE%E8%AE%A1%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.082Z] GET /order-class/agent-avatars/%E9%A4%90%E5%8E%85%E9%80%89%E5%9D%80%E8%A3%85%E4%BF%AE%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.084Z] GET /order-class/agent-avatars/%E8%8F%9C%E5%93%81%E7%A0%94%E5%8F%91%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.086Z] GET /order-class/agent-avatars/%E8%BD%BB%E9%A3%9F%E5%BA%97%E7%BB%8F%E8%90%A5%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.089Z] GET /order-class/agent-avatars/%E9%A4%90%E9%A5%AE%E5%9B%A2%E9%98%9F%E4%BA%BA%E5%91%98%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.090Z] GET /order-class/agent-avatars/%E8%B4%A2%E5%8A%A1%E9%A2%84%E7%AE%97%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.092Z] GET /order-class/agent-avatars/%E9%A3%8E%E9%99%A9%E7%AE%A1%E7%90%86%E4%B8%93%E5%AE%B6.jpeg
|
||||
[2025-10-07T06:09:30.146Z] GET /order-class/images/%E5%81%A5%E8%BA%AB%E5%AE%A3%E4%BC%A0%E4%BB%A3%E8%A8%80.jpg
|
||||
[2025-10-07T06:09:30.147Z] GET /order-class/images/%E5%B8%82%E5%9C%BA%E5%AE%A3%E4%BC%A0%E8%90%A5%E9%94%80.jpg
|
||||
[2025-10-07T06:09:30.148Z] GET /order-class/images/%E5%BA%97%E9%9D%A2%E5%9B%BE%E7%89%87_%E6%AD%A3%E9%97%A8.jpg
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 订单班AI生成方案展示系统 - 启动脚本
|
||||
|
||||
echo "=========================================="
|
||||
echo " 订单班AI生成方案展示系统"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
|
||||
# 检查是否安装了依赖
|
||||
if [ ! -d "node_modules" ]; then
|
||||
echo "首次运行,正在安装依赖..."
|
||||
npm install
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# 启动服务器
|
||||
echo "启动服务器..."
|
||||
echo ""
|
||||
echo "服务器地址: http://localhost:4155"
|
||||
echo ""
|
||||
echo "访问示例:"
|
||||
echo " • 首页: http://localhost:4155/"
|
||||
echo " • 文旅: http://localhost:4155/order-class/wenlu"
|
||||
echo " • 食品: http://localhost:4155/order-class/food"
|
||||
echo ""
|
||||
echo "或使用URL参数:"
|
||||
echo " • http://localhost:4155/?class=wenlu"
|
||||
echo " • http://localhost:4155/?class=food"
|
||||
echo ""
|
||||
echo "按 Ctrl+C 停止服务器"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
|
||||
# 启动Node.js服务器
|
||||
node app.js
|
||||
@@ -1,15 +1,17 @@
|
||||
@echo off
|
||||
chcp 65001 >nul 2>&1
|
||||
REM Web Result 静态服务器启动脚本 (Node.js版)
|
||||
REM 订单班AI生成方案展示系统 - Windows启动脚本
|
||||
REM 端口: 4155
|
||||
REM 支持局域网访问
|
||||
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
REM 显示启动横幅
|
||||
echo ======================================
|
||||
echo Web Result 静态服务器
|
||||
echo ==========================================
|
||||
echo 订单班AI生成方案展示系统
|
||||
echo 端口: 4155
|
||||
echo ======================================
|
||||
echo 支持局域网访问
|
||||
echo ==========================================
|
||||
echo.
|
||||
|
||||
REM 获取脚本所在目录
|
||||
@@ -32,6 +34,19 @@ echo [信息] Node.js 版本:
|
||||
node --version
|
||||
echo.
|
||||
|
||||
REM 检查是否安装了依赖
|
||||
if not exist "node_modules" (
|
||||
echo [信息] 首次运行,正在安装依赖...
|
||||
call npm install
|
||||
if errorlevel 1 (
|
||||
echo [错误] 依赖安装失败
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo [成功] 依赖安装完成
|
||||
echo.
|
||||
)
|
||||
|
||||
REM 检查端口 4155 是否被占用
|
||||
netstat -ano | findstr :4155 >nul 2>&1
|
||||
if not errorlevel 1 (
|
||||
@@ -57,11 +72,29 @@ if not errorlevel 1 (
|
||||
|
||||
REM 启动服务器
|
||||
echo [信息] 正在启动服务器...
|
||||
echo [信息] 访问地址: http://localhost:4155
|
||||
echo.
|
||||
echo ╔═══════════════════════════════════════════════╗
|
||||
echo ║ 订单班AI生成方案展示系统 ║
|
||||
echo ╠═══════════════════════════════════════════════╣
|
||||
echo ║ 🏠 本地访问:
|
||||
echo ║ http://localhost:4155
|
||||
echo ║
|
||||
echo ║ 📋 访问示例:
|
||||
echo ║ • 首页: http://localhost:4155/
|
||||
echo ║ • 文旅: http://localhost:4155/order-class/wenlu
|
||||
echo ║ • 食品: http://localhost:4155/order-class/food
|
||||
echo ║ • 财经: http://localhost:4155/order-class/finance
|
||||
echo ║ • 土木: http://localhost:4155/order-class/civil
|
||||
echo ║
|
||||
echo ║ 🔗 或使用URL参数:
|
||||
echo ║ http://localhost:4155/?class=wenlu
|
||||
echo ║ http://localhost:4155/?class=food
|
||||
echo ╚═══════════════════════════════════════════════╝
|
||||
echo.
|
||||
echo [提示] 按 Ctrl+C 停止服务器
|
||||
echo.
|
||||
|
||||
REM 使用 Node.js 启动服务器
|
||||
node server.js
|
||||
REM 启动Node.js服务器
|
||||
node app.js
|
||||
|
||||
pause
|
||||
@@ -1,15 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Web Result 静态服务器启动脚本 (Node.js版)
|
||||
# 订单班AI生成方案展示系统 - 启动脚本
|
||||
# 端口: 4155
|
||||
# 支持局域网访问
|
||||
|
||||
# 颜色定义
|
||||
GREEN='[0;32m'
|
||||
BLUE='[0;34m'
|
||||
YELLOW='[1;33m'
|
||||
RED='[0;31m'
|
||||
NC='[0m'
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
|
||||
# 获取脚本所在目录
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
@@ -23,11 +23,11 @@ get_lan_ip() {
|
||||
fi
|
||||
}
|
||||
|
||||
echo -e "${BLUE}======================================${NC}"
|
||||
echo -e "${BLUE} Web Result 静态服务器${NC}"
|
||||
echo -e "${BLUE}==========================================${NC}"
|
||||
echo -e "${BLUE} 订单班AI生成方案展示系统${NC}"
|
||||
echo -e "${BLUE} 端口: 4155${NC}"
|
||||
echo -e "${BLUE} 支持局域网访问${NC}"
|
||||
echo -e "${BLUE}======================================${NC}"
|
||||
echo -e "${BLUE}==========================================${NC}"
|
||||
echo
|
||||
|
||||
# 切换到脚本所在目录
|
||||
@@ -42,6 +42,19 @@ fi
|
||||
|
||||
echo -e "${GREEN}[信息] Node.js 版本: $(node --version)${NC}"
|
||||
|
||||
# 检查是否安装了依赖
|
||||
if [ ! -d "node_modules" ]; then
|
||||
echo -e "${YELLOW}[信息] 首次运行,正在安装依赖...${NC}"
|
||||
npm install
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "${GREEN}[成功] 依赖安装完成${NC}"
|
||||
else
|
||||
echo -e "${RED}[错误] 依赖安装失败${NC}"
|
||||
exit 1
|
||||
fi
|
||||
echo
|
||||
fi
|
||||
|
||||
# 获取局域网IP
|
||||
LAN_IP=$(get_lan_ip)
|
||||
if [ -z "$LAN_IP" ]; then
|
||||
@@ -70,9 +83,9 @@ fi
|
||||
# 启动服务器
|
||||
echo -e "${GREEN}[信息] 正在启动服务器...${NC}"
|
||||
echo
|
||||
echo -e "${GREEN}╔════════════════════════════════════════╗${NC}"
|
||||
echo -e "${GREEN}║ 服务器访问信息 ║${NC}"
|
||||
echo -e "${GREEN}╠════════════════════════════════════════╣${NC}"
|
||||
echo -e "${GREEN}╔═══════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${GREEN}║ 订单班AI生成方案展示系统 ║${NC}"
|
||||
echo -e "${GREEN}╠═══════════════════════════════════════════════╣${NC}"
|
||||
echo -e "${GREEN}║${NC} 🏠 本地访问:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://localhost:4155${NC}"
|
||||
echo -e "${GREEN}║${NC}"
|
||||
@@ -82,11 +95,22 @@ if [ "$LAN_IP" != "localhost" ]; then
|
||||
echo -e "${GREEN}║${NC}"
|
||||
echo -e "${GREEN}║${NC} 📱 移动设备访问:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://${LAN_IP}:4155${NC}"
|
||||
echo -e "${GREEN}║${NC}"
|
||||
fi
|
||||
echo -e "${GREEN}╚════════════════════════════════════════╝${NC}"
|
||||
echo -e "${GREEN}║${NC} 📋 访问示例:"
|
||||
echo -e "${GREEN}║${NC} • 首页: ${BLUE}http://localhost:4155/${NC}"
|
||||
echo -e "${GREEN}║${NC} • 文旅: ${BLUE}http://localhost:4155/order-class/wenlu${NC}"
|
||||
echo -e "${GREEN}║${NC} • 食品: ${BLUE}http://localhost:4155/order-class/food${NC}"
|
||||
echo -e "${GREEN}║${NC} • 财经: ${BLUE}http://localhost:4155/order-class/finance${NC}"
|
||||
echo -e "${GREEN}║${NC} • 土木: ${BLUE}http://localhost:4155/order-class/civil${NC}"
|
||||
echo -e "${GREEN}║${NC}"
|
||||
echo -e "${GREEN}║${NC} 🔗 或使用URL参数:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://localhost:4155/?class=wenlu${NC}"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://localhost:4155/?class=food${NC}"
|
||||
echo -e "${GREEN}╚═══════════════════════════════════════════════╝${NC}"
|
||||
echo
|
||||
echo -e "${YELLOW}[提示] 按 Ctrl+C 停止服务器${NC}"
|
||||
echo
|
||||
|
||||
# 使用 Node.js 启动服务器
|
||||
node server.js
|
||||
# 启动Node.js服务器
|
||||
node app.js
|
||||
|
||||
Reference in New Issue
Block a user