{
  "projectId": 42,
  "generationId": "codegen_80ea1de49b4447fb9537c7ea66bf70e4",
  "language": "java",
  "status": "completed",
  "fileIds": [
    981
  ],
  "outputDir": "E:\\pro\\wokspace-ai_agent\\ai-agent-integration\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_80ea1de49b4447fb9537c7ea66bf70e4",
  "relativeOutputDir": "codegen-runs/codegen_80ea1de49b4447fb9537c7ea66bf70e4",
  "generatedFiles": [
    "README.md",
    "events.ndjson",
    "pom.xml",
    "src/main/java/com/example/demo/DemoApplication.java",
    "src/main/java/com/example/demo/config/OpenApiConfig.java",
    "src/main/java/com/example/demo/config/WebConfig.java",
    "src/main/java/com/example/demo/controller/BusinessController.java",
    "src/main/java/com/example/demo/controller/HealthController.java",
    "src/main/java/com/example/demo/model/BusinessItem.java",
    "src/main/java/com/example/demo/model/DistributionLog.java",
    "src/main/java/com/example/demo/model/Event.java",
    "src/main/java/com/example/demo/model/StatusLog.java",
    "src/main/java/com/example/demo/model/TaskPlan.java",
    "src/main/java/com/example/demo/model/TaskTemplate.java",
    "src/main/java/com/example/demo/model/TemplateVersion.java",
    "src/main/java/com/example/demo/repository/EventRepository.java",
    "src/main/java/com/example/demo/repository/TemplateRepository.java",
    "src/main/java/com/example/demo/service/BusinessService.java",
    "src/main/resources/application.yml",
    "src/test/java/com/example/demo/BusinessServiceTest.java"
  ],
  "analysisSummary": "### 业务目标  \n1. 实现从战场事件感知到任务生成、执行监控的闭环管理，提升任务规划效率与指挥响应速度。  \n2. 支持人机协同（HITL）与自主执行两种模式下的任务规划与重配置，满足现代战争高动态、快节奏的作战需求。  \n3. 构建基于先验知识库的任务模板管理体系，实现模板的接收、版本控制、可视化展示与智能推荐。  \n4. 实现任务方案向卫星、无人机、雷达等异构作战资产的可靠分发，并实时监控其执行状态。  \n5. 确保系统在国产化软硬件平台上的稳定运行，具备高可靠性、安全性、可维护性与环境适应性。\n\n---\n\n### 功能清单  \n1. **事件接收功能**：监听网络端口或消息队列，接收JSON/XML格式的原始事件数据包，支持断点续传与本地缓存。  \n2. **事件处理功能**：对原始事件进行过滤、时间戳与坐标系转换、封装为标准内部模型，添加元数据并持久化。  \n3. **事件展示功能**：从前端界面展示标准化事件列表，支持排序、分页、刷新及“处理/拒绝”操作。  \n4. **任务生成功能**：允许用户选择一个或多个待处理事件，结合参数配置生成任务草案，调用任务生成算法填充模板。  \n5. **模板管理功能**：  \n   - 接收上级推送的任务模板集合数据（JSON/XML），解析并增量/全量更新本地存储；  \n   - 可视化展示模板集合，支持按名称、更新时间、常用度排序；  \n   - 展示模板详细信息及子任务需求树状结构；  \n   - 支持人环模式下用户手动选择模板并锁定版本；  \n   - 支持自主模式下自动匹配最优模板并提示用户确认；  \n   - 支持先验知识库配置参数调整与合法性验证。  \n6. **计划管理功能**：  \n   - 集中式计划列表管理，支持基于用户偏好的加权排序；  \n   - 计划详情可视化展示，HITL节点触发人工干预通知；  \n   - 计划重配置操作，执行重配置算法并高亮变更部分；  \n   - 分布式计划聚合管理，构建依赖关系图并运行一致性检查。  \n7. **方案分发功能**：将任务方案通过军用数据链或TCP/UDP协议发送至作战资产，监听ACK响应，更新状态指示灯，失败时支持重发。  \n8. **状态监控功能**：实时接收遥测数据，解析后更新监控看板，异常状态码触发报警，通信中断时标记“数据陈旧”。\n\n---\n\n### 数据结构  \n#### 核心数据库表  \n**1. 事件表（Event）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| 事件ID | event_id | VARCHAR(64) | 唯一标识 |  \n| 事件类型 | event_type | VARCHAR(20) | 如临机事件、规划事件 |  \n| 发生时间 | occur_time | DATETIME | 事件实际发生时间 |  \n| 事件标题 | title | VARCHAR(255) | 简要描述 |  \n| 事件描述 | description | TEXT | 详细内容 |  \n| 位置坐标 | location | VARCHAR(100) | 经纬度或其他坐标系表示 |  \n| 优先级 | priority | INT | 数值越大优先级越高 |  \n| 状态 | status | VARCHAR(20) | 如“待处理”、“已拒绝”、“已生成任务” |  \n| 创建时间 | create_time | DATETIME | 系统记录时间 |\n\n**2. 任务模板表（TaskTemplate）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| 模板ID | template_id | VARCHAR(64) | 唯一标识 |  \n| 模板名称 | name | VARCHAR(100) | 显示名称 |  \n| 版本号 | version | VARCHAR(20) | 如v1.2.0 |  \n| 内容路径 | content_path | VARCHAR(255) | 指向模板文件的存储路径 |  \n| 适用场景 | scenario | VARCHAR(50) | 如侦察、打击、预警 |  \n| 是否启用 | enabled | BOOLEAN | 控制是否可用 |  \n| 创建时间 | create_time | DATETIME | |\n\n**3. 模板版本表（TemplateVersion）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| ID | id | BIGINT | 主键 |  \n| 模板ID | template_id | VARCHAR(64) | 外键关联TaskTemplate |  \n| 版本号 | version | VARCHAR(20) | |  \n| 发布时间 | release_time | DATETIME | |  \n| 过期时间 | expire_time | DATETIME | 可为空 |  \n\n**4. 任务计划表（TaskPlan）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| 计划ID | plan_id | VARCHAR(64) | 唯一标识 |  \n| 名称 | name | VARCHAR(100) | |  \n| 关联事件ID | event_ids | TEXT | 多个ID逗号分隔 |  \n| 使用模板ID | template_id | VARCHAR(64) | |  \n| 当前状态 | status | VARCHAR(20) | 如“草稿”、“执行中”、“已完成” |  \n| 创建时间 | create_time | DATETIME | |  \n| 最后修改时间 | update_time | DATETIME | |\n\n**5. 分发日志表（DistributionLog）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| 日志ID | log_id | BIGINT | 主键 |  \n| 目标资产 | asset | VARCHAR(50) | 卫星A、无人机B等 |  \n| 方案ID | plan_id | VARCHAR(64) | |  \n| 发送时间 | send_time | DATETIME | |  \n| 状态 | status | VARCHAR(20) | 成功、失败、超时 |  \n| 尝试次数 | retry_count | INT | |  \n| 错误信息 | error_msg | TEXT | 可为空 |  \n\n**6. 状态日志表（StatusLog）**  \n| 字段名称 | 字段代码 | 类型 | 说明 |  \n|--------|--------|------|------|  \n| ID | id | BIGINT | 主键 |  \n| 资产ID | asset_id | VARCHAR(50) | |  \n| 状态码 | status_code | VARCHAR(20) | 如NORMAL, WARNING, ERROR |  \n| 时间戳 | timestamp | DATETIME | |  \n| 附加信息 | info | TEXT | 异常详情 |  \n\n---\n\n### 接口或命令  \n| 接口标识 | 名称 | 类型 | 通信方式 | 数据格式 | 来源/目标 | 描述 |  \n|--------|------|------|----------|------------|------------|--------|  \n| SRS-TPS_I_EVT_IN | 事件数据接口 | 输入 | TCP/IP + 自定义应用层协议 | JSON/XML | 上游事件生成模块 → TPS | 实时接收事件，含心跳与断点续传 |  \n| SRS-TPS_I_TMP_IN | 模板数据接口 | 输入 | HTTPS + RESTful API | JSON/XML | 上级单位/云服务 → TPS | 批量推送模板，带数字签名验证 |  \n| SRS-TPS_O_TASK_OUT | 任务分发接口 | 输出 | 军用数据链 / UDP/TCP | 二进制/JSON | TPS → 作战资产 | 发送任务方案，含ACK确认与重传机制 |  \n| SRS-TPS_I_STAT_IN | 状态遥测接口 | 输入 | 军用数据链 / UDP | 二进制 | 作战资产 → TPS | 高频小包遥测，含时间戳与校验和 |  \n\n---\n\n### 约束  \n1. **运行环境约束**：  \n   - 操作系统：银河麒麟V10 SP2及以上；  \n   - 硬件：国产八核CPU、主频≥2.5GHz、内存≥32GB ECC DDR4、SSD+RAID5存储；  \n   - 网络：带宽≥100Mbps。  \n2. **数据库约束**：支持达梦DM8或人大金仓KingbaseES，采用主从复制实现高可用。  \n3. **安全约束**：  \n   - 静态数据使用国密算法加密；  \n   - 网络传输加密；  \n   - 基于RBAC的角色权限控制；  \n   - 用户输入严格校验防注入攻击；  \n   - 通过国家保密局认证。  \n4. **性能约束**：  \n   - 事件处理延迟 ≤ 500ms；  \n   - 事件列表加载时间 ≤ 1秒；  \n   - 状态监控刷新频率 ≥ 1Hz。  \n5. **部署约束**：支持加固野战指挥所服务器与车载计算平台，具备宽温湿工作能力。  \n6. **维护约束**：支持在线平滑升级，不影响正在执行的任务。  \n\n---\n\n### 测试建议  \n1. **单元测试**：  \n   - 对每个软件单元提供独立测试接口，重点覆盖事件处理逻辑、模板匹配算法、重配置算法等核心函数。  \n2. **集成测试**：  \n   - 验证事件接收→处理→展示→任务生成→分发→监控整条链路的数据贯通性；  \n   - 模拟多源并发事件输入，检验系统稳定性与消息队列处理能力。  \n3. **性能测试**：  \n   - 使用JMeter/LoadRunner模拟高并发用户访问与大量事件涌入场景；  \n   - 监控CPU、内存、磁盘IO、网络吞吐量等资源使用情况；  \n   - 验证长时间运行下的内存泄漏与稳定性表现。  \n4. **异常测试**：  \n   - 模拟网络中断、数据包损坏、非法输入、模板版本冲突等边界条件；  \n   - 验证系统的容错、降级运行与恢复能力。  \n5. **安全测试**：  \n   - 进行SQL注入、XSS攻击模拟，验证输入过滤有效性；  \n   - 检查会话超时机制与身份认证强度。  \n6. **环境适应性测试**：  \n   - 在高低温、湿热、振动、强电磁干扰环境下进行功能与稳定性测试，符合GJB 151B标准要求。  \n7. **回归测试**：  \n   - 每次版本迭代后，执行自动化回归测试套件，确保已有功能不受影响。  \n\n---\n\n### 需求可追踪性明细  \n\n| 需求标识 | 需求名称 | 需求描述 | 来源文档 | 建议实现/验证职责或方法 |\n|--------|--------|--------|--------|--------------------------|\n| SRS-F-01-001 | 接收临机事件和规划事件 | 接收来自上游系统的事件数据包 | XXX-SRS-001《任务规划软件需求规格说明》 | 由SU-01事件接收单元实现，通过`receiveEvent`接口监听端口，对接TCP/IP自定义协议，验证断点续传与缓存机制 |\n| SRS-F-01-002 | 事件数据过滤转化封装 | 对接收到的事件进行过滤、格式转换和标准化封装 | XXX-SRS-001 | 由SU-02事件处理单元实现，通过`processEvent`方法执行过滤与转化逻辑，输出至标准事件模型 |\n| SRS-F-01-003 | 前端展示事件列表 | 在前端界面展示标准化后的事件列表 | XXX-SRS-001 | 由SU-03事件展示单元实现，通过`queryEvents`接口查询数据库，`renderList`渲染HTML/JSON |\n| SRS-F-01-004 | 事件列表排序与操作 | 支持对事件列表进行排序，并提供“处理”“拒绝”等操作按钮 | XXX-SRS-001 | 由SU-03事件展示单元实现，前端支持点击排序，后端通过`updateStatus`接口处理状态变更 |\n| SRS-F-02-001 | 接收待处理事件列表 | 获取当前所有待处理的事件供任务生成使用 | XXX-SRS-001 | 由SU-04任务生成单元实现，通过`getPendingEvents`接口从数据库获取状态为“待处理”的事件 |\n| SRS-F-02-002 | 展示待处理事件列表 | 在任务生成页面展示可选事件列表 | XXX-SRS-001 | 由SU-04任务生成单元实现，前端左侧区域展示多选列表 |\n| SRS-F-02-003 | 待处理事件自定义排序 | 支持用户对事件列表进行自定义排序 | XXX-SRS-001 | 由SU-04任务生成单元实现，在`getPendingEvents`中加入排序参数处理逻辑 |\n| SRS-F-02-004 | 生成作战任务并送交处理 | 用户选择事件后生成任务草案并提交下游处理 | XXX-SRS-001 | 由SU-04任务生成单元实现，调用`generateTask`方法生成草案，通过`submitTask`输出 |\n| SRS-F-03-001 | 任务模板先验知识库版本选择 | 用户可在多个版本中选择有效的模板版本 | XXX-SRS-001 | 由SU-05模板管理单元实现，前端提供版本下拉框，后端查询TemplateVersion表筛选未过期版本 |\n| SRS-F-03-002 | 先验知识库配置调整 | 支持调整模板库相关配置参数并验证合法性 | XXX-SRS-001 | 由SU-05模板管理单元实现，通过`getConfig`读取配置，更新时进行参数校验 |\n| SRS-F-04-001 | 接收推送的任务模板集合数据 | 接收上级推送的模板数据包并更新本地存储 | XXX-SRS-001 | 由SU-05模板管理单元实现，通过`receiveTemplates`接口接收HTTPS请求，解析并比对版本号后更新 |\n| SRS-F-04-002 | 页面可视化展示任务模板集合 | 在前端以网格形式展示所有可用模板 | XXX-SRS-001 | 由SU-05模板管理单元实现，通过`getTemplateList`返回模板列表，前端渲染为卡片视图 |\n| SRS-F-04-003 | 任务模板列表自定义排序 | 支持按常用程度、更新时间或名称排序 | XXX-SRS-001 | 由SU-05模板管理单元实现，在`getTemplateList`中根据排序参数组织返回顺序 |\n| SRS-F-04-004 | 展示任务模板详细信息及子任务需求 | 点击模板可查看其详细内容与子任务结构 | XXX-SRS-001 | 由SU-05模板管理单元实现，前端弹窗递归加载子任务树形结构 |\n| SRS-F-04-005 | 人环模式下用户选择任务模板 | 用户手动选择模板并锁定版本用于任务初始化 | XXX-SRS-001 | 由SU-05模板管理单元实现，通过`selectTemplate`接口记录用户选择，初始化任务实例 |\n| SRS-F-04-006 | 自主执行模式下任务模板自动选择提示 | 系统自动计算适配度最高的模板并提示用户 | XXX-SRS-001 | 由SU-05模板管理单元实现，运行匹配算法选出最高分模板，生成提示消息供用户确认 |\n| SRS-F-05-001 | 集中式计划管理与偏好排序 | 管理集中式计划列表，支持基于权重的排序 | XXX-SRS-001 | 由SU-06计划管理单元实现，通过`sortPlans`接口接收权重参数并重新排序 |\n| SRS-F-05-002 | 计划详情可视化与HITL通知 | 展示计划图谱，当需人工干预时推送通知 | XXX-SRS-001 | 由SU-06计划管理单元实现，检测到HITL节点时调用`notifyHITL`发送通知 |\n| SRS-F-05-003 | 计划重配置操作与可视化 | 支持对计划进行修改并可视化展示变更结果 | XXX-SRS-001 | 由SU-06计划管理单元实现，执行`reconfigurePlan`算法，前端以差异对比方式高亮显示变化 |\n| SRS-F-05-004 | 分布式计划管理与算法处理 | 聚合多源计划，构建依赖图并进行一致性检查 | XXX-SRS-001 | 由SU-06计划管理单元实现，聚合外部计划数据，运行一致性检查算法 |\n| SRS-F-06-001 | 方案驱动分发与状态响应 | 将任务方案分发给作战资产并接收响应状态 | XXX-SRS-001 | 由SU-07方案分发单元实现，通过`distributePlan`发送方案，监听`receiveAck`更新UI状态 |\n| SRS-F-06-002 | 驱动状态监控与异常信息展示 | 实时监控资产状态，异常时报警并展示信息 | XXX-SRS-001 | 由SU-08状态监控单元实现，通过`receiveTelemetry`接收遥测数据，`triggerAlarm`触发报警 |",
  "eventLogFile": "E:\\pro\\wokspace-ai_agent\\ai-agent-integration\\agents\\ai_agents\\project-files\\codegen-runs\\codegen_80ea1de49b4447fb9537c7ea66bf70e4\\events.ndjson",
  "repoSettings": {
    "username": "root",
    "password": "pAssW0rd",
    "repoUrl": "http://47.108.255.216:3000/root/task_plan_execute.git",
    "branch": "main"
  },
  "repoUrl": "http://47.108.255.216:3000/root/task_plan_execute.git",
  "branch": "main"
}