一、课程模块
1、多条件课程列表查询
1)service层
/*
多条件课程列表查询
*/
public List<Course> findCourseByCondition(CourseVO courseVO);
@Service
public class CourseServiceImpl implements CourseService {
@Autowired
private CourseMapper courseMapper;
@Override
public List<Course> findCourseByCondition(CourseVO courseVO) {
return courseMapper.findCourseByCondition(courseVO);
}
}
2)controller层
@RestController
@RequestMapping("/course")
public class CourseController {
@Autowired
private CourseService courseService;
/*
多条件课程列表查询
@RequestBody将json格式的数据转为java对象
*/
@RequestMapping("/findCourseByCondition")
public ResponseResult findCourseByCondition(@RequestBody CourseVO courseVO){
List<Course> courseList=courseService.findCourseByCondition(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "响应成功", courseList);
return responseResult;
}
2、新增课程——添加课程、教师表信息
1)service层
/*
添加课程及讲师信息
*/
public void saveCourseOrTeacher(CourseVO courseVO) throws InvocationTargetException, IllegalAccessException;
@Override
public void saveCourseOrTeacher(CourseVO courseVO) throws InvocationTargetException, IllegalAccessException {
//封装课程信息
Course course = new Course();
BeanUtils.copyProperties(course,courseVO);
// 补全课程信息
Date date = new Date();
course.setCreateTime(date);
course.setUpdateTime(date);
//保存课程
courseMapper.saveCourse(course);
// 获取新插入数据的id值
int id = course.getId();
// 封装讲师信息
Teacher teacher = new Teacher();
BeanUtils.copyProperties(teacher,courseVO);
// 补全讲师信息
teacher.setCreateTime(date);
teacher.setUpdateTime(date);
teacher.setIsDel(0);
teacher.setCourseId(id);
//保存讲师信息
courseMapper.saveTeacher(teacher);
}
2)controller层
/*
新增课程信息及讲师信息
新增课程信息和修改课程信息要写在同一个方法中
*/
@RequestMapping("/saveOrUpdateCourse")
public ResponseResult saveOrUpdateCourse(@RequestBody CourseVO courseVO) throws InvocationTargetException, IllegalAccessException {
if(courseVO.getId() == null){
//调用service
courseService.saveCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "新增成功", null);
return responseResult;
}else {
courseService.updateCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "修改成功", null);
return responseResult;
}
}
单独做添加代码
/*
新增课程信息及讲师信息
新增课程信息和修改课程信息要写在同一个方法中
*/
@RequestMapping("/saveOrUpdateCourse")
public ResponseResult saveOrUpdateCourse(@RequestBody CourseVO courseVO) throws InvocationTargetException, IllegalAccessException {
try {
if(courseVO.getId() == null){
//调用service
courseService.saveCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "新增成功", null);
return responseResult;
}/*else {
courseService.updateCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "修改成功", null);
return responseResult;
}*/
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return null;
}
3)测试
3、根据ID回显信息
1)service层
/*
根据ID查询课程信息
*/
public CourseVO findCourseById(Integer id);
@Override
public CourseVO findCourseById(Integer id) {
return courseMapper.findCourseById(id);
}
2)controller层
/*
根据ID查询具体的课程信息及关联的讲师信息
*/
@RequestMapping("/findCourseById")
public ResponseResult findCourseById(Integer id){
CourseVO courseVO = courseService.findCourseById(id);
ResponseResult responseResult = new ResponseResult(true, 200, "根据ID查询课程信息成功", courseVO);
return responseResult;
}
3)测试
4、修改课程——修改课程、教师表信息
1)service层
/*
更新课程及讲师信息
*/
public void updateCourseOrTeacher(CourseVO courseVO) throws InvocationTargetException, IllegalAccessException;
2)controller层
/*
新增课程信息及讲师信息
新增课程信息和修改课程信息要写在同一个方法中
*/
@RequestMapping("/saveOrUpdateCourse")
public ResponseResult saveOrUpdateCourse(@RequestBody CourseVO courseVO) throws InvocationTargetException, IllegalAccessException {
if(courseVO.getId() == null){
//调用service
courseService.saveCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "新增成功", null);
return responseResult;
}else {
courseService.updateCourseOrTeacher(courseVO);
ResponseResult responseResult = new ResponseResult(true, 200, "修改成功", null);
return responseResult;
}
}
3)测试
5、修改课程状态
1)service层
/*
课程状态变更
*/
public void updateCourseStatus(int courseid,int status);
2)controller层
/*
课程状态管理
*/
@RequestMapping("/updateCourseStatus")
public ResponseResult updateCourseStauts(Integer id,Integer status){
//调用service,传递参数,完成课程状态的变更
courseService.updateCourseStatus(id,status);
// 响应数据
Map<String, Object> map = new HashMap<>();
map.put("status",