public async Task <Course> CreateCourse(CourseInputDTO course) { var mappedCourse = new Course(course); await _collection.InsertOneAsync(mappedCourse); return(mappedCourse); }
private async Task ImportAluraData() { var courses = await _getAllService.GetCourses(); foreach (var item in courses) { try { var detailCourse = await _getDetailCoursesService.GetDetailCourseData(item.Slug); var courseInputDto = new CourseInputDTO() { ExternalId = item.Slug, Title = detailCourse.Nome, FirstClass = detailCourse.Video1AAula, LinkExternalCourse = null, Score = detailCourse.Nota, Instructors = detailCourse.Instrutores.Select(i => new InstructorDTO() { Name = i.Nome, Expertise = new List <string>() }) }; if (await _courseService.GetCourseByExternalId(item.Slug) is null) { await _courseService.CreateCourse(courseInputDto); } } catch (Exception e) { } } }
public Course(CourseInputDTO course) { Title = course.Title; Score = course.Score; Instructors = course.Instructors.Select(x => new Instructor(x.Name, x.Expertise.ToList())); LinkExternalCourse = course.LinkExternalCourse; FirstClass = course.FirstClass; ExternalId = course.ExternalId; Validate(); }
public async Task <Course> InputCourse([FromBody] CourseInputDTO course) { var result = await _courseRepository.CreateCourse(course); return(result); }