# 战场态势与任务规划系统 ## 项目简介 本项目实现战场态势与任务规划系统中**事件处理与任务生成模块(EHTG)** 与**任务方案管理软件(TMS)** 的核心后端服务。 ### 核心功能 #### 事件处理与任务生成模块(EHTG) - 事件接收与解析、数据清洗与标准化 - 高价值目标评估 - 任务模板匹配与任务草案生成 - 任务草案发送与重试机制 #### 任务方案管理软件(TMS) - 集中式/分布式方案列表展示与排序 - 方案详情查看与多方案对比分析 - 方案重构与差异高亮 - 方案分发与执行状态监控 - 异常告警与人机环通知 ## 技术栈 | 技术 | 版本 | 用途 | |------|------|------| | Java | 17 | 开发语言 | | Spring Boot | 3.2.0 | 框架基础 | | Maven | 3.8+ | 构建工具 | | Knife4j + OpenAPI 3 | 4.5.0 | 接口文档与调试 | ## 快速启动 ### 前置条件 - JDK 17+ - Maven 3.8+ ### 编译运行 ```bash # 编译 mvn clean package # 运行 mvn spring-boot:run # 或直接运行 jar java -jar target/battlefield-mission-system-1.0.0.jar ``` ### 访问地址 | 服务 | 地址 | |------|------| | 应用主页 | http://localhost:8080 | | Swagger 文档 | http://localhost:8080/swagger-ui/index.html | | Knife4j 文档 | http://localhost:8080/doc.html | ## 项目结构 ``` src/main/java/com/example/demo/ ├── DemoApplication.java # 启动类 ├── config/ │ └── OpenApiConfig.java # OpenAPI/Knife4j 配置 ├── controller/ │ ├── HealthController.java # 健康检查 │ ├── EventController.java # 事件管理接口(EHTG) │ ├── TaskController.java # 任务生成接口(EHTG) │ └── SchemeController.java # 任务方案管理接口(TMS) ├── service/ │ ├── EventService.java # 事件处理服务 │ ├── TaskGenerationService.java # 任务生成服务 │ └── SchemeService.java # 任务方案管理服务 ├── model/ │ ├── Event.java # 事件实体 │ ├── TaskTemplate.java # 任务模板实体 │ ├── TaskDraft.java # 任务草案实体 │ ├── TaskScheme.java # 任务方案实体 │ ├── enums/ │ │ ├── EventStatus.java # 事件状态枚举 │ │ ├── EventSourceType.java # 事件来源类型枚举 │ │ ├── ThreatLevel.java # 威胁等级枚举 │ │ └── SchemeStatus.java # 方案状态枚举 │ └── dto/ │ ├── EventDTO.java # 事件数据传输对象 │ ├── EventQueryDTO.java # 事件查询参数 │ ├── SchemeCompareDTO.java # 方案对比数据传输对象 │ └── ApiResponse.java # 统一响应封装 └── repository/ ├── EventRepository.java # 事件仓储接口(内存实现) ├── TaskTemplateRepository.java # 任务模板仓储接口(内存实现) ├── TaskDraftRepository.java # 任务草案仓储接口(内存实现) └── SchemeRepository.java # 方案仓储接口(内存实现) src/test/java/com/example/demo/ ├── EventServiceTest.java # 事件服务测试 ├── TaskGenerationServiceTest.java # 任务生成服务测试 └── SchemeServiceTest.java # 方案管理服务测试 ``` ## API 概览 ### 事件处理模块(EHTG) | 方法 | 路径 | 说明 | |------|------|------| | POST | /api/v1/events | 接收原始事件 | | GET | /api/v1/events | 查询事件列表 | | GET | /api/v1/events/{id} | 查询事件详情 | | PUT | /api/v1/events/{id}/process | 处理事件 | ### 任务生成模块(EHTG) | 方法 | 路径 | 说明 | |------|------|------| | POST | /api/v1/tasks/generate | 基于事件生成任务草案 | | GET | /api/v1/tasks/drafts | 查询任务草案列表 | | GET | /api/v1/tasks/drafts/{id} | 查询任务草案详情 | | POST | /api/v1/tasks/drafts/{id}/retry | 重试发送任务草案 | ### 任务方案管理模块(TMS) | 方法 | 路径 | 说明 | |------|------|------| | GET | /api/v1/schemes | 查询方案列表(支持排序、分页) | | GET | /api/v1/schemes/{id} | 查询方案详情 | | POST | /api/v1/schemes/compare | 多方案对比分析 | | POST | /api/v1/schemes/{id}/reconstruct | 方案重构 | | POST | /api/v1/schemes/{id}/dispatch | 方案分发 | | GET | /api/v1/schemes/{id}/execution-status | 查询执行状态 | ## 设计说明 ### 当前实现 - **数据层**:采用内存 `ConcurrentHashMap` 存储,所有数据在应用启动时初始化示例数据 - **后续扩展**:预留了 `Repository` 接口层,后续可替换为 MyBatis/JPA 等数据库实现 - **错误处理**:全局统一异常处理,返回标准错误格式 ### 对应需求追溯 所有业务方法均通过 Javadoc `@requirement` 标签关联需求,可追溯至软件需求规格说明。