public async Task <ApiResponse <UserOld> > CreateUser(UserOldDto user)
 {
     try
     {
         return(await _userServices.CreateUser(user));
     }
     catch (Exception ex)
     {
         return(new ApiResponse <UserOld>()
         {
             Success = false, Errors = new List <string>()
             {
                 ex.Message
             }
         });
     }
 }
Ejemplo n.º 2
0
        public async Task <ApiResponse <UserOld> > CreateUser(UserOldDto userDto)
        {
            var response = new ApiResponse <UserOld>();


            try
            {
                //check user Exists
                var isExistUser = await _usersRepository.CountAsync(i => i.UserName == userDto.UserName);

                if (isExistUser != 0)
                {
                    response.Success = false;
                    response.Errors.Add("Username Already Exists");
                    return(response);
                }
                //create roles
                var userRoles = new List <UserRolesOld>();
                var id        = Guid.NewGuid();



                foreach (var role in userDto.UserRoles)
                {
                    if (!role.IsSelected)
                    {
                        continue;
                    }
                    dynamic roleNmae = "";
                    switch (role.Role)
                    {
                    case "Investor":
                        roleNmae = RoleName.Investor;
                        break;

                    case "NonInvestor":
                        roleNmae = RoleName.NonInvestor;
                        break;
                    }
                    var userRole = new UserRolesOld()
                    {
                        Id          = Guid.NewGuid(),
                        Role        = roleNmae,
                        CreatedBy   = id,
                        CreatedDate = DateTime.Now,
                        IsActive    = true,
                    };
                    userRoles.Add(userRole);
                }

                PasswordManager passwordManger = new PasswordManager();

                //create new user
                var user = Mapper.Map <UserOld>(userDto);
                user.Id          = id;
                user.Password    = passwordManger.Encrypt(passwordManger.GeneratePassword());
                user.CreatedBy   = user.Id;
                user.CreatedDate = DateTime.Now;
                user.Roles       = userRoles;
                user.IsActive    = true;
                await _usersRepository.AddAsyn(user);

                response.Success = true;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Errors.Add(ex.Message);
            }

            return(response);
        }