初始化

This commit is contained in:
zg
2026-07-15 16:13:27 +08:00
parent 6d6f559793
commit c4023c1623
276 changed files with 42622 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
---
name: session-20260620-1
description: 2026-06-20 第1次会话 — menu/router接口改造、user/info权限过滤、文档清理、数据库IP迁移域名、Redis Key加前缀
metadata:
type: session
date: 2026-06-20
sessionNumber: 1
startTime: 2026-06-20T00:00:00+08:00
---
# 2026-06-20 第1次会话
## 会话摘要
本次会话主要做了5件事1) `/menu/router` 接口响应结构调整,新增 `permission` 字段2) `/user/info``permissions` 仅 gateway 系统返回3) 接入文档清理删除冗余接口章节4) 数据库/Redis IP 全部迁移到域名5) Redis Key 加统一前缀 `GATEWAY:`
## 关键操作
### 1. /menu/router 接口返回结构调整
- **做了什么**: 新建 `MenuRouterResponse` DTO`menu` + `permission` 字段),修改 AuthService/AuthServiceImpl/AuthController 返回新结构,前端 auth.ts 和 AdminLayout.vue 适配新结构
- **原因**: 业务系统需要一次性获取菜单路由树 + 该系统所有权限标识,用于前端 v-permission 指令
- **结果**: 返回从 `[{...}]` 变为 `{"menu":[{...}], "permission":["...","..."]}`
- **涉及文件**: `MenuRouterResponse.java`(新建), `AuthService.java`, `AuthServiceImpl.java`, `AuthController.java`, `auth.ts`, `AdminLayout.vue`, `integration-guide.md`, `IntegrationDoc.vue`
### 2. /user/info 的 permissions 条件返回
- **做了什么**: `getUserInfo()` 中判断 `currentSystemCode`,仅 gateway 系统返回 permissions业务系统返回 null
- **原因**: user/info 的 permissions 是网关平台权限,业务系统用不到,应通过 /menu/router 获取自身权限
- **结果**: 文档 5.1 节完全去掉 permissions 字段
### 3. 接入文档删除 system/select 和 logout 接口
- **做了什么**: 删除 Markdown 和 Vue 文档中 5.4 (system/select) 和 5.5 (logout) 章节5.6→5.4 重新编号API 速查表同步更新
- **原因**: 这两个接口 Widget 已内置切换系统→跳转系统选择页退出登录→Widget 内部处理),接入系统不需要自己调
- **涉及文件**: `integration-guide.md`, `IntegrationDoc.vue`
### 4. 数据库/Redis IP 迁移域名
- **做了什么**: 全项目 `10.1.1.122` → 域名,区分 PROD/QA 环境
- **原因**: 统一使用域名方便运维IP 变更不用改代码
- **结果**:
- PROD: MySQL=`db1.prod.zgitm.com`, Redis=`redis.db1.zgitm.com`
- QA: MySQL=`db1.qa.zgitm.com`, Redis=`redis.db2.zgitm.com`
- **涉及文件**: 21个文件yml src×6 + yml target×6 + py×7 + 需求文档×1 + ...
### 5. Redis Key 加统一前缀 GATEWAY:
- **做了什么**: `RedisUtil` 新增 `KEY_PREFIX = "GATEWAY:"` 常量和 `key()` 静态方法,所有 Redis key 改为 `RedisUtil.key("xxx")`
- **原因**: 以后改前缀只改一处
- **结果**: 所有 key 变为 `GATEWAY:rate:login:...` / `GATEWAY:auth:token:...` / `GATEWAY:open:token:...`
- **涉及文件**: `RedisUtil.java`, `AuthServiceImpl.java`, `UserServiceImpl.java`, `RoleServiceImpl.java`, `OpenApiController.java`
## 重要信息
### 数据库连接
| 环境 | MySQL | Redis |
|------|-------|-------|
| PROD | db1.prod.zgitm.com:3306 | redis.db1.zgitm.com:6379 |
| QA | db1.qa.zgitm.com:3306 | redis.db2.zgitm.com:6379 |
### API 接口清单(接入系统用)
| 章节 | 接口 | 说明 |
|------|------|------|
| 5.1 | GET /user/info | 用户信息(无 permissions |
| 5.2 | GET /menu/router | 菜单树 + 权限列表 |
| 5.3 | GET /system/list | 可切换系统列表 |
| 5.4 | PUT /password/update | 修改密码 |
### Redis Key 前缀
- 统一前缀: `GATEWAY:`
- 改法: `RedisUtil.key("auth:token:" + tokenId)`
## 待处理
- [ ] 部署后端到服务器使接口变更生效
- [ ] 部署前端到服务器使文档页生效
- [ ] 确认 DNS 解析 `db1.prod.zgitm.com` / `db1.qa.zgitm.com` / `redis.db1.zgitm.com` / `redis.db2.zgitm.com` 已配置