public void EditCourseControllerTest() { string oldTitle = "SA"; string newTitle = "New SA"; string description = "none"; string suitable = "CS student"; string price = "10000"; string notice = "none"; string other = "none"; CourseRepository courseRepository = new CourseRepositoryImpl(); AddCourse addCourse = new AddCourseImpl(courseRepository); AddCourseInput input = (AddCourseInput)addCourse; AddCourseOutput addCoursePresneter = new AddCoursePresenter(); input.setTitle(oldTitle); input.setDescription(description); input.setSuitable(suitable); input.setPrice(price); input.setNotice(notice); input.setOther(other); AddCourseOutput output = addCoursePresneter; addCourse.execute(input, output); EditCourse editCourse = new EditCourseImpl(courseRepository); EditCourseInput _input = (EditCourseInput)editCourse; EditCourseOutput editCoursePresneter = new EditCoursePresenter(); _input.setOldTitle(oldTitle); _input.setTitle(newTitle); _input.setDescription(description); _input.setSuitable(suitable); _input.setPrice(price); _input.setNotice(notice); _input.setOther(other); EditCourseOutput _output = editCoursePresneter; editCourse.execute(_input, _output); Assert.AreEqual(_output.getNewTitle(), "New SA"); DeleteCourse deleteCourse = new DeleteCourseImpl(courseRepository); DeleteCourseInput __input = (DeleteCourseInput)deleteCourse; DeleteCourseOutput deleteCoursePresneter = new DeleteCoursePresenter(); __input.setTitle(newTitle); DeleteCourseOutput __output = deleteCoursePresneter; deleteCourse.execute(__input, __output); }
public void execute(EditCourseInput input, EditCourseOutput output) { Course course = new Course(input.getTitle(), input.getDescription(), input.getSuitable(), input.getPrice(), input.getNotice(), input.getOther()); output.setNewTitle(input.getTitle()); courseRepository.update(input.getOldTitle(), course); }
public void editCourseExecute(string oldTitle, string title, string description, string suitable, string price, string notice, string other) { EditCourseInput input = (EditCourseInput)editCourse; input.setOldTitle(oldTitle); input.setTitle(title); input.setDescription(description); input.setSuitable(suitable); input.setPrice(price); input.setNotice(notice); input.setOther(other); EditCourseOutput output = editCoursePresenter; editCourse.execute(input, output); }
//public async Task DeleteSSCourse(int id) //{ // //var count = await _studentCourseTimeRepository // // .CountAsync(x => !x.CourseTime.TeacherCourse.IsDeleted // // && x.CourseTime.TeacherCourse.CourseId == id); // //if (count > 0) throw new UserFriendlyException("删除失败,已有学生预约该课程。"); // await _courseRepository.DeleteAsync(id); //} public async Task EditCourse(EditCourseInput input) { var course = await _courseRepository.FirstOrDefaultAsync(x => x.Id == input.Id); if (course == null) { throw new UserFriendlyException($"课程{input.Id}不存在!"); } var subject = await _subjectRepository.FirstOrDefaultAsync(x => x.Id == input.SubjectProjectId); if (subject == null) { throw new UserFriendlyException($"所选项目不存在!"); } course.SubjectProjectId = subject.Id; course.Name = input.CourseName; course.Credit = input.CourseCredit; course.LimitNumbers = input.CourseLimitNumbers; course.Remark = input.Remark; await _courseRepository.UpdateAsync(course); }