目录
- 前情回顾与本节目标
- 第一步:数据模型准备
- 1.1 预约课程表(MBA_BookingCourses)
- 1.2 预约记录表(MBA_Bookings)
- 1.3 学员档案表扩展字段
- 第二步:教务端预约课程发布
- 2.1 创建页面
- 2.2 页面布局
- 2.3 添加数据表格
- 2.4 发布预约课程
- 第三步:预约情况查看
- 最终效果
- 总结
前情回顾与本节目标
在上一节中,我们完成了满意度评价功能。本节我们将实现预约管理功能,包括教务端发布预约课程、查看预约情况。
本节核心目标:
- 预约课程发布:教务端可以发布预约课程,设置名额
- 预约情况查看:查看学员预约情况,记录出勤
第一步:数据模型准备
1.1 预约课程表(MBA_BookingCourses)
用于记录发布的预约课程:
| 字段名称 | 字段标识 | 字段类型 | 说明 |
|---|---|---|---|
| 课程ID | _id | 文本 | 主键,系统自动生成 |
| 课程名称 | course_name | 文本 | 课程名称 |
| 授课教师 | teacher_name | 文本 | 教师姓名 |
| 上课日期 | course_date | 日期 | 上课日期 |
| 开始时间 | start_time | 时间 | 开始时间 |
| 结束时间 | end_time | 时间 | 结束时间 |
| 总名额 | total_spots | 数字 | 总名额 |
| 剩余名额 | remaining_spots | 数字 | 剩余名额 |
| 预约状态 | status | 枚举 | 1-可预约、2-已约满、3-已结束 |
| 发布时间 | created | 日期时间 | 发布时间 |
1.2 预约记录表(MBA_Bookings)
用于记录学员的预约:
| 字段名称 | 字段标识 | 字段类型 | 说明 |
|---|---|---|---|
| 预约ID | _id | 文本 | 主键,系统自动生成 |
| 关联课程 | rel_course_id | 多对一 | 关联 BookingCourses 表 |
| 关联学员 | rel_student_id | 多对一 | 关联 StudentProfiles 表 |
| 考勤状态 | status | 枚举 | 1-已预约、2-已签到、3-缺勤、4-已取消 |
| 预约时间 | book_time | 日期时间 | 预约时间 |
1.3 学员档案表扩展字段
在学员档案表中增加黑名单字段:
| 字段名称 | 字段标识 | 字段类型 | 说明 |
|---|---|---|---|
| 黑名单状态 | is_blacklisted | 布尔值 | 是否在黑名单 |
| 缺勤次数 | absent_count | 数字 | 累计缺勤次数 |
| 黑名单原因 | blacklist_reason | 文本 | 加入黑名单原因 |
第二步:教务端预约课程发布
2.1 创建页面
点击创建页面图标,输入"预约管理",选择教务布局
切换到布局管理,选择教务布局,添加菜单
2.2 页面布局
切换回页面设计,在教务布局下添加布局组件
将标题改为教务布局
2.3 添加数据表格
在页面中添加数据表格组件
数据模型选择预约课程表,勾选场景
2.4 发布预约课程
选中弹窗组件里的表单容器组件,设置布局为双列布局
在数据源提交成功方法后增加关闭弹窗,刷新表格事件
第三步:预约情况查看
在操作列添加预约详情按钮
在页面组件下新增弹窗组件
里边添加数据表格,数据模型选择预约记录表
设置数据筛选条件,设置关联课程等于弹窗的入参
给按钮配置点击事件,打开弹窗,传入所在行的数据标识
最终效果
教务发布可供预约的课程
点击预约详情,可以查看学员预约的信息
总结
本节完成了预约管理功能的实现:
- 预约课程发布:教务端发布预约课程,设置名额
- 预约情况查看:查看学员预约列表,记录签到/缺勤