コード例 #1
0
        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);
        }
コード例 #2
0
ファイル: AdminController.cs プロジェクト: cameos/ContactBook
        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));
            }
        }