public async void AddProvince() { Value = true; var connection = await apiService.CheckConnection(); if (!connection.IsSuccess) { await Application.Current.MainPage.DisplayAlert( Languages.Warning, Languages.CheckConnection, Languages.Ok); return; } if (string.IsNullOrEmpty(Description) || string.IsNullOrEmpty(Code)) { Value = true; return; } var container = new AddProvince { code = Code, description = Description, region = Region }; var response = await apiService.Save <AddProvince>( "https://app.smart-path.it", "/md-core", "/medial/province", container); if (!response.IsSuccess) { await Application.Current.MainPage.DisplayAlert("Error", response.Message, "ok"); return; } Value = false; MessagingCenter.Send((App)Application.Current, "OnSaved"); DependencyService.Get <INotification>().CreateNotification("Medial", "Province Added"); await App.Current.MainPage.Navigation.PopPopupAsync(true); }
public ActionResult add_province(AddProvince prov) { var error_message = new object(); if (string.IsNullOrWhiteSpace(prov.adminCSelect) || string.IsNullOrWhiteSpace(prov.adminProvince)) { error_message = "error, bad request please check inputs"; return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } var countryId = Guid.Parse(prov.adminCSelect); Province province = new Province { CountryId = countryId, ProvinceName = prov.adminProvince, Description = prov.adminProvinceDesc }; Province temp = new Province(); using (var api = new HttpClient()) { api.BaseAddress = new Uri("https://localhost:44343/api/province/"); api.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var post = api.PostAsJsonAsync <string>("search/name", prov.adminProvince); post.Wait(); var result = post.Result; if (result.StatusCode == HttpStatusCode.OK) { var s = result.Content.ReadAsAsync <Province>(); s.Wait(); temp = s.Result; } else if (result.StatusCode == HttpStatusCode.NotFound) { var s = result.Content.ReadAsAsync <Province>(); s.Wait(); temp = s.Result; } else { error_message = "error, internal server error please try again later"; return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } } if (temp != null && (temp.ProvinceName != null) && (temp.ProvinceName == prov.adminProvince) && (temp.CountryId == province.CountryId)) { error_message = "error, country exists"; return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } //add new province bool flag = false; using (var api = new HttpClient()) { api.BaseAddress = new Uri("https://localhost:44343/api/province/"); api.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var post = api.PostAsJsonAsync <Province>("new", province); post.Wait(); var result = post.Result; if (result.StatusCode == HttpStatusCode.Created) { var s = result.Content.ReadAsAsync <bool>(); s.Wait(); flag = s.Result; } else if (result.StatusCode == HttpStatusCode.NotFound) { var s = result.Content.ReadAsAsync <bool>(); s.Wait(); flag = s.Result; } else { error_message = "error, internal server error please try again later"; return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } } if (!flag) { error_message = "error, internal server error please try again later"; return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } else { error_message = Url.Action("home", "admin"); return(Json(error_message, "application/json; charset=utf-8", Encoding.UTF8, JsonRequestBehavior.DenyGet)); } }