Exemple #1
0
        internal async void GetPatientInfo(string value)
        {
            PatientName = value;
            var temp = new List <string>();

            if (CrossConnectivity.Current.IsConnected == true)
            {
                try
                {
                    HttpClient httpClient = new System.Net.Http.HttpClient();

                    dynamic p = new JObject();
                    p.Patient_Name = value;
                    p.Site_Code    = Library.KEY_USER_SiteCode;

                    string stringPayload = JsonConvert.SerializeObject(p);

                    var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json");

                    HttpResponseMessage response = await httpClient.PostAsync(Library.URL + "/Searchpatient", httpContent);

                    // HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, Library.URL + "/Searchpatient/" + value + "/" + Library.KEY_USER_SiteCode);
                    // HttpResponseMessage response = await httpClient.SendAsync(request);

                    var data = await response.Content.ReadAsStringAsync();

                    var namelist = JsonConvert.DeserializeObject <ObservableCollection <dynamic> >(data);

                    foreach (var item in namelist)
                    {
                        string name = item.Patient_Name;
                        temp.Add(name);
                    }
                    PatientDatas = new List <string>(temp);

                    if (!PatientDatas.Any())
                    {
                        PatientDatas = new List <string> {
                            "No Results"
                        }
                    }
                    ;
                }
                catch (Exception)
                {
                }
            }
            else
            {
                var data = _patientRepo.QueryTable().Where(x => x.Patientname.ToLower().Contains(value.ToLower()));
                foreach (var item in data)
                {
                    PatientDatas.Add(item.Patientname);
                }
            }
        }
        internal async void GetPatientInfo(string value)
        {
            PatientName = value;
            var temp = new List <string>();

            if (Connectivity.NetworkAccess == NetworkAccess.Internet)
            {
                try
                {
                    HttpClient httpClient = new System.Net.Http.HttpClient();

                    dynamic p = new JObject();
                    p.Patient_Name = value;
                    p.Site_Code    = Library.KEY_USER_SiteCode;


                    var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(p));

                    // Wrap our JSON inside a StringContent which then can be used by the HttpClient class
                    var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json");

                    var response = await httpClient.PostAsync($"{Library.URL}/Searchpatient", httpContent);

                    //HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, Library.URL + "/Searchpatient/" + value + "/" + Library.KEY_USER_SiteCode);
                    //HttpResponseMessage response = await httpClient.SendAsync(request);

                    var data = await response.Content.ReadAsStringAsync();

                    JArray jarray = JArray.Parse(data);

                    var namelist = JsonConvert.DeserializeObject <ObservableCollection <dynamic> >(data);

                    for (int i = 0; i < jarray.Count; i++)
                    {
                        temp.Add(jarray[i].Value <string>("Patient_Name"));
                    }

                    PatientDatas = new List <object>(temp);
                }
                catch (Exception)
                {
                }
            }
            else
            {
                var data = _patientRepo.QueryTable().Where(x => x.Patientname.ToLower().Contains(value.ToLower()));

                foreach (var item in data)
                {
                    PatientDatas.Add(item.Patientname);
                }
            }
        }