docs: 修复跨文档冲突与外部规范口径

不动代码、配置与迁移,只收敛文档口径。

- 登记两项外部冲突:Q13 日计划缺失可选字段(SIS §3.16 注释 4 要求删除本地值,
  与现行"未携带字段保留"相反)、Q14 主/共享删除顺序与 EROR 回报义务
  (SIS §1.6.1-1.d / §4.8);航班级"缺席不删"补 SIS §3.16 注释 1 依据。
- flight-state §3.3 补主/共享关联按 FLID 值比较的规则。
- message-lifecycle:§11 水位不变量与 §5.1 空洞老化自洽;删除过期的 updatedAt
  判据,统一为 PROCESSING_STARTED_AT + 可注入 Clock;§5.1/§6 补 SIS 480 分钟
  Expiry 与 legacy 1 天保留窗,作为 Q2/Q6/Q7 的取值参照。
- architecture/design:明细表口径统一为 8 张资源明细表 + FLIGHT_ROUTE_POINT;
  Oracle 11g 断言收敛为待适配验证;配置键按 application.yml 实际名称加 msgx. 前缀。
- user-stories:Q2/Q6/Q11 补外部锚点并收窄 Q11 到重置周期 + SNDR 值域;
  新增 Q13/Q14 并挂入 US-05/06/08 前置;五个独立事实改为引用 message-lifecycle §1。
- README/legacy:文档基线改为代码基线 eea1120 + git log 指引;补"外部协议冲突以
  SIS 为准"的维护规则;修正 /all/flights 过滤措辞;术语统一为「回填意图」。

验证:文档间章节引用 0 缺失、markdown 0 断链、SIS 引用小节全部存在、
Q1–Q14 正文与 Q 表双向可解析、代码块配对正常。
This commit is contained in:
windyboy
2026-09-10 20:54:01 +08:00
parent eea11203a2
commit 50e0e7f389
7 changed files with 70 additions and 53 deletions
@@ -10,6 +10,7 @@
- 本文档记录 msgexchange-api(现役旧项目)的完整业务逻辑,并以用户故事形式组织,作为新系统(Micronaut + Kotlin)迁移设计及一致性对拍的行为基线。
- 内容依据仓库源码与资源配置编写:`src/main/java/com/gzzn/omms/msgexchange-api/**``src/main/resources/*.yml`;分支 `feature/add_dev_containers_supports`HEAD `eb72a668`)。
- 报文结构依据 `SIS_AODB_RMS-V0.1.md``unisysaodbsis.xsd`(同目录 docs/legacy/)。
- 优先级:本文只描述现役行为;与 `SIS_AODB_RMS-V0.1.md` 冲突时以 SIS 为准。
- 文档中"关联代码"均为相对仓库根目录的源码路径,可据此逐条复核。
## 1. 系统定位与集成边界
@@ -160,7 +161,7 @@ msgexchange-api 为成都机场 OMMS 消息交换服务(`com.gzzn.omms:msgexch
### 3.8 HTTP 查询与运维接口
- `GET /all/flights`:读取 Redis 全部动态航班,过滤共享航班(`MAID == NULL`)后返回 `ResponseDto<List<SCHD.FLTR>>`
- `GET /all/flights`:读取 Redis 全部动态航班,过滤共享航班(`MAID != NULL`)后返回 `ResponseDto<List<SCHD.FLTR>>`
- `GET /flights/migrate`scroll 读取 ES `flight_hts` 全量数据,经 `transToNewFltrs` 还原 `SCHD.FLTR`(将 `ABN[].BODY` 按类型 DLY / CAN / RTN / ALT 映射回对象字段),逐条写入 ES `flight_hts2`。该接口为一次性数据迁移工具。
- `POST /kafka/topics/{name}/msgs`:请求体先按 JSON(Map)解析,成功则直接发送至 Kafka 主题 `{name}`;解析失败则按 XML 解析为 `MSG` 再转 JSON 发送。该接口提供 XML / JSON 双模转发能力。
- `POST /schd/sync`:见 3.9。
@@ -368,7 +369,7 @@ msgexchange-api 为成都机场 OMMS 消息交换服务(`com.gzzn.omms:msgexch
- 角色 / 期望 / 目标:作为前端或调用方,期望获取当前全量动态航班(不含共享航班),以便页面渲染。
- 触发条件:`GET /all/flights`
- 处理流程:`findAll`Redis hmget)→ 过滤 `MAID == NULL` `ResponseDto.success`
- 处理流程:`findAll`Redis hmget)→ 过滤掉共享航班(`MAID != NULL``ResponseDto.success`
- 验收标准:返回结果不含共享航班记录,内容与 Redis `flightInfo` 一致。
- 关联代码:`controller/FlightsController.java``service/flightInfo/FlightInfoServiceImpl.java`