public async Task <ResultDTO> Register([FromBody] UserRegisterDTO model) { if (!ModelState.IsValid) { //ВАЛІДАЦІЯ return(new ResultDTO { Status = 500, Message = "ERROR", Errors = CustomValidator.GetErrorsByModel(ModelState) }); } else { var user = new User() { Email = model.Email, UserName = model.Email, }; var userMoreInfo = new UserMoreInfo() { id = user.Id, FullName = model.FullName, Address = model.Address, Age = model.Age, Phone = model.PhoneNumber }; var result = await _userManager.CreateAsync(user, model.Password); if (!result.Succeeded) { //TYT БУде валідація return(new ResultDTO { Status = 500, Message = "Error", Errors = CustomValidator.GetErrorsByIdentityResult(result) }); } else if (result.Succeeded) { result = _userManager.AddToRoleAsync(user, "User").Result; _context.userMoreInfos.Add(userMoreInfo); _context.SaveChanges(); } return(new ResultDTO { Status = 200, Message = "OK" }); } }
public async Task <ResultDTO> Register([FromBody] UserRegisterDTO model) { if (!ModelState.IsValid) { return(new ResultDTO { Status = 500, Message = "Error", Errors = Validation.GetErrorsByModel(ModelState) }); } else { var user = new User() { Email = model.email, PhoneNumber = model.phoneNumber, UserName = model.email }; var userMoreInfo = new UserMoreInfo() { id = user.Id, FullName = model.fullName, Address = model.address, Age = model.age }; var result = await _userManager.CreateAsync(user, model.password); if (!result.Succeeded) { return(new ResultDTO { Status = 400, Errors = Validation.GetErrorsByIdentityResult(result) }); } else if (result.Succeeded) { result = _userManager.AddToRoleAsync(user, "User").Result; _context.UserMoreInfos.Add(userMoreInfo); _context.SaveChanges(); } return(new ResultDTO { Status = 200 }); } }
public async Task <ResultDto> Register([FromBody] UserRegisterDto model) { if (!ModelState.IsValid) { return(new ResultErrorDto { Status = 500, Errors = CustomValidator.GetErrorsByModel(ModelState) }); } var user = new User() { UserName = model.Email, Email = model.Email, PhoneNumber = model.PhoneNumber }; var userProfile = new UserMoreInfo() { Age = model.Age, FullName = model.FullName, Id = user.Id, Address = model.Address }; var result = await _userManager.CreateAsync(user, model.Password); if (!result.Succeeded) { return(new ResultErrorDto { Status = 500, Errors = CustomValidator.GetErrorsByIdentityResult(result) }); } else { result = _userManager.AddToRoleAsync(user, "User").Result; _context.userMoreInfos.AddAsync(userProfile); _context.SaveChanges(); } return(new ResultDto { Status = 200 }); }
public async Task <ResultDTO> SignUp([FromBody] SignUpDTO model) { var result = default(ResultDTO); try { if (!ModelState.IsValid) { result = new ErrorResultDTO { Status = 403, Message = "Model is invalid", Errors = ModelStateCustomValidator.GetErrorsFromModel(ModelState) }; } else { var user = new AppUser { UserName = model.Email, Email = model.Email, PhoneNumber = model.Phone }; var createResult = await userManager.CreateAsync(user, model.Password); if (!createResult.Succeeded) { result = new ErrorResultDTO { Errors = ModelStateCustomValidator.GetErrorsFromIdentityResult(createResult.Errors), Message = "Create error", Status = 500 }; } else { var userMoreInfo = new UserMoreInfo { Address = model.Address, ImageURL = "default.jpg", FirstName = model.FirstName, MiddleName = model.MiddleName, LastName = model.LastName, Id = user.Id }; var roleResult = await userManager.AddToRoleAsync(user, "User"); context.UserMoreInfos.Add(userMoreInfo); context.SaveChanges(); result = new ResultDTO { Status = 200, Message = "OK" }; } } return(result); } catch (Exception ex) { result = new ResultDTO { Status = 500, Message = ex.Message }; return(result); } }