# 项目详情风险总览员工列表分页计划记录 ## 变更概述 - 新增风险总览员工列表分页后端实施计划 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`