2026-05-20 09:17:29 +00:00
|
|
|
|
# ETMS - Event and Task Management System
|
2026-05-20 07:54:52 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
战场任务规划系统(BTPS)核心组件 —— 事件与任务管理软件。
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
## 功能概述
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
- **事件接收与校验**:接收战场态势事件(JSON),校验完整性并确认ACK/NACK。
|
|
|
|
|
|
- **事件处理与存储**:清洗、格式化事件数据,写入事件表并管理状态流转。
|
|
|
|
|
|
- **事件列表展示**:分页查询、等级着色、排序等前端展示支持。
|
|
|
|
|
|
- **事件操作**:处理、拒绝等交互操作及即时反馈。
|
|
|
|
|
|
- **任务生成准备**:建立事件与任务的映射,构建任务生成上下文。
|
|
|
|
|
|
- **任务模板管理**:管理上级推送的任务模板集合,支持搜索、排序与详情查看。
|
|
|
|
|
|
- **知识库版本选择**:查询与选择用于模板生成的先验知识库版本。
|
|
|
|
|
|
- **人环/自主模式**:支持手动选择与自动推荐两种模板选择模式。
|
|
|
|
|
|
- **任务请求发送**:组装并发送任务生成请求至外部任务规划引擎。
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
## 编译与运行
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
### 前置条件
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
|
|
|
|
|
- CMake ≥ 3.14
|
|
|
|
|
|
- 支持 C++17 的编译器(GCC 8+, Clang 7+, MSVC 2019+)
|
|
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
### 编译步骤
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-05-20 09:17:29 +00:00
|
|
|
|
# 创建构建目录
|
|
|
|
|
|
mkdir build && cd build
|
|
|
|
|
|
|
|
|
|
|
|
# 配置
|
|
|
|
|
|
cmake ..
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
# 编译
|
|
|
|
|
|
cmake --build .
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
# 运行主程序
|
|
|
|
|
|
./etms
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
# 运行测试
|
|
|
|
|
|
./etms_test
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 工程结构
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
├── CMakeLists.txt # CMake 构建配置
|
|
|
|
|
|
├── README.md # 本文件
|
|
|
|
|
|
├── include/
|
|
|
|
|
|
│ └── app.hpp # 公开 API 头文件(数据模型与核心业务类)
|
|
|
|
|
|
├── src/
|
|
|
|
|
|
│ ├── main.cpp # 命令行入口
|
|
|
|
|
|
│ └── app.cpp # 核心业务实现
|
|
|
|
|
|
└── tests/
|
|
|
|
|
|
└── basic_test.cpp # 使用标准 assert 的单元测试
|
2026-05-20 08:00:11 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
## 核心类说明
|
2026-05-20 08:00:11 +00:00
|
|
|
|
|
2026-05-20 09:17:29 +00:00
|
|
|
|
| 类名 | 职责 |
|
|
|
|
|
|
|------|------|
|
|
|
|
|
|
| `Event` | 战场事件数据模型,包含事件ID、类型、时间戳、等级、位置、描述、状态 |
|
|
|
|
|
|
| `TaskTemplate` | 任务模板数据模型,包含模板ID、名称、类型、参数、子任务列表 |
|
|
|
|
|
|
| `KBVersion` | 知识库版本数据模型,包含版本ID、描述、生效时间、状态 |
|
|
|
|
|
|
| `EventManager` | 事件管理器,负责事件接收、校验、处理、存储与查询 |
|
|
|
|
|
|
| `TaskGenerator` | 任务生成器,负责模板管理、知识库版本选择、事件映射与任务请求组装 |
|