public async Task <bool> SetMonthlyTrafficAsync(LoginConfigureBindingModel model) { var context = _httpContextAccesor.HttpContext; var token = await context.Authentication.GetTokenAsync("access_token"); _apiClient = new HttpClient(); _apiClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token); var loginsUrl = $"{_remoteServiceBaseUrl}/Configure"; StringContent content = new StringContent(JsonConvert.SerializeObject(model), System.Text.Encoding.UTF8, "application/json"); var response = await _apiClient.PostAsync(loginsUrl, content); if (response.StatusCode == System.Net.HttpStatusCode.InternalServerError || response.StatusCode == System.Net.HttpStatusCode.NotFound) { return(false); } return(true); }
public async Task <IActionResult> ConfigureLogin([FromBody] LoginConfigureBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var userId = User.FindFirst("sub").Value; var login = await _adContext.Logins.FindAsync(model.UserName); if (login == null) { return(NotFound()); } login.MonthlyTraffic = model.MonthlyTraffic; await _adContext.SaveChangesAsync(); return(NoContent()); }
public async Task <IActionResult> Configure(LoginConfigureBindingModel model) { if (!ModelState.IsValid) { return(RedirectToAction(nameof(Index))); } var userId = User.Identities.GetUserId(); if (model.MonthlyTraffic == 0) { model.MonthlyTraffic = null; } var result = await _loginService.SetMonthlyTrafficAsync(model); if (result == false) { // } NotifyServerUpdateAccountStatus(); return(RedirectToAction(nameof(Index))); }