apes-Authon-history — 剥离历史与源码分析归档

本仓库归档了 apes-Authon 账权独立服务平台从单体应用中剥离的完整过程、分析报告和方案文档。
供源码更新时参考,持续优化前后端代码和文档。

仓库定位

仓库 说明 地址
apes-Authon-Server 后端账权服务 https://gitea.apescale.com/apes-Arise/apes-Authon-Server
apes-Authon-Web 前端账权管理 https://gitea.apescale.com/apes-Arise/apes-Authon-Web
apes-Authon-history 本仓库 — 剥离历史与分析归档 https://gitea.apescale.com/apes-Arise/apes-Authon-history
apes-Authdata 源码归档(完整单体应用,供抽取参考) https://gitea.apescale.com/apes-Arise/apes-Authdata

目录结构

apes-Authon-history/
├── README.md                              # 本文件
├── docs/                                  # 源码分析与方案文档
│   ├── saas-service深度分析报告.md          # 后端单体应用深度分析(33000 字)
│   ├── 代码深度解析与分析过程.md             # 代码解析过程记录(27000 字)
│   ├── 账权平台-项目说明书.html             # 原项目完整说明书(HTML)
│   └── 账权模块独立服务化方案.html           # 独立服务化可行性分析与方案(HTML)
├── backend/                               # 后端剥离文档
│   └── 账权模块提取说明.md                  # 提取原则、文件清单、耦合度验证、路线图
└── frontend/                              # 前端剥离文档
    ├── apes-Authon-Web-剥离方案.md          # 剥离方案(计划文档)
    ├── apes-Authon-Web-剥离方案.html        # 剥离方案(HTML 版)
    └── 剥离历史与说明.md                    # 剥离执行记录、变更明细、框架修改说明

文档索引

源码分析

文档 内容概述
saas-service深度分析报告 后端单体应用的完整深度分析:项目结构、技术栈、核心模块(认证/授权/多租户/SSO/数据同步/LLM)、数据库设计、API 清单、配置体系
代码深度解析与分析过程 代码解析过程记录:AuthContext 工作机制、@Login AOP 切面、多租户数据源切换、伙伴云 SSO 集成、LLM Agent 架构
账权平台-项目说明书 原项目说明书(HTML 格式):功能模块、技术架构、部署方式、数据库 ER 图
账权模块独立服务化方案 独立服务化可行性分析:耦合度评估、剥离策略、技术路线、风险评估

后端剥离

文档 内容概述
账权模块提取说明 提取原则(纯账权/零业务/保留包名/保留依赖)、124 个文件清单(11 Controller + 23 Entity + 7 Service + 23 Mapper)、外部依赖分析、耦合度验证结论、后续路线图

前端剥离

文档 内容概述
apes-Authon-Web-剥离方案 剥离前的计划文档:保留/删除/修改清单、页面耦合度分析、框架文件修改方案
apes-Authon-Web-剥离方案 同上(HTML 格式)
剥离历史与说明 剥离执行记录:176 文件变更(+222/-60093)、11 个框架文件修改详情、业务引用清理表、构建验证结果

剥离概述

后端 (apes-Authon-Server)

saas-service 单体应用中提取纯净账权模块,经过 4 个阶段完成:

阶段 目标 关键工作
Phase 1 apes-commons 内联 反推 8 个核心类(AuthContext / @Login / LoginAspect / Res / DbEntity 等),移除外部 JAR 依赖
Phase 2 包名重构 cn.apes.cloudcn.apes.authon 全局包名重构,零残留
Phase 3 编译验证 124 个源文件编译通过,Lombok 1.18.40 + compiler-plugin 3.13.0 兼容 Java 24
Phase 4 提交推送 最终版本推送到 Gitea

提取结果11 Controller + 23 Entity + 12 DTO + 3 VO + 7 Service + 18 ServiceImpl + 23 Mapper + 5 Config + 1 Filter + 2 Util + 8 commons 内联 = 124 个 Java 文件

耦合度验证

  • 业务 Service → 账权 Service 直接调用:0 个
  • 业务 Controller → 账权 Controller 直接调用:0 个
  • 账权 Service → 业务 Mapper 直接调用:0 个
  • 唯一交叉引用:CustomerInfoServiceImpl → huoban DTO 包(11 个纯 DTO,无业务逻辑)

前端 (apes-Authon-Web)

saas-web 单体前端中剥离纯净账权页面:

指标 数值
保留页面 40 个(24 账权 + 9 系统配置 + 7 AI 工具)
删除页面 ~82 个业务页面
代码变更 +222 / -60093(净减约 6 万行)
修改框架文件 11 个
构建状态 通过(npm run build:prod

如何使用本仓库

场景 1:源码更新后同步优化

当源码(单体应用)有更新时,按以下流程操作:

  1. 分析变更:对比源码最新版本与本仓库归档的分析文档,识别新增/修改的账权相关代码
  2. 评估影响:参照 账权模块提取说明 中的提取原则和文件清单,判断变更是否属于账权范畴
  3. 同步代码:将确认的变更同步到 apes-Authon-Serverapes-Authon-Web
  4. 更新文档:如有结构性变更,更新本仓库的分析文档

场景 2:理解架构设计

新开发者可通过以下顺序阅读文档快速理解系统:

  1. 账权平台-项目说明书 — 了解原项目全貌
  2. saas-service深度分析报告 — 理解后端架构
  3. 账权模块独立服务化方案 — 理解为什么要剥离
  4. 账权模块提取说明 — 理解后端怎么剥离的
  5. 前端剥离方案 — 理解前端怎么剥离的
  6. 剥离历史与说明 — 理解前端具体改了什么

场景 3:扩展新模块

参照 代码深度解析与分析过程 中的架构说明,理解以下核心机制后再进行扩展:

  • AuthContext + @Login AOP:认证上下文的传递机制
  • @TenantSource 动态数据源:多租户数据源切换
  • SSO 集成:伙伴云单点登录的 Token 交换流程
  • 动态路由:前端菜单 → 路由 → 组件的映射机制

后续路线图

阶段 目标 状态
Phase 5A AI 助手/LLM 模块后端提取(~54 Java 文件) 待办
Phase 5B 系统配置页面补充 基本完成
Phase 5C 伙伴云表单配置模块提取 待办
Phase 6 SDK 化 — AuthContext 转为远程可调用 SDK 待设计
Phase 7 网关集成 — API 网关注入请求头替代 ThreadLocal 待设计

License

MIT

S
Description
apes-Authon 剥离历史与源码分析归档 — 供源码更新时参考
Readme 111 KiB
Languages
HTML 100%