public async Task <IActionResult> Create(UserViewModel userModel)
        {
            if (ModelState.IsValid)
            {
                var userRole = await _context.UserRole.FirstOrDefaultAsync(s => s.Id == int.Parse(userModel.UserRoleId));

                var hashData = GetPasswordHashValue(userModel.Password);
                var user     = new User()
                {
                    Email        = userModel.Email,
                    UserRole     = userRole,
                    Salt         = hashData.Salt,
                    PasswordHash = hashData.PasswordHash,
                    FirstName    = userModel.FirstName,
                    LastName     = userModel.LastName,
                    CreatedDate  = DateTime.Now,
                };

                if (user.UserRoleId == 1)
                {
                    user.ExpireDate = DateTime.Now.AddMonths(3);
                }
                else
                {
                    user.ExpireDate = DateTime.Now.AddYears(1);
                    user.IsActive   = true;
                }
                _context.Add(user);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(userModel));
        }
        public async Task <IActionResult> Create([Bind("Id,Name,Level")] UserRole userRole)
        {
            if (ModelState.IsValid)
            {
                _context.Add(userRole);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(userRole));
        }