122 lines
4.2 KiB
Markdown
122 lines
4.2 KiB
Markdown
|
|
# Project Detail Special Check Tab Backend Implementation Plan
|
||
|
|
|
||
|
|
> **For agentic workers:** REQUIRED: Use superpowers:subagent-driven-development (if subagents available) or superpowers:executing-plans to implement this plan. Steps use checkbox (`- [ ]`) syntax for tracking.
|
||
|
|
|
||
|
|
**Goal:** 明确项目详情“专项排查”标签页本次无需新增后端接口或服务逻辑,确保前端静态页面开发不会错误依赖后端改造。
|
||
|
|
|
||
|
|
**Architecture:** 本次后端实施遵循最短路径原则,不引入任何新的专项排查接口、不扩展项目详情聚合接口、不补做图谱中台代理。实施工作仅包含边界核验、现有接口影响确认和文档沉淀,确保前端可独立完成静态页面落位。
|
||
|
|
|
||
|
|
**Tech Stack:** Java 21, Spring Boot 3, Maven, Swagger/OpenAPI
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### Task 1: 核验本次专项排查页不依赖新增后端接口
|
||
|
|
|
||
|
|
**Files:**
|
||
|
|
- Reference: `ccdi-project/src/main/java/com/ruoyi/ccdi/project/controller/CcdiProjectController.java`
|
||
|
|
- Reference: `ruoyi-ui/src/views/ccdiProject/detail.vue`
|
||
|
|
- Modify: `docs/plans/backend/2026-03-24-project-detail-special-check-tab-backend-implementation.md`
|
||
|
|
|
||
|
|
- [ ] **Step 1: Write the backend boundary checklist**
|
||
|
|
|
||
|
|
先在实施计划中锁定以下边界:
|
||
|
|
|
||
|
|
- 专项排查页本次是前端静态页面
|
||
|
|
- 图谱分析只提供外链入口,不依赖后端图谱接口
|
||
|
|
- 扩展查询本次不接真实数据接口
|
||
|
|
- 项目详情现有 `getProject` 接口继续只服务页头和基础项目信息
|
||
|
|
|
||
|
|
- [ ] **Step 2: Verify current repository does not require a new API**
|
||
|
|
|
||
|
|
Run:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
rg -n "getProject\\(|/ccdi/project/|专项排查|special" ruoyi-ui/src/views ccdi-project/src/main/java -S
|
||
|
|
```
|
||
|
|
|
||
|
|
Expected:
|
||
|
|
|
||
|
|
- 能确认专项排查页当前没有真实接口接线
|
||
|
|
- 能确认项目详情已有接口足够支撑页面基础上下文
|
||
|
|
|
||
|
|
- [ ] **Step 3: Keep implementation minimal**
|
||
|
|
|
||
|
|
若仓库核验结果与设计一致,则明确记录:
|
||
|
|
|
||
|
|
- 本次后端不新增 Controller
|
||
|
|
- 本次后端不新增 Service
|
||
|
|
- 本次后端不新增 DTO/VO
|
||
|
|
- 本次后端不新增 SQL
|
||
|
|
|
||
|
|
- [ ] **Step 4: Commit**
|
||
|
|
|
||
|
|
```bash
|
||
|
|
git add docs/plans/backend/2026-03-24-project-detail-special-check-tab-backend-implementation.md
|
||
|
|
git commit -m "新增专项排查后端实施计划"
|
||
|
|
```
|
||
|
|
|
||
|
|
### Task 2: 验证项目详情既有接口不会被本次前端页面改造误伤
|
||
|
|
|
||
|
|
**Files:**
|
||
|
|
- Reference: `ccdi-project/src/main/java/com/ruoyi/ccdi/project/controller/CcdiProjectController.java`
|
||
|
|
- Reference: `ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/ICcdiProjectService.java`
|
||
|
|
- Reference: `ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectServiceImpl.java`
|
||
|
|
|
||
|
|
- [ ] **Step 1: Verify the project detail contract**
|
||
|
|
|
||
|
|
Run:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
rg -n "查询项目详情|getProject\\(|select.*project" ccdi-project/src/main/java/com/ruoyi/ccdi/project -S
|
||
|
|
```
|
||
|
|
|
||
|
|
Expected:
|
||
|
|
|
||
|
|
- 能定位到项目详情控制器与服务实现
|
||
|
|
- 能确认本次前端专项排查页无需扩充该接口返回字段
|
||
|
|
|
||
|
|
- [ ] **Step 2: Record the verification conclusion**
|
||
|
|
|
||
|
|
将核验结论写入实施计划:
|
||
|
|
|
||
|
|
- 当前项目详情接口已足够支撑专项排查页获取 `projectId` 与基础项目信息
|
||
|
|
- 专项排查静态页面无需新增后端字段
|
||
|
|
- 图谱外链地址本次由前端常量承载,不由后端下发
|
||
|
|
|
||
|
|
- [ ] **Step 3: Commit**
|
||
|
|
|
||
|
|
```bash
|
||
|
|
git status --short
|
||
|
|
```
|
||
|
|
|
||
|
|
Expected:
|
||
|
|
|
||
|
|
- 若只有计划文档变更,则无需新增代码类提交
|
||
|
|
|
||
|
|
### Task 3: 为后续真实专项排查能力预留后端边界说明
|
||
|
|
|
||
|
|
**Files:**
|
||
|
|
- Modify: `docs/plans/backend/2026-03-24-project-detail-special-check-tab-backend-implementation.md`
|
||
|
|
|
||
|
|
- [ ] **Step 1: Document future backend entry points**
|
||
|
|
|
||
|
|
在计划中补充说明:若后续专项排查需要真实化,应优先按能力拆分,而不是一次性扩展项目详情接口。后续候选能力包括:
|
||
|
|
|
||
|
|
- 专项排查筛选查询接口
|
||
|
|
- 图谱地址配置接口或配置项下发
|
||
|
|
- 扩展查询分页接口
|
||
|
|
|
||
|
|
- [ ] **Step 2: Keep the current scope explicit**
|
||
|
|
|
||
|
|
明确写入当前结论:
|
||
|
|
|
||
|
|
- 上述能力全部不在本次实施范围内
|
||
|
|
- 本次后端工作到“边界确认”即结束
|
||
|
|
|
||
|
|
- [ ] **Step 3: Commit**
|
||
|
|
|
||
|
|
```bash
|
||
|
|
git add docs/plans/backend/2026-03-24-project-detail-special-check-tab-backend-implementation.md
|
||
|
|
git commit -m "补充专项排查后端边界说明"
|
||
|
|
```
|