public async Task <IActionResult> CreateAdmin(JoinAdminModel model)
        {
            if (ModelState.IsValid)
            {
                await _adminService.CreateAdminAsync(model);
            }

            return(RedirectToAction(nameof(Index)));
        }
        private async Task <bool> CreateAdmin(JoinAdminModel model)
        {
            var byteKey = _cryptoProvider.GetTokenBytes(model.AccessToken);

            var token = await _serviceDb.AdminTokens.SingleOrDefaultAsync(x => x.TokenData.SequenceEqual(byteKey));

            if (token == null || token.isUsed == true)
            {
                return(false);
            }

            token.isUsed = true;
            await _serviceDb.SaveChangesAsync();

            return(await _joinService.JoinAdmin(model));
        }
 public Task <bool> CreateAdminAsync(JoinAdminModel model)
 {
     return(Task.Run(() => CreateAdmin(model)));
 }