public async Task <Item> GetAllItems(GetAllItemsRequest request) { string url = $"/item/get-all-active"; var requestBody = await Task.Run(() => JsonConvert.SerializeObject(request)); using (HttpClient httpClient = new HttpClient()) { try { var authHeader = new AuthenticationHeaderValue("Bearer", await SecureStorage.GetAsync("auth_token")); httpClient.DefaultRequestHeaders.Authorization = authHeader; httpClient.BaseAddress = new Uri(Constants.BaseUrl); StringContent content = new StringContent(requestBody, Encoding.UTF8, "application/json"); HttpResponseMessage result = await httpClient.PostAsync(url, content); string response = await result.Content.ReadAsStringAsync(); var data = JsonConvert.DeserializeObject <Item>(response); if (result.IsSuccessStatusCode && result.StatusCode == HttpStatusCode.OK) { return(data); } return(null); } catch (Exception exp) { return(null); } } }
public async Task <Item> GetAllItems(GetAllItemsRequest request) { IsBusy = true; Item res = await itemsAPI.GetAllItems(request); IsBusy = false; return(res); }
public async Task ExecuteLoadItemsCommand() { IsBusy = true; try { Items.Clear(); GetAllItemsRequest request = new GetAllItemsRequest() { userId = OperationData.userId, userLocation = OperationData.filterLocation }; var res = await GetAllItems(request); if (res != null) { if (res.Code == 0) { foreach (var item in res.Data) { if (item.isFavorite == true) { item.isNotFavorite = false; } else { item.isNotFavorite = true; } item.unitPrice = Convert.ToDouble(item.unitPrice).ToString("N2"); Items.Add(item); } } } } catch (Exception ex) { Debug.WriteLine(ex); } finally { IsRefreshing = false; IsBusy = false; } }