3.3 KiB
3.3 KiB
yudao-module-education
教育业务模块,提供课程、练习、题库、考试等教育业务功能。
当前状态:应用外壳 (Shell)
此模块目前处于应用外壳阶段,仅提供:
- 模块骨架与包结构
- 能力探测端点 (
/education/capability) - 独立的功能开关配置
- 错误码常量
- 权限与菜单种子数据(角色授权由管理员按租户完成)
- 增量 SQL 交付约定
无业务表,无虚假 CRUD。
功能配置
在 application.yaml 或对应 profile 中配置:
yudao:
education:
enabled: true # 是否启用教育模块,默认 false
version: 1.0.0 # 模块版本号
yudao.education.enabled=true:启用模块(Controller 注册、Swagger 分组可见)yudao.education.enabled=false(默认):禁用模块,所有教育端点不可达
API
管理后台 - 能力信息
GET /admin-api/education/capability
- 权限:
education:capability - 响应示例:
{
"code": 0,
"msg": "成功",
"data": {
"module": "education",
"enabled": true,
"version": "1.0.0",
"capabilities": ["shell"]
}
}
错误码
| 错误码 | 说明 |
|---|---|
| 1_005_001_000 | 教育模块未启用 |
构建与运行
单独编译测试
# 编译 education 模块
mvn compile -pl yudao-module-education -am
# 运行 education 模块单元测试
mvn test -pl yudao-module-education -am
整体编译(含 server)
# 编译全量(member + education + system + infra + server)
mvn compile -pl yudao-server -am
# 打包(跳过测试加速)
mvn package -pl yudao-server -am -DskipTests
启动验证
- 确保
yudao.education.enabled=true - 启动
yudao-server - 访问 Swagger UI 查看
education分组 - 调用
GET /admin-api/education/capability
SQL 应用
# 应用种子数据(菜单 + 权限定义;执行后由管理员为目标租户角色授权)
mysql -u root -p ruoyi-vue-pro < sql/mysql/education/000-education-seed.sql
# 回滚
mysql -u root -p ruoyi-vue-pro < sql/mysql/education/000-education-rollback.sql
SQL 交付约定
- 所有 Education SQL 文件存放在
sql/mysql/education/目录下 - 文件命名:
NNN-描述.sql(NNN 为三位递增序号) - 每个正向脚本应有对应的回滚脚本
- schema 文件仅包含 DDL,seed 文件仅包含 DML
- 不修改项目根目录的
ruoyi-vue-pro.sql巨量全量转储
前端状态
当前工作区未检出完整的前端源码。 yudao-ui/yudao-ui-admin-vue3/ 仅包含部分 MES 相关文件(src/api/mes/、src/views/mes/),缺少 package.json、router/、store/、config/ 等核心框架文件。
因此:
- 管理后台教育菜单项:仅在后端通过 SQL 种子数据注册了
system_menu记录(ID 6800-6801)。前端无路由/页面组件可渲染,菜单在管理后台不会显示。 - Student Web/H5 应用外壳:前端源码不存在,无法建立。
阻塞项:完整前端源码(含 router、store、package.json)是后续前端集成的必要前提。一旦前端源码就位,需:
- 在 Vue3 admin 的路由中添加
/education路由项,绑定 Education 菜单组件 - 添加
src/api/education/API 封装层 - Student Web/H5 端如需要独立入口,需新建对应前端项目