Files
starRiverProperty/docs/architecture/V1-V2-电梯API源码比对白名单.md
T
hpd840321 7b2bd307f1 Initial commit: reorganized source tree
- backend/: 13 Maven modules (cw-elevator-application, cloudwalk-cloud, intelligent-cwoscomponent, ninca-crk, etc.)
- frontend/: 4 Vue projects (elevator-front, cwos-portal, alarm-front, front_acs) + decompiled + scripts
- scripts/: build, test-env, tools (Docker Compose, service templates, API parity)
- docs/: AGENTS.md, superpowers specs, architecture docs
- .gitignore: standard Java/Maven exclusions

Moved from legacy maven-*/ root layout to backend/ organized structure.
2026-05-09 09:56:45 +08:00

52 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# V1 / V2 电梯应用 API 调用链源码比对白名单
本文约定:**每次发布或横向对拍异常排查**时,优先仅对下列文件做 V1 与 V2 的语义级 diff,避免整仓反编译树与 Maven 源码的「格式噪声」干扰判断。
## 用途
- 核对「HTTP 入口 → Service → Feign/DAO」是否与历史 V1 行为一致。
-`maven-cw-elevator-application/tools/elevator_api_parity/` 对拍清单互补:白名单覆盖曾出现 **code_only 不一致** 的典型链路。
## 比对基线(仓库内路径)
| 侧 | 根路径 |
|----|--------|
| **V2Maven 源码)** | `maven-cw-elevator-application/cw-elevator-application-web/src/main/java/cn/cloudwalk/elevator/`web<br>`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<br>`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`