|
|
@@ -5,6 +5,7 @@ import nju.seec.helper.dao.CourseDAO;
|
|
|
import nju.seec.helper.dto.ChooseDTO;
|
|
|
import nju.seec.helper.dto.CourseDTO;
|
|
|
import nju.seec.helper.dto.LoginUser;
|
|
|
+import nju.seec.helper.dto.modify.ModifyCourseDTO;
|
|
|
import nju.seec.helper.entity.Choose;
|
|
|
import nju.seec.helper.entity.Course;
|
|
|
import nju.seec.helper.service.CourseService;
|
|
|
@@ -33,14 +34,14 @@ public class CourseServiceImpl implements CourseService {
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
- public CourseVO createCourse(LoginUser user, CourseDTO courseDTO) {
|
|
|
- Integer teacherId = user.getId();
|
|
|
+ public CourseVO createCourse(LoginUser teacher, CourseDTO courseDTO) {
|
|
|
+ Integer teacherId = teacher.getId();
|
|
|
if (courseDAO.existsByNameAndTeacherId(courseDTO.getName(), teacherId)) {
|
|
|
throw HelperException.of(HelperException.ExceptionType.FORBIDDEN, "该课程名已使用");
|
|
|
}
|
|
|
Course course = new Course();
|
|
|
course.setTeacherId(teacherId)
|
|
|
- .setTeacherName(user.getName())
|
|
|
+ .setTeacherName(teacher.getName())
|
|
|
.setName(courseDTO.getName())
|
|
|
.setBio(courseDTO.getBio())
|
|
|
.setCode(EncryptUtils.encode(courseDTO.getCode()));
|
|
|
@@ -48,6 +49,20 @@ public class CourseServiceImpl implements CourseService {
|
|
|
return new CourseVO(course);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public CourseVO modifyCourse(LoginUser teacher, ModifyCourseDTO modifyCourseDTO) {
|
|
|
+ Course course = courseDAO.findCourseById(modifyCourseDTO.getId());
|
|
|
+ if (!course.getTeacherId().equals(teacher.getId())) {
|
|
|
+ throw HelperException.of(HelperException.ExceptionType.FORBIDDEN, "您无权修改该课程");
|
|
|
+ }
|
|
|
+ course.setName(modifyCourseDTO.getName())
|
|
|
+ .setCode(modifyCourseDTO.getCode())
|
|
|
+ .setBio(modifyCourseDTO.getBio())
|
|
|
+ .setCover(modifyCourseDTO.getCover());
|
|
|
+ course = courseDAO.save(course);
|
|
|
+ return new CourseVO(course);
|
|
|
+ }
|
|
|
+
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void chooseCourse(LoginUser student, ChooseDTO chooseDTO) {
|