public async Task <ActionResult> AdminInfo(CreatedUserDTO createdUserDTO)
        {
            using (var client = new HttpClient()){
                var ck = ControllerContext.HttpContext.Request.Cookies["Token"];
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck);
                client.BaseAddress = new Uri("https://localhost:44349");
                var admins         = new List <CreatedUserDTO>();
                var responseClinic = await client.GetAsync($"api/Accounts/GetAdmins/true");

                if (responseClinic.IsSuccessStatusCode)
                {
                    admins.AddRange(JsonConvert.DeserializeObject <List <CreatedUserDTO> >(await responseClinic.Content.ReadAsStringAsync()).ToList());
                }
                else
                {
                    return(NotFound());
                }

                var responsePacs = await client.GetAsync($"api/Accounts/GetAdmins/false");

                if (responsePacs.IsSuccessStatusCode)
                {
                    admins.AddRange(JsonConvert.DeserializeObject <List <CreatedUserDTO> >(await responsePacs.Content.ReadAsStringAsync()).ToList());
                }
                else
                {
                    return(NotFound());
                }
                return(View(admins));
            }
        }
Exemple #2
0
        public async Task <CreatedUserDTO> createUser(string apiToken, CreateUserDTO model)
        {
            try
            {
                var userCurrent = await this.getcurrentUserDetails(apiToken);

                var user = new CreatedUserDTO();
                var url  = _configuration.GetSection("ZoomEndpoints:Endpoints:4:url").Value;
                using (var httpClient = new HttpClient())
                {
                    var         payload = JsonConvert.SerializeObject(model);
                    HttpContent content = new StringContent(payload, Encoding.UTF8, "application/json");
                    httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiToken);
                    var response = await httpClient.PostAsync(url, content);

                    string apiResponse = await response.Content.ReadAsStringAsync();

                    if (response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        var res = JsonConvert.DeserializeObject <CreatedUserDTO>(apiResponse);
                        user = res;
                    }
                    else
                    {
                        var resError = JsonConvert.DeserializeObject <ApiResponseDTO>(apiResponse);
                        throw new Exception(resError.message.ToString());
                    }
                }
                return(user);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <ActionResult> Edit(CreatedUserDTO createdUserDTO)
        {
            using (var client = new HttpClient())
            {
                var ck = ControllerContext.HttpContext.Request.Cookies["Token"];
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", ck);
                client.BaseAddress = new Uri("https://localhost:44349");
                var response = await client.PutAsJsonAsync($"api/Accounts/{createdUserDTO.id}", createdUserDTO);

                if (response.IsSuccessStatusCode)
                {
                    return(RedirectToAction("AdminInfo"));
                }
                ModelState.AddModelError(string.Empty, "Server Error. Please contact administrator.");
                return(View("Index", "Panel"));
            }
        }