2026-01-31 23:09:12 +08:00
|
|
|
|
# 应用管理模块 - 开发计划(Plan 模式)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
| 文档信息 | 内容 |
|
|
|
|
|
|
|---------|------|
|
|
|
|
|
|
| **文档版本** | V1.0 |
|
|
|
|
|
|
| **模块名称** | 应用管理 |
|
|
|
|
|
|
| **编写团队** | pangu |
|
|
|
|
|
|
| **创建日期** | 2026-01-31 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 一、当前完成情况结论
|
|
|
|
|
|
|
|
|
|
|
|
**应用管理菜单中的全部页面目前并非前后端一起完成。**
|
|
|
|
|
|
|
|
|
|
|
|
| 端 | 状态 | 说明 |
|
|
|
|
|
|
|----|:----:|------|
|
|
|
|
|
|
| **前端** | ✅ 已完成 | 列表页、新增/编辑弹窗、密钥弹窗、API 封装、Mock 数据均已实现,可与 Mock 联调使用 |
|
|
|
|
|
|
| **后端** | ❌ 未开发 | 无 ApplicationController、无应用相关 Service/Mapper/实体,需从零开发 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 二、Plan 模式开发计划总览
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
┌─────────────────────────────────────────────────────────────────────────┐
|
|
|
|
|
|
│ 应用管理模块 - 开发计划(Plan) │
|
|
|
|
|
|
├─────────────────────────────────────────────────────────────────────────┤
|
|
|
|
|
|
│ │
|
|
|
|
|
|
│ [阶段一] 技术方案与文档 ✅ 已完成 │
|
|
|
|
|
|
│ [阶段二] 前端开发 ✅ 已完成 │
|
|
|
|
|
|
│ [阶段三] 后端开发 ⬜ 待开始 ← 当前缺口 │
|
|
|
|
|
|
│ [阶段四] 联调与测试 ⬜ 待开始 │
|
|
|
|
|
|
│ [阶段五] 验收上线 ⬜ 待开始 │
|
|
|
|
|
|
│ │
|
|
|
|
|
|
└─────────────────────────────────────────────────────────────────────────┘
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 三、分阶段任务清单(Plan)
|
|
|
|
|
|
|
|
|
|
|
|
### 阶段一:技术方案与文档 ✅ 已完成
|
|
|
|
|
|
|
|
|
|
|
|
| 序号 | 任务项 | 状态 | 产出/路径 |
|
|
|
|
|
|
|:----:|-------|:----:|----------|
|
|
|
|
|
|
| 1.1 | 应用管理模块技术方案 | ✅ | docs/05-模块技术方案/应用管理模块技术方案_v1.0.md |
|
|
|
|
|
|
| 1.2 | 前端技术方案 | ✅ | docs/05-模块技术方案/应用管理-前端技术方案.md |
|
|
|
|
|
|
| 1.3 | 后端技术方案 | ✅ | docs/05-模块技术方案/应用管理-后端技术方案.md |
|
|
|
|
|
|
| 1.4 | 开发检查清单 | ✅ | docs/05-模块技术方案/应用管理-开发检查清单.md |
|
|
|
|
|
|
| 1.5 | 测试用例 | ✅ | docs/05-模块技术方案/应用管理-测试用例.md |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 阶段二:前端开发 ✅ 已完成
|
|
|
|
|
|
|
|
|
|
|
|
| 序号 | 任务项 | 状态 | 产出/路径 |
|
|
|
|
|
|
|:----:|-------|:----:|----------|
|
2026-02-03 20:56:15 +08:00
|
|
|
|
| 2.1 | 应用列表页 | ✅ | frontend/src/views/application/index.vue |
|
|
|
|
|
|
| 2.2 | 新增/编辑弹窗 | ✅ | frontend/src/views/application/components/AppDialog.vue |
|
|
|
|
|
|
| 2.3 | 密钥展示弹窗(重置后复制) | ✅ | frontend/src/views/application/components/SecretDialog.vue |
|
|
|
|
|
|
| 2.4 | 应用管理 API 封装 | ✅ | frontend/src/api/application.js |
|
|
|
|
|
|
| 2.5 | 应用管理 Mock 数据 | ✅ | frontend/src/mock/application.js |
|
2026-01-31 23:09:12 +08:00
|
|
|
|
| 2.6 | 路由与菜单配置 | ✅ | 已挂载应用管理菜单,可 Mock 联调 |
|
|
|
|
|
|
|
|
|
|
|
|
**前端已实现能力:**
|
|
|
|
|
|
|
|
|
|
|
|
- 列表查询(应用名称、编码、状态筛选 + 分页)
|
|
|
|
|
|
- 新增应用(应用名称、描述、联系人、电话、状态、接口授权勾选)
|
|
|
|
|
|
- 编辑应用(拉取详情回填 + 提交更新)
|
|
|
|
|
|
- 删除应用(Popconfirm 二次确认)
|
|
|
|
|
|
- 重置密钥(确认后弹窗显示新密钥并支持复制)
|
|
|
|
|
|
- 接口授权选项来自 `GET /api/application/apiList`,与接口文档一致
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 阶段三:后端开发 ⬜ 待开始
|
|
|
|
|
|
|
|
|
|
|
|
| 序号 | 任务项 | 状态 | 说明 |
|
|
|
|
|
|
|:----:|-------|:----:|------|
|
|
|
|
|
|
| **3.1 数据库** | | | |
|
|
|
|
|
|
| 3.1.1 | 创建 pg_application 表 | ⬜ | 按《数据库设计文档》建表 |
|
|
|
|
|
|
| 3.1.2 | 创建 pg_app_api 表 | ⬜ | 应用接口授权表 |
|
|
|
|
|
|
| 3.1.3 | 创建 pg_api_dict 表 | ⬜ | API 接口字典表 |
|
|
|
|
|
|
| 3.1.4 | 插入 pg_api_dict 初始数据 | ⬜ | 6 条(STUDENT_LIST 等) |
|
|
|
|
|
|
| 3.1.5 | 插入应用管理菜单数据 | ⬜ | sql/pangu_menu.sql 或等价脚本 |
|
|
|
|
|
|
| **3.2 实体层** | | | |
|
|
|
|
|
|
| 3.2.1 | Application 实体 | ⬜ | app_id, app_code, app_name, app_secret 等 |
|
|
|
|
|
|
| 3.2.2 | AppApi 实体 | ⬜ | 应用接口授权 |
|
|
|
|
|
|
| 3.2.3 | ApiDict 实体 | ⬜ | 接口字典(或复用已有) |
|
|
|
|
|
|
| 3.2.4 | VO/DTO(可选) | ⬜ | 列表/详情/新增修改用 |
|
|
|
|
|
|
| **3.3 Mapper 层** | | | |
|
|
|
|
|
|
| 3.3.1 | ApplicationMapper + XML | ⬜ | 分页列表、详情、增删改 |
|
|
|
|
|
|
| 3.3.2 | AppApiMapper + XML | ⬜ | 按 app_id 查/删/批量插入 |
|
|
|
|
|
|
| 3.3.3 | ApiDictMapper + XML | ⬜ | 查全部接口列表(apiList) |
|
|
|
|
|
|
| **3.4 Service 层** | | | |
|
|
|
|
|
|
| 3.4.1 | IApplicationService | ⬜ | 列表、详情、新增、修改、删除、重置密钥、apiList |
|
|
|
|
|
|
| 3.4.2 | ApplicationServiceImpl | ⬜ | 应用编码 YY+6 位、密钥 32 位、事务与授权表联动 |
|
|
|
|
|
|
| **3.5 Controller 层** | | | |
|
|
|
|
|
|
| 3.5.1 | ApplicationController | ⬜ | 实现《接口设计文档》第 6 章全部接口 |
|
|
|
|
|
|
| **3.6 接口清单(与前端对齐)** | | | |
|
|
|
|
|
|
| 3.6.1 | GET /api/application/list | ⬜ | 分页列表,支持 appName、appCode、status |
|
|
|
|
|
|
| 3.6.2 | GET /api/application/{appId} | ⬜ | 详情,含 apis 列表 |
|
|
|
|
|
|
| 3.6.3 | POST /api/application | ⬜ | 新增,body: appName, appDesc, contactPerson, contactPhone, status, apiCodes |
|
|
|
|
|
|
| 3.6.4 | PUT /api/application | ⬜ | 修改,body: appId + 同上 |
|
|
|
|
|
|
| 3.6.5 | DELETE /api/application/{appId} | ⬜ | 删除(含授权表) |
|
|
|
|
|
|
| 3.6.6 | PUT /api/application/resetSecret/{appId} | ⬜ | 重置密钥,返回 data.appSecret |
|
|
|
|
|
|
| 3.6.7 | GET /api/application/apiList | ⬜ | 返回可授权接口列表,供前端勾选 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 阶段四:联调与测试 ⬜ 待开始
|
|
|
|
|
|
|
|
|
|
|
|
| 序号 | 任务项 | 状态 | 说明 |
|
|
|
|
|
|
|:----:|-------|:----:|------|
|
|
|
|
|
|
| 4.1 | 前端关闭 Mock,对接真实后端 | ⬜ | 修改 request baseURL 或环境变量 |
|
|
|
|
|
|
| 4.2 | 接口联调(列表、详情、新增、编辑、删除、重置密钥、apiList) | ⬜ | 按接口文档校验请求/响应 |
|
|
|
|
|
|
| 4.3 | 业务规则校验 | ⬜ | 编码 YY+6 位、密钥 32 位、删除确认、重置后弹窗复制 |
|
|
|
|
|
|
| 4.4 | 执行《应用管理-测试用例》 | ⬜ | 功能 + 边界 + 权限(如需要) |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 阶段五:验收上线 ⬜ 待开始
|
|
|
|
|
|
|
|
|
|
|
|
| 序号 | 任务项 | 状态 | 说明 |
|
|
|
|
|
|
|:----:|-------|:----:|------|
|
|
|
|
|
|
| 5.1 | 产品/业务验收 | ⬜ | 按需求规格说明书应用管理章节 |
|
|
|
|
|
|
| 5.2 | 部署与发布 | ⬜ | 后端部署、前端打包部署 |
|
|
|
|
|
|
| 5.3 | 上线检查与回滚预案 | ⬜ | 配置、权限、数据初始化 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 四、后端开发建议顺序(Plan 执行顺序)
|
|
|
|
|
|
|
|
|
|
|
|
按依赖关系,建议按以下顺序实施**阶段三**:
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
1. 数据库
|
|
|
|
|
|
└─ 建表 + 初始数据 + 菜单 SQL
|
|
|
|
|
|
|
|
|
|
|
|
2. 实体 + Mapper
|
|
|
|
|
|
└─ Application, AppApi, ApiDict 实体
|
|
|
|
|
|
└─ ApplicationMapper, AppApiMapper, ApiDictMapper(含 XML)
|
|
|
|
|
|
|
|
|
|
|
|
3. Service
|
|
|
|
|
|
└─ IApplicationService + ApplicationServiceImpl
|
|
|
|
|
|
└─ 编码生成、密钥生成、重置密钥、授权表增删
|
|
|
|
|
|
|
|
|
|
|
|
4. Controller
|
|
|
|
|
|
└─ ApplicationController
|
|
|
|
|
|
└─ 7 个接口与接口文档、前端入参出参完全对齐
|
|
|
|
|
|
|
|
|
|
|
|
5. 单测与自测
|
|
|
|
|
|
└─ Service 单测(可选)
|
|
|
|
|
|
└─ Postman/浏览器自测 7 个接口
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 五、前后端对接要点(联调时核对)
|
|
|
|
|
|
|
|
|
|
|
|
| 项目 | 前端约定 | 后端需满足 |
|
|
|
|
|
|
|------|----------|------------|
|
|
|
|
|
|
| 主键字段名 | 兼容 `appId` 与 `id` | 统一返回 `appId` 或与前端约定一致 |
|
|
|
|
|
|
| 列表行数据 | 含 `apis: [{ apiCode, apiName, apiPath }]` | 列表接口返回每行带 apis(或至少 apiCodes) |
|
|
|
|
|
|
| 详情接口 | 返回 `data.apis` | GET /api/application/{appId} 返回 apis 数组 |
|
|
|
|
|
|
| 新增/修改 body | appName, appDesc, contactPerson, contactPhone, status, apiCodes | 接收 apiCodes 数组,落库到 pg_app_api |
|
|
|
|
|
|
| 重置密钥 | PUT /api/application/resetSecret/{appId},响应 data.appSecret | 同上,返回明文新密钥 |
|
|
|
|
|
|
| apiList | GET /api/application/apiList,data 为数组 | 返回 pg_api_dict 中启用接口列表 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 六、总结
|
|
|
|
|
|
|
|
|
|
|
|
| 问题 | 结论 |
|
|
|
|
|
|
|------|------|
|
|
|
|
|
|
| 应用管理菜单中的全部页面是否前后端一起完成? | **否。** 仅前端(含 Mock)完成,后端未开发。 |
|
|
|
|
|
|
| 下一步建议 | 按本文「阶段三」与「后端开发建议顺序」实施后端开发,再进行阶段四联调与测试。 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
*文档结束*
|