项目思路:
注册:输入邮箱(判重),两次输入密码,获得的正确的验证码,获得不重复的用户名。
登录:输入用户名和密码登录。
忘记密码:输入邮箱(和用户名),获得正确的验证码,两次输入修改的密码。
个人资料:展示用户名、邮箱、手机号、生日、昵称(姓名)、住址、性别。
修改个人资料:生日、手机号(正则判断)、昵称、住址、性别。
教师:
创建courses表(id、courseName、class_id、teacher_id、deadline_at)
classes表(id、className)
studycourse表(id、course_id、class_id、user_id)
创建课程:通过输入学校名称和课程名称,获得唯一邀请码(判重)。
创建课程时,输入班级名和课程名,
输入的班级在class表有对应的班级,就不创建,如果没有对应的班级,在classes表中创建一条数据
输入的课程名和班级名(在classes表查找得到class_id)在courses表中有对应的课程名和班级名,就直接使用上一个老师创建课程时用的邀请码;如果没有查询到(课程名和班级名),说明这个老师第一次创建,需要生成邀请码,然后加入courses表
创建课程时:
1、根据输入的课程名和学校名和邀请码判断是否已经创建该课程,不存在该课程的情况;
2、在classes表中查找是否存在对应学校名,不存在该学校就创建;
3、然后在courses表中创建该课程。
加入课程:通过输入邀请码进入课程(不能加入自己教的课)。
课程管理:
移除学生:在studycourse表中删除该学生对应课程的数据。
注销课程:从courses表中删除已经创建的课程。
查询个人信息
创建selectpeople表(id、selectpeopleName、course_id、class_id、teacher_id)
selectpeople_detail表(id、selectpeople_id、user_id)
signin表(id、signinName、course_id、class_id、teacher_id、createDate_at、deadline_at)
signin_detail表(id、signin_id、user_id、state)
在“我教的课”页面双击进入课程详细,其中包括课堂签到、随机选人、发布作业、发布资料。
课堂互动:
- 课堂签到:在双击课程页面后,将课程id(课程名)及班级id(班级名)传入新的页面,教师选择签到名称,签到开始时间默认为发布签到的时间,签到截止时间,在signin表中插入信息。时长限制采用日期选择栏。数据库查看签到人选对照显示所有未签到的人和签到的人。
- 随机选人:同样将信息传入新的页面,在courses表中查询该课程下的所有学生id,生成在区间内的随机数,在listview里显示代表姓名,随机选取一个学生,加入selectpeople_detail表。
创建workinformation表(id、workName、route(存放excel表格)、course_id、class_id、teacher_id、createdate_at、deadline_at)
worksubmit表(id、user_id、state、route、score)
作业:
- 发布作业:在workinformation表中根据workName、course_id、class_id判重,如果不存在则加入表。接着根据输入的问题数量,依次加入workcontent表。
- 批改作业:修改对应学生提交的worksubmit表中的score。
创建filecreate表(id、class_id、course_id、teacher_id、route)
filedownload表(id,user_id、file_id)
发布课程资料:老师从文件选择框选择文件,上传服务器,服务器对上传文件重命名,保存,在数据库保存文件地址,存入createfile表中。
学生
提示栏(显示日期)
最好学生的界面也显示随机选人选了谁
写作业:在worksubmit表中写入学生提交的作业,此时将state默认的‘未交’改为‘已交’。
加入课程:在studycourse表中加入对应的class_id、course_id、user_id的信息。
退出课程:右键‘我学的课‘中的Listview对应的课程,在studycourse表中删除对应的信息。
下载资料:学生文件保存框选择保存路径,在数据库得到文件路径,从服务器下载,存放在固定文件夹内,保存在downloadfile表内。
最近解决了:
- 注册时自动生成username,加入邮箱判重。(之前是自己输入username并判重)
- 注册时,解决了由于一个邮箱判重,重新输入另一个邮箱,可以使用原来的验证码登录的问题。
- 登录时,输入用户名登录。
- 在登录时加入判断条件,如果是学生就不能显示“我教的课”“创建课程”等教师拥有的功能。
- 在个人资料页面,设为用户名、邮箱不能修改,增加userType的Label。
- 创建课程时,是输入由教师输入学校名和课程名,自动生成邀请码(不重复),然后学生提供邀请码直接加入。
- 在数据库course表中新增deadline_at字段,表示邀请码过期时间。