|
|
|
@ -7,56 +7,93 @@ import com.zsz.util.Result;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
|
|
import io.swagger.models.auth.In;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
@Api("班级控制器")
|
|
|
|
|
@RestController
|
|
|
|
|
@RequestMapping("/sms/clazzController")
|
|
|
|
|
/**
|
|
|
|
|
* 班级管理控制器
|
|
|
|
|
* 功能:提供班级信息的CRUD操作接口
|
|
|
|
|
* 路径基准:/sms/clazzController
|
|
|
|
|
*/
|
|
|
|
|
@Api(tags = "班级管理", value = "提供班级信息的增删改查接口") // Swagger接口文档分组说明
|
|
|
|
|
@RestController // 声明为RESTful控制器,返回值自动转为JSON
|
|
|
|
|
@RequestMapping("/sms/clazzController") // 控制器基础路径
|
|
|
|
|
public class ClazzController {
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
ClazzService clazzService;
|
|
|
|
|
@Autowired // 自动注入班级服务层实现
|
|
|
|
|
private ClazzService clazzService;
|
|
|
|
|
|
|
|
|
|
@ApiOperation("获取所有班级信息")
|
|
|
|
|
/**
|
|
|
|
|
* 获取全部班级列表(不分页)
|
|
|
|
|
* 接口路径:GET /sms/clazzController/getClazzs
|
|
|
|
|
* @return 包含所有班级信息的统一响应体
|
|
|
|
|
*/
|
|
|
|
|
@ApiOperation(value = "获取全部班级", notes = "返回所有班级的完整列表")
|
|
|
|
|
@GetMapping("/getClazzs")
|
|
|
|
|
public Result getClazzs(){
|
|
|
|
|
List<Clazz> clazzs = clazzService.getClazzs();
|
|
|
|
|
return Result.ok(clazzs);
|
|
|
|
|
public Result getClazzs() {
|
|
|
|
|
List<Clazz> clazzList = clazzService.getClazzs();
|
|
|
|
|
return Result.ok(clazzList); // 使用统一响应封装
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// http://localhost:8080/sms/clazzController/getClazzsByOpr/1/3?gradeName=&name=
|
|
|
|
|
@ApiOperation("根据年级名称和班级名称获取班级信息,带分页")
|
|
|
|
|
/**
|
|
|
|
|
* 分页条件查询班级信息
|
|
|
|
|
* 接口路径:GET /sms/clazzController/getClazzsByOpr/1/10?gradeName=高一&name=一班
|
|
|
|
|
* @param pageNo 当前页码(路径参数)
|
|
|
|
|
* @param pageSize 每页条数(路径参数)
|
|
|
|
|
* @param clazz 查询条件对象(自动封装请求参数)
|
|
|
|
|
* @return 分页结果统一响应体
|
|
|
|
|
*/
|
|
|
|
|
@ApiOperation(value = "分页条件查询班级", notes = "可根据年级和班级名称筛选")
|
|
|
|
|
@GetMapping("/getClazzsByOpr/{pageNo}/{pageSize}")
|
|
|
|
|
public Result getClazzsByOpr(
|
|
|
|
|
@ApiParam("分页查询的页码数") @PathVariable("pageNo") Integer pageNo,
|
|
|
|
|
@ApiParam("分页查询的页大小") @PathVariable("pageSize") Integer pageSize,
|
|
|
|
|
@ApiParam("班级信息") Clazz clazz
|
|
|
|
|
){
|
|
|
|
|
Page<Clazz> clazzPage = new Page<>(pageNo, pageSize);
|
|
|
|
|
Page<Clazz> page = clazzService.getClazzData(clazzPage,clazz);
|
|
|
|
|
return Result.ok(page);
|
|
|
|
|
@ApiParam(value = "页码", example = "1", required = true)
|
|
|
|
|
@PathVariable("pageNo") Integer pageNo,
|
|
|
|
|
|
|
|
|
|
@ApiParam(value = "每页数量", example = "10", required = true)
|
|
|
|
|
@PathVariable("pageSize") Integer pageSize,
|
|
|
|
|
|
|
|
|
|
@ApiParam("查询条件封装对象") Clazz clazz) {
|
|
|
|
|
|
|
|
|
|
// 初始化分页参数
|
|
|
|
|
Page<Clazz> page = new Page<>(pageNo, pageSize);
|
|
|
|
|
// 调用服务层获取分页数据
|
|
|
|
|
Page<Clazz> resultPage = clazzService.getClazzData(page, clazz);
|
|
|
|
|
return Result.ok(resultPage);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation("增加或修改班级信息")
|
|
|
|
|
/**
|
|
|
|
|
* 新增或更新班级信息
|
|
|
|
|
* 接口路径:POST /sms/clazzController/saveOrUpdateClazz
|
|
|
|
|
* @param clazz 班级实体(JSON格式请求体)
|
|
|
|
|
* @return 操作结果统一响应
|
|
|
|
|
*/
|
|
|
|
|
@ApiOperation(value = "保存班级信息", notes = "ID存在则更新,不存在则新增")
|
|
|
|
|
@PostMapping("/saveOrUpdateClazz")
|
|
|
|
|
public Result saveOrUpdateClazz(
|
|
|
|
|
@ApiParam("Json格式的班级信息") @RequestBody Clazz clazz
|
|
|
|
|
){
|
|
|
|
|
clazzService.saveOrUpdate(clazz);
|
|
|
|
|
@ApiParam(value = "班级JSON数据", required = true)
|
|
|
|
|
@RequestBody Clazz clazz) {
|
|
|
|
|
|
|
|
|
|
clazzService
|
|
|
|
|
.saveOrUpdate(clazz);
|
|
|
|
|
return Result.ok();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation("删除班级信息")
|
|
|
|
|
/**
|
|
|
|
|
* 批量删除班级
|
|
|
|
|
* 接口路径:DELETE /sms/clazzController/deleteClazz
|
|
|
|
|
* @param ids 要删除的ID集合(JSON数组格式)
|
|
|
|
|
* @return 操作结果统一响应
|
|
|
|
|
*/
|
|
|
|
|
@ApiOperation(value = "批量删除班级", notes = "支持同时删除多个班级")
|
|
|
|
|
@DeleteMapping("/deleteClazz")
|
|
|
|
|
public Result deleteClazz(
|
|
|
|
|
@ApiParam("数组格式的班级ID") @RequestBody List<Integer> ids
|
|
|
|
|
){
|
|
|
|
|
clazzService.removeByIds(ids);
|
|
|
|
|
@ApiParam(value = "班级ID数组", example = "[1,2,3]", required = true)
|
|
|
|
|
@RequestBody List<Integer> ids) {
|
|
|
|
|
|
|
|
|
|
clazzService
|
|
|
|
|
.removeByIds(ids);
|
|
|
|
|
return Result.ok();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|