docs/charter.md — 项目章程docs/acceptance-criteria.md — 里程碑验收标准docs/project-log.md — 本日志service/pom.xml — Maven 构建配置(Spring Boot 1.5.9)service/src/main/java/com/fenzhitech/crrc/ — 标准包结构service/src/main/resources/application.properties — 应用配置wxapp/ — 微信小程序骨架wxbackstage/ — 后台管理前端骨架https://gogs.wxapp.info/lio/sayu-app.git[init] 项目初始化mvn compile BUILD SUCCESS| # | 接口 | 方法 | 测试结果 |
|---|---|---|---|
| 1 | /api/wx/grower/profile | PUT | ✅ 创建档案 |
| 2 | /api/wx/grower/profile | GET | ✅ 查询档案 |
| 3 | /api/wx/grower/recruit | POST | ✅ 发布招工 |
| 4 | /api/wx/grower/recruit/list | GET | ✅ 我的招工列表 |
| 5 | /api/wx/grower/recruit/{id} | GET | ✅ 招工详情 |
| 6 | /api/wx/grower/recruit/{id} | PUT | ✅ 编辑招工 |
| 7 | /api/wx/grower/recruit/{id} | DELETE | ✅ 下架招工 |
| 8 | /api/wx/grower/workers | GET | ✅ 工人列表 |
| 9 | /api/wx/grower/workers/{id} | GET | ✅ 工人详情 |
| 10 | /api/wx/grower/buyers | GET | ✅ 客商列表 |
| 11 | /api/wx/grower/buyers/{id} | GET | ✅ 客商详情 |
| 12 | /api/wx/call/phone | POST | ✅ 拨号接口 |
| 13 | /api/admin/grower-audit/list | GET | ✅ 待审核列表 |
| 14 | /api/admin/grower-audit/{id}/audit | POST | ✅ 审核操作 |
| 15 | /api/admin/recruit-review/list | GET | ✅ 待复核列表 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 1 | /api/wx/home/index | GET | ✅ 首页聚合 |
| 2 | /api/wx/home/market-prices | GET | ✅ 行情价格 |
| 3 | /api/wx/home/statistics | GET | ✅ 统计数据 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 4 | /api/wx/grower/profile | PUT | ✅ 创建果农档案 |
| 5 | /api/wx/grower/profile | GET | ✅ 查询果农档案 |
| 6 | /api/wx/grower/recruit | POST | ✅ 发布招工 |
| 7 | /api/wx/grower/recruit/list | GET | ✅ 招工列表 |
| 8 | /api/wx/grower/recruit/{id} | GET | ✅ 招工详情 |
| 9 | /api/wx/grower/recruit/{id} | PUT | ✅ 编辑招工 |
| 10 | /api/wx/grower/recruit/{id} | DELETE | ✅ 下架招工 |
| 11 | /api/wx/grower/workers | GET | ✅ 工人列表 |
| 12 | /api/wx/grower/buyers | GET | ✅ 客商列表 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 13 | /api/wx/worker/profile | PUT | ✅ 创建工人档案 |
| 14 | /api/wx/worker/profile | GET | ✅ 查询工人档案 |
| 15 | /api/wx/worker/recommend | GET | ✅ 工人推荐列表 |
| 16 | /api/wx/worker/apply | POST | ✅ 工人报名招工 |
| 17 | /api/wx/worker/applies | GET | ✅ 报名列表 |
| 18 | /api/wx/worker/status | PUT | ✅ 更新工人状态 |
| 19 | /api/wx/buyer/profile | PUT | ✅ 创建客商档案 |
| 20 | /api/wx/buyer/profile | GET | ✅ 查询客商档案 |
| 21 | /api/wx/buyer/goods | GET | ✅ 货源列表 |
| 22 | /api/wx/buyer/goods/{id} | GET | ✅ 货源详情 |
| 23 | /api/wx/buyer/unlock | POST | ✅ 解锁电话 |
| 24 | /api/wx/supplier/shop | PUT | ✅ 创建农资店铺 |
| 25 | /api/wx/supplier/shop | GET | ✅ 查询农资店铺 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 26 | /api/wx/auth/wx-login | POST | ✅ 微信登录 |
| 27 | /api/wx/auth/select-identity | POST | ✅ 选择身份 |
| 28 | /api/wx/auth/user-info | GET | ✅ 用户信息 |
| 29 | /api/admin/auth/login | POST | ✅ 后台登录 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 30 | /api/admin/grower-audit/list | GET | ✅ 待审核列表 |
| 31 | /api/admin/grower-audit/{id}/audit | POST | ✅ 审核操作 |
| 32 | /api/admin/recruit-review/list | GET | ✅ 待复核列表 |
| 33 | /api/admin/sms/config | GET | ✅ 短信配置查询 |
| 34 | /api/admin/sms/config | PUT | ✅ 短信配置更新 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 35 | /api/wx/call/phone | POST | ✅ 拨号接口 |
| 36 | /api/wx/buyer/preferences | PUT/GET | ✅ 客商偏好 |
| # | 问题 | 文件 | 修复方案 |
|---|---|---|---|
| 1 | @Async方法返回boolean基本类型导致AOP代理NPE | SmsService.java | 改为void返回类型 |
| 2 | BuyerController.unlockPhone无null检查 | BuyerController.java | 添加growerId/growerIdentityId兼容 |
| 3 | data.sql status值与代码逻辑不一致 | data.sql | 统一为0=正常(与代码一致) |
| 4 | WorkerApplyServiceTest mock void方法错误 | WorkerApplyServiceTest.java | thenReturn→doNothing |
src/main/resources/data.sql — 初始数据(管理员+测试用户+四身份)application.properties — 添加 spring.datasource.initialization-mode=neverschema.sql.bak — 建表脚本备份| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 1 | /api/admin/dashboard/overview | GET | ✅ 宏观概览 |
| 2 | /api/admin/dashboard/match | GET | ✅ 撮合指标 |
| 3 | /api/admin/dashboard/traffic | GET | ✅ 流量指标 |
| 4 | /api/admin/dashboard/map | GET | ✅ 产业地图 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 5 | /api/admin/export/users | POST | ✅ 导出用户列表 |
| 6 | /api/admin/export/match-records | POST | ✅ 导出撮合记录 |
| 7 | /api/admin/export/operation-logs | POST | ✅ 导出操作日志 |
| 8 | /api/admin/export/status/{taskId} | GET | ✅ 查询导出状态 |
| 9 | /api/admin/export/download/{taskId} | GET | ✅ 下载导出文件 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 10 | /api/admin/recruit/patrol | GET | ✅ 招工巡查列表 |
| 11 | /api/admin/recruit/{id}/force-down | PUT | ✅ 强制下架 |
| 12 | /api/admin/users/{id} | PUT | ✅ 用户信息修正 |
| 13 | /api/admin/complaint/list | GET | ✅ 举报列表 |
| 14 | /api/admin/complaint/{id} | PUT | ✅ 处理举报 |
| # | 接口 | 方法 | 结果 |
|---|---|---|---|
| 15 | /api/wx/supplier/categories | GET | ✅ 农资分类列表 |
| 16 | /api/wx/supplier/shops | GET | ✅ 店铺列表 |
| 17 | /api/wx/buyer/preferences | GET/PUT | ✅ 收购偏好(Phase 2b已有) |
| 阶段 | 派出时间 | 交付时间 | 总耗时 | 说明 |
|---|---|---|---|---|
| 阶段零 | 2026-05-30 16:00 | 2026-05-30 17:15 | 1h 15m | 环境准备 |
| Phase 1 M1 需求分析 | 2026-05-30 17:30 | 2026-05-30 17:45 | 15m | 一次通过 |
| Phase 1 M2 架构设计 | 2026-05-30 18:00 | 2026-05-30 18:15 | 15m | 一次通过 |
| Phase 1 M3 编码实现 | 2026-05-30 18:30 | 2026-05-30 19:00 | 30m | 一次通过 |
| Phase 1 M4 测试验收 | 2026-05-30 19:15 | 2026-05-30 19:30 | 15m | 一次通过 |
| Phase 2a M1 需求分析 | 2026-05-30 19:00 | 2026-05-30 19:30 | 30m | 一次通过 |
| Phase 2a M2 架构设计 | 2026-05-30 19:30 | 2026-05-30 20:00 | 30m | 一次通过 |
| Phase 2a M3 编码实现 | 2026-05-30 20:00 | 2026-05-30 20:30 | 30m | 一次通过 |
| Phase 2a M4 测试验收 | 2026-05-30 20:30 | 2026-05-30 21:00 | 30m | 一次通过 |
| Phase 2a 接口联调 | 2026-05-30 21:00 | 2026-05-30 21:15 | 15m | 修复4个问题 |
| Phase 2b M1 需求分析 | 2026-05-30 19:40 | 2026-05-30 19:50 | 10m | 一次通过 |
| Phase 2b M2 架构设计 | 2026-05-30 19:50 | 2026-05-30 20:10 | 20m | 一次通过 |
| Phase 2b M3 编码实现 | 2026-05-30 20:10 | 2026-05-30 20:20 | 10m | 一次通过 |
| Phase 2b M4 测试验收 | 2026-05-30 20:20 | 2026-05-30 20:25 | 5m | 一次通过 |
| Phase 2b 接口联调 | 2026-05-30 20:25 | 2026-05-30 20:35 | 10m | 修复4个问题 |
| 阶段 | 返工次数 | 团队 | 最常见原因 |
|---|---|---|---|
| 阶段零 | 0 | - | - |
| Phase 1 | 0 | - | - |
| Phase 2a | 0 | - | 联调修复4个SQL/配置问题 |
| Phase 2b | 0 | - | 联调修复4个问题(@Async/null检查/status值/mock) |
| 阶段 | 一次通过率 |
|---|---|
| 阶段零 | 100% |
| Phase 1 M1 需求分析 | 100% |
| Phase 1 M2 架构设计 | 100% |
| Phase 1 M3 编码实现 | 100% |
| Phase 1 M4 测试验收 | 100% |
| Phase 2a M1 需求分析 | 100% |
| Phase 2a M2 架构设计 | 100% |
| Phase 2a M3 编码实现 | 100% |
| Phase 2a M4 测试验收 | 100% |
| Phase 2b M1 需求分析 | 100% |
| Phase 2b M2 架构设计 | 100% |
| Phase 2b M3 编码实现 | 100% |
| Phase 2b M4 测试验收 | 100% |