4.5 KiB
4.5 KiB
Mock服务路径数据重构任务清单
创建时间:2025-01-16
版本号:0.2.2
任务描述:根据route.md文件重构mock服务的飞机和车辆数据,简化移动逻辑为往复运动
任务目标
- 根据route.md文件更新飞机和车辆的坐标数据
- 简化移动逻辑,实现起点终点往复运动
- 保持API接口兼容性
- 更新车辆编号为真实车牌号
- 更新版本号和变更日志
详细工作内容
1. 坐标点重新定义 ✅
原问题:使用了复杂的POINT_T1到POINT_T13坐标系统
解决方案:根据route.md重新定义简化的坐标点
# 飞机 CA1234 路径
AIRCRAFT_START = {"longitude": 120.086263, "latitude": 36.370484}
AIRCRAFT_END = {"longitude": 120.080996, "latitude": 36.369105}
# 特勤车 鲁B123 路径
SPECIAL_VEHICLE_START = {"longitude": 120.080801, "latitude": 36.366626}
SPECIAL_VEHICLE_END = {"longitude": 120.083899, "latitude": 36.367403}
# 普通车 鲁B234 路径
NORMAL_VEHICLE_START = {"longitude": 120.087259, "latitude": 36.368299}
NORMAL_VEHICLE_END = {"longitude": 120.083899, "latitude": 36.367403}
# 无人车A 鲁B567 路径
UNMANNED_A_START = {"longitude": 120.083084, "latitude": 36.369696}
UNMANNED_A_END = {"longitude": 120.084637, "latitude": 36.365617}
# 无人车B 鲁B579 路径
UNMANNED_B_START = {"longitude": 120.086965, "latitude": 36.368599}
UNMANNED_B_END = {"longitude": 120.086263, "latitude": 36.370484}
2. 飞机数据更新 ✅
原数据:AC001,复杂的方向向量计算
新数据:
- 航班号:CA1234(符合route.md)
- 速度:50km/h(符合route.md)
- 结构简化:添加start_point、end_point、moving_to_end字段
3. 车辆数据更新 ✅
原数据:TQ001、BD001、QN001、QN002等内部编号
新数据:
- 鲁B123(特勤车,30km/h)
- 鲁B234(普通车,30km/h)
- 鲁B567(无人车A,25km/h)
- 鲁B579(无人车B,25km/h)
4. 移动逻辑简化 ✅
原逻辑:复杂的多段路径,phase切换,红绿灯判断
新逻辑:
- 简单的往复运动(起点⇄终点)
- 使用moving_to_end标志控制方向
- 保留指令停车功能(ALERT、WARNING)
- 移除复杂的红绿灯路口判断
5. 函数重构 ✅
删除的复杂函数:
calculate_distance_to_intersection()calculate_path_direction()get_front_traffic_light()
简化的函数:
update_aircraft_position():简化为往复运动update_vehicle_position():移除复杂路径逻辑
6. 车辆编号适配 ✅
更新内容:
- 车辆分类逻辑:从startswith判断改为具体编号判断
- 特勤车指令处理:从"TQ"开头改为"鲁B123"
- 保持API返回格式不变
7. 版本更新 ✅
- VERSION.md:0.2.2 → 0.3.0
- changelog.md:添加详细的0.3.0版本记录
技术细节
数据结构变化
# 新的数据结构
{
"vehicleNo": "鲁B123",
"longitude": 120.080801,
"latitude": 36.366626,
"speed": 30.0,
"start_point": SPECIAL_VEHICLE_START,
"end_point": SPECIAL_VEHICLE_END,
"moving_to_end": True
}
移动算法
- 根据
moving_to_end确定目标点 - 使用
update_position_with_vector()计算新位置 - 到达目标后切换
moving_to_end标志 - 设置等待时间后继续移动
API兼容性
- 保持所有原有API接口不变
- 返回数据格式与原来一致
- 仅内部逻辑和数据发生变化
验证清单
- 代码编译无错误
- 数据格式符合route.md要求
- 移动逻辑正常工作
- 车辆指令功能保持正常
- API接口返回正确数据
- 版本号正确更新
- 变更日志记录完整
影响评估
正面影响
- 代码简化:移除约50%的复杂逻辑代码
- 数据标准化:完全符合route.md规范
- 维护性提升:往复运动逻辑更容易理解和修改
- 性能优化:移除复杂的路径计算,提高运行效率
风险评估
- 低风险:保持API接口兼容性
- 测试需要:需要验证新的移动逻辑是否正常
- 文档更新:相关技术文档需要同步更新
下一步计划
- 功能测试:验证WebSocket实时数据是否正常
- 集成测试:确认与前端系统的数据对接
- 性能测试:验证简化后的性能提升
- 文档更新:更新相关API文档和使用说明
完成状态:✅ 已完成
最后更新:2025-01-16
下次检查:需要时进行功能验证测试