Files
mokeegateway/memory/session-20260620-1.md
2026-07-15 16:13:27 +08:00

3.8 KiB
Raw Blame History

name, description, metadata
name description metadata
session-20260620-1 2026-06-20 第1次会话 — menu/router接口改造、user/info权限过滤、文档清理、数据库IP迁移域名、Redis Key加前缀
type date sessionNumber startTime
session 2026-06-20 1 2026-06-20T00:00:00+08:00

2026-06-20 第1次会话

会话摘要

本次会话主要做了5件事1) /menu/router 接口响应结构调整,新增 permission 字段2) /user/infopermissions 仅 gateway 系统返回3) 接入文档清理删除冗余接口章节4) 数据库/Redis IP 全部迁移到域名5) Redis Key 加统一前缀 GATEWAY:

关键操作

1. /menu/router 接口返回结构调整

  • 做了什么: 新建 MenuRouterResponse DTOmenu + 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 已配置