public ActionResult CreateClass(ClassCreateDto createClassDto) { using (var transacao = new CommittableTransaction()) { var userDto = new UserDto { Name = createClassDto.Name, AvatarUrl = createClassDto.AvatarUrl, WhatsApp = createClassDto.WhatsApp, Bio = createClassDto.Bio }; var user = _userRepository.CreateUser(_mapper.Map <User>(userDto)); _userRepository.SaveChanges(); var classDto = new ClassDto { Subject = createClassDto.Subject, Cost = createClassDto.Cost, UserId = user.Id }; var classs = _classRepository.CreateClass(_mapper.Map <Class>(classDto)); _classRepository.SaveChanges(); foreach (var item in createClassDto.Schedule) { var scheduleDto = new ScheduleDto { WeekDay = item.WeekDay, From = new StringToMinutesConversor().Convert(item.From), To = new StringToMinutesConversor().Convert(item.To), ClassId = classs.Id }; _scheduleRepository.CreateSchedule(_mapper.Map <Schedule>(scheduleDto)); _scheduleRepository.SaveChanges(); } transacao.Commit(); } return(Created("", createClassDto)); }
public ClassGetDto CreateClass(ClassCreateDto classCreateDto) { var classMe = new Class { ClassName = classCreateDto.ClassName, ClassDescription = classCreateDto.ClassDescription, CreditHours = classCreateDto.CreditHours, Prerequisite = classCreateDto.Prerequisite }; _context.Set <Class>().Add(classMe); _context.SaveChanges(); var classGetDto = new ClassGetDto { Id = classMe.Id, ClassName = classMe.ClassName, ClassDescription = classMe.ClassDescription, CreditHours = classMe.CreditHours, Prerequisite = classMe.Prerequisite }; return(classGetDto); }
public IActionResult Post([FromBody] ClassCreateDto classCreateDto) { var classMe = _classRepository.CreateClass(classCreateDto); return(Created("[controller]", classMe)); }