初始化
This commit is contained in:
71
memory/session-20260620-1.md
Normal file
71
memory/session-20260620-1.md
Normal 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` 已配置
|
||||
Reference in New Issue
Block a user