依据:《小程序需求规格说明书 V3.0》《小程序项目详细设计说明书 V2.0》 日期:2026-09-04(V1.0)→ 2026-09-08(V1.1,追加 Phase9-15b)| 执行方式:按阶段顺序执行,每阶段完成 → 后端
mvn clean compile验证 → 阶段评审 → git 提交并推送
mvn clean compile(本机 MySQL 不可达,不做运行时验证)。npm run build。PhaseN: 描述)。@PostMapping;响应统一 Result<T>;DI 用 @Resource。train-backend/src/main/resources/schema.sql,建表幂等。目标:补齐前端通用工具(时间/金额格式化),核查一期课堂管理三端现状是否完备。
文件:
train-frontend/utils/format.jstrain-frontend/pages/mine/index.vue(若时间展示不合规则改)任务:
utils/format.js:parseDate(str)(ISO → 本地 Date 兼容)、formatDateTime(str)(yyyy-MM-dd HH:mm:ss)、formatDate(str)(yyyy-MM-dd)、fenToYuan(fen)(分→元保留2位)、timeAgo(可选)。new Date(str).toLocaleString() 替换为 formatDateTime()(无则跳过)。mvn clean compile(后端如无改动则跳过)。Phase1: 前端新增utils/format.js通用工具(时间/金额格式化)目标:落地 train_enrollment / train_order / train_invite / train_course_material 四表及对应实体、Mapper。
文件:
train-backend/src/main/resources/schema.sqlentity/TrainEnrollment.java、entity/TrainOrder.java、entity/TrainInvite.java、entity/TrainCourseMaterial.javamapper/TrainEnrollmentMapper.java、mapper/TrainOrderMapper.java、mapper/TrainInviteMapper.java、mapper/TrainCourseMaterialMapper.java任务:
mvn clean compile 通过。Phase2: 新增报名/订单/转介/资料包表实体与Mapper目标:报名全流程(班次浏览 → 报名单 → 支付占位)。
文件:
controller/EnrollmentController.java(/api/enroll/classes|create|mine)dto/EnrollmentVO.java(班次报名视图:剩余名额、价格)train-frontend/utils/api.js(enroll 相关封装)train-frontend/pages/enroll/list.vue、train-frontend/pages/enroll/form.vuetrain-frontend/pages.json(注册页面)train-web/src/views/Enrollments.vue、train-web/src/api/enroll.js、路由注册任务:
classes(可报名班次含容量/价格/剩余名额)、create(生成报名单,带 inviteCode 则记转介)、mine。count(status in pending/paid) < capacity。mvn clean compile 通过。Phase3: 报名模块(后端接口+小程序报名页+后台报名管理)目标:订单创建、微信支付(test-mode 模拟)、回调幂等入账。
文件:
service/PayService.java、controller/OrderController.java(/api/pay/create|status|cancel|notify)train-frontend/pages/pay/index.vue、train-frontend/pages/pay/result.vuetrain-frontend/utils/api.js、pages.jsontrain-web/src/views/Orders.vue、train-web/src/api/order.js、路由注册任务:
/api/pay/notify。mvn clean compile 通过。Phase4: 支付模块(test-mode 模拟支付+订单状态机)目标:专属海报、转介绍关系、激励发放、后台漏斗。
文件:
controller/InviteController.java(/api/invite/myposter|stats)controller/admin/AdminBizController.java(/api/admin/invite/funnel)train-frontend/pages/share/index.vue、train-frontend/pages/share/stats.vuetrain-frontend/utils/api.js、pages.jsontrain-web/src/views/Invites.vue、train-web/src/api/invite.js、路由注册任务:
mvn clean compile 通过。Phase5: 裂变分享模块(海报/邀请码/激励发放/转介漏斗)目标:课前资料管理(后台配置 + 学员端查看),订阅消息骨架。
文件:
controller/MaterialController.java(/api/class/materials)controller/admin/AdminMaterialController.java(/api/admin/material/list|save)train-frontend/pages/material/index.vuetrain-frontend/utils/api.js、pages.jsontrain-web/src/views/Materials.vue、路由注册任务:
service/SubscribeMessageService.java 骨架(sendSubscribeMessage 留 test-mode 打日志)。mvn clean compile 通过。Phase6: 课前资料包+订阅消息骨架目标:完课证书生成、T+ 跟进定时任务、卡券核销。
文件:
service/CertService.java、service/FollowUpTask.java(@Scheduled)controller/PlanController.java(追加 /api/plan/cert、/api/coupon/redeem)train-frontend/pages/mine/index.vue(证书/核销入口)任务:
mvn clean compile 通过。Phase7: 完课证书+卡券核销+T+跟进定时任务目标:train-web 菜单按角色过滤(admin 全量 / lecturer 审核评分 / assistant 限负责组)。
文件:
train-web/src/views/Layout.vue、train-web/src/router/index.js任务:
npm run build 通过(若本环境可执行)。Phase8: 管理后台按角色过滤菜单与路由守卫目标:train-web 新增投屏大屏页 /screen,面向教室大屏展示课堂实时数据(积分榜/签到/完课进度/小组进展矩阵/投票结果/课程资料)。
文件:
train-web/src/views/Screen.vue、train-web/src/api/screen.jstrain-web/src/router/index.js任务:
/screen 注册。npm run build 通过。Phase9: 课程现场投屏大屏页目标:投屏按 train_screen_config 开关显示;课程计时与环节进度;小组进展矩阵;投票结果录入与展示。
文件:
controller/admin/AdminScreenController.java(config/get|save|step|start|reset|vote/record)、entity/TrainScreenConfig.java、mapper/TrainScreenConfigMapper.javatrain-backend/src/main/resources/schema.sql、train-web/src/views/Screen.vue任务:
train_screen_config 表 DDL(8 个模块开关 + agenda 环节 JSON + current_step + banner)。mvn clean compile + npm run build 通过。Phase10: 投屏按课程配置显示, 课程计时与环节进度, 小组进展矩阵, 投票结果录入与展示, 课程资料展示目标:学员进班后联动 train_enrollment 确认状态(FR-ENROLL-03:班级码进班 → enrollment 置 confirmed)。
文件:
controller/ClassController.java、service/EnrollmentService.java(或直连 Mapper)任务:
class_id + invite_code 关联 enrollment → 状态 pending/paid → confirmed。mvn clean compile 通过。Phase11: 班级码进班后联动enrollment确认(FR-ENROLL-03)目标:train_invite 增加 share_path / share_text;小程序展示分享文案与二维码占位。
文件:
train-backend/src/main/resources/schema.sql、entity/TrainInvite.java、controller/InviteController.javatrain-frontend/pages/share/index.vue任务:
mvn clean compile 通过。Phase12: 分享海报增加sharePath与shareText字段,小程序展示分享文案与二维码占位目标:FollowUpTask 补 T+21/T+30;新增 PreClassReminderTask 课前 T-7/T-3/T-1 提醒记录。
文件:
service/FollowUpTask.java、service/PreClassReminderTask.java(新建)任务:
mvn clean compile 通过。Phase13: FollowUpTask补T+21/T+30,新增PreClassReminderTask(T-7/T-3/T-1)目标:train_group_order / train_group_order_member / train_case 三表 + 团报流程(发起/支付/开票)+ 案例采集→授权→回流。
文件:
entity/TrainGroupOrder.java、entity/TrainGroupOrderMember.java、entity/TrainCase.java 及 Mapper;controller/GroupOrderController.java、controller/CaseController.java、controller/admin/AdminGroupOrderController.java、controller/admin/AdminCaseController.javatrain-frontend/pages/group-order/{index,create,detail}.vue、train-frontend/pages/case/index.vuetrain-web/src/views/GroupOrders.vue、train-web/src/views/Cases.vue + 路由train-backend/src/main/resources/schema.sql、pages.json、train-web/src/router/index.js任务:
mvn clean compile 通过。Phase14: 团报发票与案例授权目标:补齐待支付取消、继续支付、小组设置为发言人等可见交互。
文件:
train-frontend/pages/pay/index.vue、train-frontend/pages/group/index.vue、utils/api.js任务:
Phase15a: 补齐小程序可见功能(待支付取消/继续支付/小组设置为发言人)目标:课程双态(未进班可浏览/已进班可上课)+ 课程 tab + 列表进班 + 管理员审核 + 课程主页。
文件:
controller/admin/AdminCourseController.java、entity/TrainCourse.java(双态字段)、train-frontend/pages/course/index.vue、train-frontend/pages/course/detail.vuepages.json(tabBar 课程)、train-web/src/router/index.js(/courses)任务:
mvn clean compile 通过。Phase15b: 课程双态 课程tab/列表进班/管理员审核/课程主页目标:V3.0 需求(课程中心化、报名=报课程、首页浮层登录+全局守卫)落地到代码。
文件:
任务:
9de2386)。9666a38)→ 课程为列表+首页按前中后阶段展示(6c45a3c)。4605b2c);报名中心按课程分组展示班次(575de83);报名只报课程、班次审核分配,新增课程管理/班级维度分组/按签到重分/助教调班(9f06216)。c85d2ba);group/mine 未入组静默(4fc2fd3);守卫 storage 兜底(c9fa4cc)。mvn clean compile 通过。| 阶段 | 评审日期 | 验证方式 | 结果 | commit |
|---|---|---|---|---|
| 1 | 2026-09-04 | mvn compile | ✅ | b20c487 |
| 2 | 2026-09-04 | mvn compile | ✅ | 8b82ea9 |
| 3 | 2026-09-04 | mvn compile | ✅ | 1e073a0 |
| 4 | 2026-09-04 | mvn compile | ✅ | c7f8b50 |
| 5 | 2026-09-04 | mvn compile | ✅ | 08fe3c0 |
| 6 | 2026-09-05 | mvn compile | ✅ | 0065895 |
| 7 | 2026-09-05 | mvn compile | ✅ | 2fdc435 |
| 8 | 2026-09-05 | npm run build | ✅ | 6a08ebd |
| 9 | 2026-09-05 | mvn compile + build | ✅ | 47301fb |
| 10 | 2026-09-05 | mvn compile + build | ✅ | 9ba5889 |
| 11 | 2026-09-05 | mvn compile | ✅ | 56a64fd |
| 12 | 2026-09-06 | mvn compile | ✅ | 372b4ec |
| 13 | 2026-09-06 | mvn compile | ✅ | d811135 |
| 14 | 2026-09-06 | mvn compile | ✅ | afb30a1 |
| 15a | 2026-09-06 | 前端构建评审 | ✅ | f1bdbe2 |
| 15b | 2026-09-06 | mvn compile + 前端评审 | ✅ | 248714d |
| 16 | 2026-09-07~08 | mvn compile + 前端评审 | ✅ | 9de2386 9666a38 6c45a3c 4605b2c 575de83 9f06216 c85d2ba 4fc2fd3 c9fa4cc |
爱伴 · AI之旅 小程序实施计划 V1.1 · 2026-09-08