Files
ccdi/docs/reports/implementation/2026-03-29-project-detail-risk-overview-risk-people-pagination-plan-record.md

59 lines
3.4 KiB
Markdown
Raw Normal View History

# 项目详情风险总览员工列表分页计划记录
## 变更概述
- 新增风险总览员工列表分页后端实施计划 1 份。
- 新增风险总览员工列表分页前端实施计划 1 份。
- 本次计划按统一接口改造方案收口为:保留 `GET /ccdi/project/overview/risk-people` 路径,改为标准分页返回 `rows + total + pageNum + pageSize`
- 已按计划完成后端与前端实现,并补齐对应验证记录与实施记录。
## 新增文件
- `docs/plans/backend/2026-03-29-project-detail-risk-overview-risk-people-pagination-backend-implementation.md`
- `docs/plans/frontend/2026-03-29-project-detail-risk-overview-risk-people-pagination-frontend-implementation.md`
- `docs/tests/records/2026-03-29-project-detail-risk-overview-risk-people-pagination-backend-verification.md`
- `docs/tests/records/2026-03-29-project-detail-risk-overview-risk-people-pagination-frontend-verification.md`
- `docs/reports/implementation/2026-03-29-project-detail-risk-overview-risk-people-pagination-backend-implementation.md`
- `docs/reports/implementation/2026-03-29-project-detail-risk-overview-risk-people-pagination-frontend-implementation.md`
## 计划结论
- 后端计划聚焦:
- 新增 `CcdiProjectRiskPeopleQueryDTO`
-`risk-people` 改为分页接口
- 使用 MyBatis Plus `Page` 实现数据库真分页
- 保持现有排序与业务口径不变
- 前端计划聚焦:
- `projectOverview.js` 透传分页参数
- `PreliminaryCheck.vue` 首屏接入第一页分页结构
- `RiskPeopleSection.vue` 增加固定 5 条一页的独立分页
- 翻页仅刷新员工列表本身
## 说明
- 本次按仓库规范,将实施计划分别落到 `docs/plans/backend/``docs/plans/frontend/`
- 因本仓库协作约定禁止开启 subagent计划头部已明确执行时应在当前会话使用 `superpowers:executing-plans`
- 本次执行阶段同步补充后端与前端的验证记录、实施记录。
## 执行记录
### 2026-03-29 后端执行结果
- 新增 `CcdiProjectRiskPeopleQueryDTO`,将 `risk-people` 接口入参统一为 `projectId/pageNum/pageSize`
-`CcdiProjectRiskPeopleOverviewVO` 返回结构从 `overviewList` 调整为 `rows + total + pageNum + pageSize`
-`CcdiProjectOverviewMapper` / XML 新增 `selectRiskPeopleOverviewPage`,基于 `ccdi_project_overview_employee_result` 实现数据库真分页
-`CcdiProjectOverviewServiceImpl` 中为 `risk-people` 单独固定默认分页 `1/5`
- 后端回归命令:`mvn -pl ccdi-project -am -Dtest=CcdiProjectOverviewServiceStructureTest,CcdiProjectOverviewControllerTest,CcdiProjectOverviewMapperSqlTest,CcdiProjectOverviewServiceImplTest -Dsurefire.failIfNoSpecifiedTests=false test`
### 2026-03-29 前端执行结果
- `getOverviewRiskPeople` 改为参数对象透传分页参数
- `PreliminaryCheck.vue` 首屏固定拉取第一页 5 条风险员工数据,并改用 `rows` 分页结构判断加载结果
- `RiskPeopleSection.vue` 接管 `pageNum/pageSize/total/tableLoading/localRows`,翻页时仅刷新当前列表
- 前端回归命令:
- `node ruoyi-ui/tests/unit/project-overview-api.test.js`
- `node ruoyi-ui/tests/unit/preliminary-check-api-integration.test.js`
- `node ruoyi-ui/tests/unit/preliminary-check-risk-people-pagination-load.test.js`
- `node ruoyi-ui/tests/unit/preliminary-check-risk-people-binding.test.js`
- `node ruoyi-ui/tests/unit/preliminary-check-risk-people-pagination.test.js`