# FZKJ 作战任务管理与方案驱动系统 ## 版本 **版本号**:1.6.0 **对应文档**:《软件需求规格说明书_V1.6.docx》 ## 功能覆盖 | 编号 | 功能名称 | 说明 | |------|----------|------| | SRS-FZKJ_F-001 | 任务管理与事件处理 | 战场事件接收、校验、任务模板匹配与生成 | | SRS-FZKJ_F-002 | 战斗方案管理可视化 | 方案列表、偏好排序、多方案对比 | | SRS-FZKJ_F-003 | 方案驱动与状态监控 | 方案分发、执行状态监控、异常告警 | | SRS-FZKJ_F-004 | 共用态势与地图展示 | GIS地图加载、态势图层叠加、距离量算、网格控制 | | SRS-FZKJ_F-005 | 数据中转与存储管理 | 数据转发、缓存持久化、缓存清空 | | SRS-FZKJ_F-006 | 系统设置与想定切换 | 算法参数、模式切换、想定加载、网络配置 | ## 工程结构 ``` codegen-runs/codegen_010467c2aac04bad984d26ac6d3f8915/ ├── CMakeLists.txt # CMake 构建配置(C++17) ├── README.md # 本说明文件 ├── include/ │ └── app.hpp # 头文件:数据结构定义、App 类声明 ├── src/ │ ├── app.cpp # 实现文件:所有功能模块实现 │ └── main.cpp # 主程序入口及功能演示 └── tests/ └── basic_test.cpp # 基础单元测试(标准库 assert) ``` ## 核心数据结构 - **EventPayload**:定长 256 字节战场事件数据包(二进制、字节对齐) - **Task**:作战任务实体 - **BattleSolution**:战斗方案实体(支持集中式/分布式标记) - **ExecutionUnit**:执行单元及其状态 - **GeoPoint / MapViewState / MeasureResult**:GIS 相关数据类型 - **SystemConfig**:系统配置(算法、模式、网络、想定) ## 编译与运行 ### 前置条件 - CMake ≥ 3.14 - 支持 C++17 的编译器(GCC 7+、Clang 5+、MSVC 2017+) ### 编译步骤 ```bash # 1. 进入工程目录 cd codegen-runs/codegen_010467c2aac04bad984d26ac6d3f8915 # 2. 创建构建目录 mkdir build && cd build # 3. 生成构建系统 cmake .. # 4. 编译 cmake --build . # 5. 运行主程序 ./fzkj_app # Linux/macOS # 或 fzkj_app.exe # Windows # 6. 运行测试 ./fzkj_test # Linux/macOS # 或 fzkj_test.exe # Windows ``` ### Windows MSVC 注意事项 若使用 Visual Studio 编译,CMake 已自动添加 `/utf-8` 编译选项以支持中文显示。 ### 跨平台支持 - 支持 Windows 与中标麒麟操作系统 - 无外部第三方依赖 - 标准 C++17 实现,可移植性良好