private void TestRegisterException(UserCreateM model, string expected) { try { _user.Register(model, null); } catch (System.Exception e) { Assert.AreEqual(expected, ((RequestException)e).Error.Detail.InnerMessage); } }
public IActionResult Register([FromBody] UserCreateM model) { try { var result = _user.Register(model, null); result.Jwt = _jwtAuth.GenerateJwt(Guid.Empty, result.User.Id, ApplicationRole.Web_User); return(Created("", result)); } catch (Exception e) { return(GetError(e)); } }
public IActionResult CreateMember([FromBody] UserCreateM model) { try { JwtClaimM jwt_claim = _jwtAuth.GetClaims(Request); if (!jwt_claim.AdminUserId.Equals(Guid.Empty)) { return(new ForbidResult()); } return(Created("", _user.Register(model, jwt_claim.UserId))); } catch (Exception e) { return(GetError(e)); } }
public UserAuthorizationM Register(UserCreateM model, Guid?admin_user_id) { try { if (string.IsNullOrEmpty(model.Username) | string.IsNullOrEmpty(model.Password)) { throw BadRequest("The username or password not must emplty!"); } if (_user.Any(u => u.Username.Equals(model.Username))) { throw BadRequest("The username has been used!"); } User user = _user.Add(new User { Username = model.Username, Password = NococidAuthentication.GetHashedPassword(model.Username, model.Password), AdminUserId = admin_user_id }); SaveChanges(); UserAuthorizationM result = new UserAuthorizationM { HasVscAccount = false, User = new UserM { Id = user.Id, Username = user.Username } }; if (admin_user_id != null) { result.AdminUser = _user.Where(u => u.Id.Equals(admin_user_id)) .Select(u => new UserM { Id = u.Id, Username = u.Username }).FirstOrDefault(); } return(result); } catch (Exception e) { throw e is RequestException ? e : _errorHandler.WriteLog("An error occurred while register!", e, DateTime.Now, "Server", "Service_User_Register"); } }
public async Task <IActionResult> CreateUser([FromBody] UserCreateM data) { if (await _userManager.FindByNameAsync(data.Login) != null) { ModelState.AddModelError(nameof(data.Login), nameof(Resource.LoginError)); return(BadRequest(ModelState)); } var user = new User { UserName = data.Login, Name = data.Name, PhoneNumber = data.Phone, Email = data.Email, Status = data.Status, Description = data.Description, DataAccessArray = data.DataAccess.ToStringCollection(), }; var createResult = await _userManager.CreateAsync(user, data.Password); if (!createResult.Succeeded) { createResult.Errors.ForEach(err => ModelState.AddModelError(err.Code, err.Description)); return(BadRequest(ModelState)); } var assignRolesResult = await _userManager.AddToRoleAsync(user, data.AssignedRole); if (!assignRolesResult.Succeeded) { assignRolesResult.Errors.ForEach(err => ModelState.AddModelError(err.Code, err.Description)); return(BadRequest(ModelState)); } await _userService.RelateUserRegionsAsync(user, data); await _userService.RelateUserActivityCategoriesAsync(user, data); var role = (await _userManager.GetRolesAsync(user)).Single(); return(Created($"api/users/{user.Id}", UserVm.Create(user, role))); }
public UserAuthorizationM Register(UserCreateM model, Guid?admin_user_id) { try { if (string.IsNullOrEmpty(model.Username) || string.IsNullOrEmpty(model.Password)) { throw BadRequest("The username or password not must emplty!"); } if (Utils.GuidUtils.users.Any(u => u.Username.Equals(model.Username))) { throw BadRequest("The username has been used!"); } var user = new User { Id = Utils.GuidUtils.GetNewGuid(), Username = model.Username, Password = ProjectManagementAuthentication.GetHashedPassword(model.Username, model.Password), AdminUserId = admin_user_id }; Utils.GuidUtils.users.Add(user); UserAuthorizationM result = new UserAuthorizationM { User = new UserM { Id = user.Id, Username = user.Username } }; return(result); } catch (Exception e) { throw e is RequestException ? e : _errorHandler.WriteLog("An error occurred while register!", e, DateTime.Now, "Server", "Service_User_Register"); } }