# V1 / V2 电梯应用 API 调用链源码比对白名单 本文约定:**每次发布或横向对拍异常排查**时,优先仅对下列文件做 V1 与 V2 的语义级 diff,避免整仓反编译树与 Maven 源码的「格式噪声」干扰判断。 ## 用途 - 核对「HTTP 入口 → Service → Feign/DAO」是否与历史 V1 行为一致。 - 与 `maven-cw-elevator-application/tools/elevator_api_parity/` 对拍清单互补:白名单覆盖曾出现 **code_only 不一致** 的典型链路。 ## 比对基线(仓库内路径) | 侧 | 根路径 | |----|--------| | **V2(Maven 源码)** | `maven-cw-elevator-application/cw-elevator-application-web/src/main/java/cn/cloudwalk/elevator/`(web)
`maven-cw-elevator-application/cw-elevator-application-service/src/main/java/cn/cloudwalk/elevator/`(service) | | **V1(反编译树,与 1.0-SNAPSHOT 模块 JAR 对齐)** | `artifacts/decompiled/trees/cw-elevator-application-web-1.0-SNAPSHOT.jar.src/cn/cloudwalk/elevator/`(web)
`artifacts/decompiled/trees/cw-elevator-application-service-1.0-SNAPSHOT.jar.src/cn/cloudwalk/elevator/`(service) | 若线网 V1 为 **另一 fat-jar**,应先确认其反编译树或 CFR 输出与上表 V1 根是否同源,再执行比对。 ## 白名单(相对上述「根」的类路径) | 优先级 | 相对路径 | 说明 | |--------|----------|------| | P0 | `person/controller/AcsPersonController.java` | `person/add`、`person/edit`、`person/pageByApp`、`timeDetail` 等 | | P0 | `record/controller/AcsElevatorRecordController.java` | `record/page`、`analyse/cycle|count`、`page/request` | | P0 | `passrule/controller/AcsPassRuleController.java` | `passRule/add` 等规则入口 | | P0 | `person/impl/PersonRuleServiceImpl.java` | `person/add` 业务链、`76260527` 空设备等 | | P0 | `person/impl/AcsPersonServiceImpl.java` | `edit`、`pageByApp`、`timeDetail`、图库/设备 Feign 组装 | | P0 | `record/impl/AcsElevatorRecordServiceImpl.java` | `openRecord`、`analyseCycle`、`analyseCount`、`pageInfo` | | P1 | `passrule/impl/AcsPassRuleServiceImpl.java` | 规则新增/编辑主流程 | | P1 | `passrule/impl/ImageRuleRefServiceImpl.java` | `addOnlyRule` 等与 `76260527` 相关分支 | | P1 | `common/AbstractCloudwalkController.java` | `getCloudwalkContext()` 等与请求头/会话相关 | 按需扩展时,应先在 `api_catalog.json` 或走查清单中标注接口 id,再增补对应 Controller/Service,**避免无界扫 diff**。 ## 建议命令(忽略空白,便于看语义) 在仓库根目录执行,示例(web 单文件): ```bash diff -uw \ artifacts/decompiled/trees/cw-elevator-application-web-1.0-SNAPSHOT.jar.src/cn/cloudwalk/elevator/person/controller/AcsPersonController.java \ maven-cw-elevator-application/cw-elevator-application-web/src/main/java/cn/cloudwalk/elevator/person/controller/AcsPersonController.java ``` `service` 模块将两条根路径中的 `...-web-...` / `cw-elevator-application-web` 换成 `...-service-...` / `cw-elevator-application-service` 即可。 ## 相关文档 - V1/V2 依赖比对(`lib`/`cw_lib` 与反应堆坐标):`V1-V2-电梯依赖比对.md` - 对拍约定与清单说明:`../../maven-cw-elevator-application/tools/elevator_api_parity/API-RECONCILIATION.md` - 走查任务总览:`对外接口不变-走查任务与状态.md`