3.13 管理-班级

本节完成班级表(clazz)的新增和修改。
(如果使用上面的远程前端,那么需要在Controller类上声明标签CrossOrgin,原因是不同ip之间的http请求称为跨域请求,有可能被拦截
@CrossOrigin 
@RestController 
public class GreetingController{
    /*
     省略
     */
    }

一.添加班级
由于class是编程语言的关键字,所以使用clazz作为表名。
用管理员登录后,点击管理,然后左侧菜单的“班级管理”,第一条就是添加班级
选择班级的年级后,输入班级名、专业、方向(可为空)、下列选择默认课程(可为空)
默认课程的值和菜单的课程一致,如果前面的课程查询已完成(13.5要完成的getCourses请求),这里就会有值。
点击添加课程后,将以post方式发送saveClass请求,参数为:

和课程表course一样,clazz表也有一个valid字段,表示该班级是否有效,新建班级该值为‘1’,表示有效

二.修改班级
修改班级和修改课程类似。它也需要额外载入两个数据:
1.取得所有教师。班级在创建的时候,会让创建者成为该班级的默认教师,修改班级的时候,可以修改。前端将发起/getTeachers的get请求,后台则需要返回role为4的所有用户,返回的json格式为:
{    
    "code""200"
    "info": null, 
    "data": [
        {
            "username""13708",
            "role""4",
            "nickname""肖生",
            "createDate""2019-03-14 18:43:25",
            "isValid""1",
            "wxOpenid": null
        },
        {
            "username""kcw",
            "role""4",
            "nickname""邝文文",
            "createDate""2020-02-14 14:02:50",
            "isValid""1",
            "wxOpenid": null
        },
        //其余省略...
     ]
}        
2.取得所有班级。前端将发起一个get请求/getAllClasses,请求没有参数,要求返回所有班级。
该请求应当返回的json格式为:
{    
"code""200",    
"info": null,    
"data": [
        {
            "valid""1",
            "teacherId""abc",
            "major""软件技术",
            "studentNumber": 237,
            "grade""0",
            "name""软件",
            "id""27",
            "oriented""无",
            "courseId""1",
            "createDate""2020-03-07 22:45:04"
        },
        {
            "valid""1",
            "teacherId""abc",
            "major""1",
            "studentNumber": 3,
            "grade""0",
            "name""教师",
            "id""28",
            "oriented""1",
            "courseId""1",
            "createDate""2020-02-27 11:11:52"
        },
        //省略剩余班级
   ]
}

与添加课程、修改课程共用addCourse请求一样,添加班级和修改班级也共用请求saveClass。要修改班级的时候,下拉选择要修改的班级,表单对应的值会自动填入,修改了信息,点击修改会把当前表单的所有项都发送到后台的/saveClass请求: