Exemplo n.º 1
0
 public static void UpdateDBUser(this Models.DBUser dbUser, ViewModels.User viewUser)
 {
     dbUser.IIA               = viewUser.IIA;
     dbUser.Money             = viewUser.Money;
     dbUser.Risk              = viewUser.Risk;
     dbUser.MonthlyInvestment = viewUser.MonthlyInvestment;
     dbUser.Reinvestment      = viewUser.Reinvestment;
 }
Exemplo n.º 2
0
 public static ViewModels.User ToViewUser(this Models.DBUser dbUser)
 {
     return(new ViewModels.User
     {
         Id = dbUser.Id,
         IIA = dbUser.IIA,
         Money = dbUser.Money,
         Risk = dbUser.Risk,
         MonthlyInvestment = dbUser.MonthlyInvestment,
         Reinvestment = dbUser.Reinvestment,
         Bonds = dbUser.Bonds.Select(bond => bond.ToViewBond())
     });
 }
Exemplo n.º 3
0
        public async Task <ActionResult> Create(ViewModels.AutorisationCreateRequest user)
        {
            _logger.LogInformation(Helpers.LogEvents.InsertItem,
                                   $"Create user {user.Name}");
            var newUser = new Models.DBUser
            {
                UserName       = user.Name,
                Email          = user.Email,
                EmailConfirmed = false,
            };

            var result = await _userManager.CreateAsync(newUser, user.Password);

            if (!result.Succeeded)
            {
                _logger.LogInformation(Helpers.LogEvents.InsertItemFaild,
                                       $"Insert item {newUser} faild, errors: {result.Errors}");
                return(StatusCode(403, result.Errors.ToArray()));
            }
            result = await _userManager.AddClaimsAsync(newUser, new List <Claim>
            {
                new Claim(ClaimsIdentity.DefaultNameClaimType, newUser.UserName),
                new Claim(ClaimsIdentity.DefaultRoleClaimType, Helpers.Roles.Admin)
            });

            if (!result.Succeeded)
            {
                _logger.LogInformation(Helpers.LogEvents.InsertItemFaild,
                                       $"Insert item {newUser} faild, errors: {result.Errors}");
                return(StatusCode(403, result.Errors.ToArray()));
            }

            var userInfo = await _userManager.FindByNameAsync(user.Name);

            result = await _userManager.AddToRoleAsync(userInfo, Helpers.Roles.User);

            if (!result.Succeeded)
            {
                _logger.LogError(Helpers.LogEvents.InsertItemFaild,
                                 $"Insert user {user.Name} to role {Helpers.Roles.User} faild, errors: {result.Errors}");
                return(StatusCode(403, result.Errors.ToArray()));
            }
            _logger.LogInformation(Helpers.LogEvents.InsertItem,
                                   $"Created user {userInfo.UserName}:{userInfo.Id}");
            return(Ok("Ok"));
        }
Exemplo n.º 4
0
        public async Task <ActionResult> InitDefault()
        {
            string[] roles = { Helpers.Roles.Admin,
                               Helpers.Roles.User };
            foreach (var role in roles)
            {
                _logger.LogInformation(Helpers.LogEvents.GetItem,
                                       $"Getting role {role}");
                if (!await _roleManager.RoleExistsAsync(role))
                {
                    _logger.LogInformation(Helpers.LogEvents.InsertItem,
                                           $"Insert role {role}");
                    await _roleManager.CreateAsync(new IdentityRole(role));
                }
            }

            _logger.LogInformation(Helpers.LogEvents.GetItem,
                                   $"Getting user in role {Helpers.Roles.Admin}. Change password!");
            var admins = await _userManager.GetUsersInRoleAsync("admin");

            if (admins.Count == 0)
            {
                _logger.LogInformation(Helpers.LogEvents.InsertItem,
                                       $"Insert user admin");
                var admin = new Models.DBUser
                {
                    UserName       = "******",
                    Email          = "admin@admin",
                    EmailConfirmed = true
                };
                await _userManager.CreateAsync(admin, "One_of_the_most_cunning_and_ruthless_warriors_in_the_history_of_the_Galactic_Empire");

                await _userManager.AddToRoleAsync(admin, Helpers.Roles.Admin);

                await _userManager.AddClaimsAsync(admin, new List <Claim>
                {
                    new Claim(ClaimsIdentity.DefaultNameClaimType, admin.UserName),
                    new Claim(ClaimsIdentity.DefaultRoleClaimType, Helpers.Roles.Admin)
                });
            }
            return(Ok());
        }