public async Task <Response> Create(TeacherCreateModel TeacherCreateModel, ClaimsPrincipal User) { using (var context = _applicationDbContextFactory.Create()) { var user = await _userManager.FindByNameAsync(User.Identity.Name); var Teacher = Mapper.Map <Teacher>(TeacherCreateModel); if (!context.Check <City>(Teacher.CityId)) { return new Response { Status = 500, Message = "Такого города нет" } } ; if (!context.Check <Course>(Teacher.CourseId)) { return new Response { Status = 500, Message = "Такого курса нет" } } ; var Result = context.Teachers.Add(Teacher); context.SaveChanges(); context.TeacherHistories.Add(new TeacherHistory { Action = "Создание", TeacherId = Result.Entity.Id, DateTime = DateTime.Now, UserId = user.Id }); context.SaveChanges(); return(new Response { Status = 100, Message = "Запрос успешно прошел" }); } }
public async Task <IActionResult> Create(TeacherCreateModel model) { if (ModelState.IsValid) { Teacher teacher = new Teacher() { Name = model.Name, Surname = model.Surname, BirthDate = model.BirthDate, Faculty = await _dbContext.Faculties.FirstOrDefaultAsync(x => x.Id == model.FacultyId), GenderId = (byte)model.GenderId, Email = model.Email, UserName = model.Email, CreatingDate = DateTime.Now, ImageId = 1, PhoneNumber = model.PhoneNumber }; if (_userManager.FindByEmailAsync(model.Email).Result == null) { try { var result = await _userManager.CreateAsync(teacher, model.Password); if (result.Succeeded) { await _userManager.AddToRoleAsync(teacher, "Teacher"); var urlHelper = HttpContext.RequestServices.GetRequiredService <IUrlHelper>(); await this.SendConfirmaitionMail(teacher, _userManager, urlHelper); return(RedirectToAction("List", "Teachers")); } else { ModelState.AddModelError("", "Something wrong"); } } catch (Exception ex) { // } } else { ModelState.AddModelError("", $"User with {model.Email} email already exists"); } } return(RedirectToAction("List", "Teachers")); }
public async Task CreateNew_InsertOneTeacher_ReturnTeacherId() { //Arrange TeacherCreateModel model = new TeacherCreateModel() { FirstName = "Dragos", LastName = "Gavrilut", Email = "*****@*****.**", Password = "******" }; //Act var result = await teacherService.CreateNew(model); //Assert Assert.IsInstanceOfType(result, typeof(System.Guid)); }
public async Task UpdateTeacher_GivenUpdatedTeacher_ReturnTeacherId() { //Arrange var teachersList = await teacherService.GetAll(); var lastTeacher = teachersList[teachersList.Count - 1]; var updatedTeacher = new TeacherCreateModel() { FirstName = lastTeacher.FirstName, LastName = lastTeacher.LastName, Email = "*****@*****.**", Password = lastTeacher.Password }; //Act var result = await teacherService.Update(lastTeacher.Id, updatedTeacher); //Assert Assert.IsInstanceOfType(result, typeof(System.Guid)); }
public async Task CreateNew_InsertOneSubject_ReturnSubjectId() { //Arrange TeacherService teacherService = new TeacherService(context, context); TeacherCreateModel model = new TeacherCreateModel() { FirstName = "Dragos", LastName = "Gavrilut", Email = "*****@*****.**", Password = "******" }; var teacherId = await teacherService.CreateNew(model); SubjectCreateModel subject = new SubjectCreateModel() { Name = "C++" }; //Act var result = await subjectService.CreateNew(teacherId, subject); //Assert Assert.IsInstanceOfType(result, typeof(System.Guid)); }
public async Task <ActionResult <Response> > Create(TeacherCreateModel model) { return(await _TeacherService.Create(model, User)); }