You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ssgl/zsq/DormitoryStudentController....

73 lines
3.6 KiB

package com.yanzhen.controller;
import com.github.pagehelper.PageInfo;
import com.yanzhen.entity.DormitoryStudent;
import com.yanzhen.entity.Student;
import com.yanzhen.service.DormitoryService宿;
import com.yanzhen.service.DormitoryStudentService宿;
import com.yanzhen.service.StudentService;
import com.yanzhen.utils.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@RestController // 声明这是一个控制器,并且返回的数据直接写入 HTTP 响应体中,而不是解析为跳转路径。
@RequestMapping("/dormitoryStudent") // 设置请求的根路径为 /dormitoryStudent
public class DormitoryStudentController {
@Autowired // 自动注入DormitoryStudentService实例
private DormitoryStudentService宿 dormitoryStudentService;
@Autowired // 自动注入StudentService实例
private StudentService studentService;
@Autowired // 自动注入DormitoryService实例
private DormitoryService宿 dormitoryService;
@PostMapping("create") // 映射HTTP POST请求到 create 方法
public Result create(@RequestBody DormitoryStudent dormitoryStudent){ // 从请求体中获取 DormitoryStudent 对象
int flag = dormitoryStudentService.create(dormitoryStudent); // 调用服务层创建学生宿舍记录
if(flag>0){ // 如果创建成功
return Result.ok(); // 返回成功结果
}else{ // 如果创建失败
return Result.fail(); // 返回失败结果
}
}
@GetMapping("delete") // 映射HTTP GET请求到 delete 方法
public Result delete(String ids){ // 接收要删除的学生宿舍记录的ID字符串
int flag = dormitoryStudentService.delete(ids); // 调用服务层删除指定ID的学生宿舍记录
if(flag>0){ // 如果删除成功
return Result.ok(); // 返回成功结果
}else{ // 如果删除失败
return Result.fail(); // 返回失败结果
}
}
@PostMapping("update") // 映射HTTP POST请求到 update 方法
public Result update(@RequestBody DormitoryStudent dormitoryStudent){ // 从请求体中获取 DormitoryStudent 对象
int flag = dormitoryStudentService.update(dormitoryStudent); // 调用服务层更新学生宿舍记录
if(flag>0){ // 如果更新成功
return Result.ok(); // 返回成功结果
}else{ // 如果更新失败
return Result.fail(); // 返回失败结果
}
}
@GetMapping("detail") // 映射HTTP GET请求到 detail 方法
public DormitoryStudent detail(Integer id){ // 接收学生宿舍记录的ID
return dormitoryStudentService.detail(id); // 调用服务层获取指定ID的学生宿舍记录详情并返回
}
@PostMapping("query") // 映射HTTP POST请求到 query 方法
public Map<String,Object> query(@RequestBody DormitoryStudent dormitoryStudent){ // 从请求体中获取 DormitoryStudent 对象用于查询条件
PageInfo<DormitoryStudent> pageInfo = dormitoryStudentService.query(dormitoryStudent); // 调用服务层进行分页查询
pageInfo.getList().forEach(entity->{ // 遍历查询结果列表
Student detail = studentService.detail(entity.getStudentId()); // 获取每个学生宿舍记录对应的学生详细信息
entity.setStudent(detail); // 将学生信息设置到学生宿舍记录中
});
return Result.ok(pageInfo); // 返回包含分页信息和查询结果的成功结果
}
}