public async Task <IResult> Register(UserForRegisterDto userForRegisterDto) { byte[] passwordHash, passwordSalt; HashingHelper.CreatePasswordHash(userForRegisterDto.Password, out passwordHash, out passwordSalt); var user = new User { Email = userForRegisterDto.Email, Name = userForRegisterDto.Name, Password = passwordHash, PasswordSalt = passwordSalt, Status = true }; await _userDal.AddAsync(user); await _cacheManager.RemoveByPattern("GetUser*"); await AddUserOperationClaim(new UserOperationClaim { UserID = user.ID, OperationClaimID = 1 }); return(new SuccessResult(Messages.UserAdded)); }
public async Task <IResult> Handle(CreateUserCommand request, CancellationToken cancellationToken) { var userExits = await _userDal.GetAsync(u => u.UserName == request.UserName); if (userExits != null) { return(new ErrorResult(Messages.UserExists)); } var user = _mapper.Map <User>(request); byte[] passwordHash, passwordSalt; HashingHelper.CreatePasswordHash(request.Password, out passwordSalt, out passwordHash); user.PasswordHash = passwordHash; user.PasswordSalt = passwordSalt; user.Status = true; await _userDal.AddAsync(user); return(new SuccessResult(Messages.UserCreated)); }
/// <summary> /// Creates a new User and Employee from the details provided /// </summary> /// <param name="newUserDetails"></param> /// <returns></returns> public async Task <UserFullDetailsDto> CreateUserAsync(UserForRegistrationDto newUserDetails) { if (newUserDetails == null) { throw new ArgumentNullException(nameof(newUserDetails)); } // map elements of the UserForRegistrationDto to JobDescription and Employee var newJobDescription = new JobDescription() { Description = newUserDetails.JobDescription, Role = newUserDetails.Role }; var newEmployeeDetails = new Employee() { Firstname = newUserDetails.FirstName, Lastname = newUserDetails.LastName, Title = newUserDetails.Title, }; // Create the Password Hash and Salt _cryptoSvc.CreateHash(newUserDetails.Password, out var passwordHash, out var passwordSalt); // Combine elements to make the new user var newUser = new User() { Username = newUserDetails.Username, PasswordHash = passwordHash, PasswordSalt = passwordSalt, State = newUserDetails.State, JobDescription = newJobDescription, EmployeeDetails = newEmployeeDetails }; // Save to the database var result = await _userDal.AddAsync(newUser); return(result != null ? new UserFullDetailsDto(result) : null); }
public async Task <IResult> Add(User user) { await _userDal.AddAsync(user); return(new SuccessResult(Messages.UserAdded)); }
public async Task <IResult> AddAsync(User entity) { await _userDal.AddAsync(entity); return(new SuccessResult()); }
public IResult AddAsync(User user) { _userDal.AddAsync(user); return(new SuccessResult(UserMessages.Added)); }
public async Task <IResult> AddAsync(Entities.Concrete.User user) { await _userDal.AddAsync(user); return(new SuccessResult()); }
public async Task <User> Created(User user) { return(await _userDal.AddAsync(user)); }