SpecialX
|
78e406b317
|
feat(content): v2 扩展 Elective/LessonPlan/CoursePlan 三业务域
新增 3 个业务域(10 RPC):
- ElectiveService: 选修课列表/学生选课记录/选课/退课(含容量与重复校验)
- LessonPlanService: 教师备课列表/学生备课列表(仅 published)/详情
- CoursePlanService: 学生课程计划列表/详情
- KnowledgeGraphService.GetKnowledgePath: 与 GetLearningPath 同实现
新增 4 张 MySQL 表(elective_courses/selections/lesson_plans/course_plans),含完整索引。
新增 11 个权限点,覆盖 admin/teacher/student/parent 四角色。
proto 由 4 Service/22 RPC 扩展至 7 Service/32 RPC,v1 全部 RPC 保持向后兼容。
修复 logger.ts pino 导入: default import 在 NodeNext ESM 下不可调用,
改用 named import(与 iam/msg/core-edu 对齐)。
Docker 本地测试全部通过(HTTP + gRPC 双协议),健康检查、
Elective/LessonPlan/CoursePlan CRUD、4 个新 gRPC Service 全部验证通过。
nextstep-v2.md 已创建,记录上下游依赖与 6 项联调待办。
|
2026-07-14 17:54:37 +08:00 |
|
SpecialX
|
b50dd62c9b
|
chore(content): merge content full implementation into main
Merge feat/content-ai09 with complete content service
|
2026-07-10 19:13:02 +08:00 |
|
SpecialX
|
9fae2b0e78
|
feat: auto committed
|
2026-07-10 18:57:57 +08:00 |
|
SpecialX
|
9850bfcfd1
|
feat(p4): content analysis service with Neo4j knowledge graph and ClickHouse analytics
P4 阶段交付物:
- services/content: 内容资源服务(NestJS)
- textbooks: 教材 CRUD + 知识图谱绑定
- config/neo4j.ts: Neo4j driver 单例
- textbooks.service.ts: MySQL CRUD + Neo4j 知识图谱(createKnowledgeGraph/getPrerequisites)
- package.json: 补充 @opentelemetry/sdk-node + exporter-trace-otlp-http
- services/data-ana: 数据分析服务(Python FastAPI)
- main.py: FastAPI + /healthz + class_performance + student_weakness 骨架
- clickhouse_client.py: ClickHouse 客户端封装
- config.py: 环境变量配置
- packages/shared-proto/proto/content.proto: TextbookService + KnowledgeGraphService 契约
- packages/shared-proto/proto/analytics.proto: AnalyticsService 契约(class_performance/student_weakness)
|
2026-07-08 01:38:35 +08:00 |
|