java_web/test05/src/main/java/test05/service/impl/CourseServiceImpl.java
2024-12-14 21:23:22 +08:00

86 lines
2.5 KiB
Java

package test05.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import test05.mapper.CourseMapper;
import test05.pojo.Course;
import test05.pojo.Result;
import test05.service.CourseService;
import java.util.List;
@Service
public class CourseServiceImpl implements CourseService {
private final CourseMapper courseMapper;
private String courseCheck(Course course) {
if (course.getId()!=-1){
return "do not set N_COURSE_ID";
}
if (course.getName().length()<4||course.getName().length()>25){
return "name invalid";
}
if (course.getGrade()>3000||course.getGrade()<2000){
return "grade invalid";
}
if (course.getMajor()<1||course.getMajor()>6){
return "major invalid";
}
if (course.getType()<1||course.getType()>6){
return "type invalid";
}
if (course.getDetail().length()>200){
return "detail too long";
}
return "ok";
}
@Autowired
public CourseServiceImpl(CourseMapper courseMapper) {
this.courseMapper = courseMapper;
}
@Override
public Result addCourse(Course course) {
String check = courseCheck(course);
if (!check.equals("ok")){
return Result.error(check);
}
if (courseMapper.insertCourse(course) > 0 && course.getId()!=-1){
return Result.success(course);
}else{
return Result.error("add course error");
}
}
@Override
public Result deleteCourse(Course course) {
if (courseMapper.deleteCourse(course)>=1){
return Result.success(course);
}else{
return Result.error("delete course error");
}
}
@Override
public Result updateCourse(Course course) {
String check = courseCheck(course);
if (!course.isComplete()&&check.equals("ok")){
return Result.error("please complete the course:"+check);
}else if(courseMapper.updateCourse(course)>=1){
return Result.success(course);
}else{
return Result.error("update course error");
}
}
@Override
public Result getCourse(Course course, int page, int pageSize) {
List<Course> courseList = courseMapper.selectCourse(course, page, pageSize);
int total = courseMapper.selectCourseCount(course);
return Result.success(courseList, total);
}
}