public async Task <Response> DeleteItemAsync(BuildingApartment item)
        {
            item.IsDelete = true;
            item.UserId   = App.LogUser.Id.ToString();
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(App.AzureBackendUrl);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(
                    new MediaTypeWithQualityHeaderValue("application/json"));
                using (HttpResponseMessage response = await client.PostAsJsonAsync($"api/BuildingApartment/DeleteBuildingApartment", item))
                {
                    var responseBody = await response.Content.ReadAsStringAsync();

                    Response result = JsonConvert.DeserializeObject <Response>(responseBody);

                    response.EnsureSuccessStatusCode();
                    //if (response.IsSuccessStatusCode == false)
                    //{
                    //    throw new ApiException
                    //    {
                    //        StatusCode = (int)response.StatusCode,
                    //        Content = result.Message
                    //    };
                    //}
                    return(await Task.FromResult(result));
                }
            }
        }
        public async Task <Response> AddItemAsync(BuildingApartment item)
        {
            Response result = new Response();

            Dictionary <string, string> parameters = new Dictionary <string, string>();

            parameters.Add("Id", item.Id);
            parameters.Add("Name", item.Name);

            parameters.Add("Description", item.Description);
            parameters.Add("BuildingId", item.BuildingId);
            parameters.Add("UserID", App.LogUser.Id.ToString());
            parameters.Add("ImageName", item.ImageName);
            parameters.Add("ImageUrl", item.ImageUrl);
            parameters.Add("ImageDescription", item.ImageDescription);


            //Regex UrlMatch = new Regex(@"(?i)(http(s)?:\/\/)?(\w{2,25}\.)+\w{3}([a-z0-9\-?=$-_.+!*()]+)(?i)", RegexOptions.Singleline);
            //if (item.ImageUrl == "blank.png" || UrlMatch.IsMatch(item.ImageUrl))
            //{
            //    item.ImageUrl = null;

            //}
            string ImageUrl = HttpUtil.GetImageUrl(item.ImageUrl).Result;

            result = await HttpUtil.UploadSingleImage(item.Name, ImageUrl, "api/BuildingApartment/AddEdit", parameters);


            return(await Task.FromResult(result));
        }
        public async Task <bool> UpdateItemAsync(BuildingApartment item)
        {
            var oldItem = items.Where((BuildingApartment arg) => arg.Id == item.Id).FirstOrDefault();

            items.Remove(oldItem);
            items.Add(item);

            return(await Task.FromResult(true));
        }
Example #4
0
 async Task ExecuteBuildingDetailCommand(BuildingApartment parm)
 {
     if (parm != null)
     {
         //await Shell.Current.GoToAsync("BuildingApartmentDetail");
         if (Shell.Current.Navigation.NavigationStack[Shell.Current.Navigation.NavigationStack.Count - 1].GetType() != typeof(BuildingApartmentDetail))
         {
             await Shell.Current.Navigation.PushAsync(new BuildingApartmentDetail()
             {
                 BindingContext = new BuildingApartmentDetailViewModel()
                 {
                     BuildingApartment = parm
                 }
             });
         }
     }
 }
        public async Task <BuildingApartment> GetItemAsync(string id)
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri(App.AzureBackendUrl);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(
                    new MediaTypeWithQualityHeaderValue("application/json"));
                using (HttpResponseMessage response = await client.GetAsync($"api/BuildingApartment/GetBuildingApartmentByID?Id=" + id))
                {
                    var responseBody = await response.Content.ReadAsStringAsync();

                    Response result = JsonConvert.DeserializeObject <Response>(responseBody);


                    BuildingApartment location = JsonConvert.DeserializeObject <BuildingApartment>(result.Data.ToString());

                    response.EnsureSuccessStatusCode();

                    return(await Task.FromResult(location));
                }
            }
        }