Пример #1
0
        public async Task Submit()
        {
            try {
                Isenabled = false;
                Paramedicdata paramedicdata = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;

                var client = new HttpClient();
                client.BaseAddress = new Uri(Settings.Ngrok + "Paramedic/SetCarNumber/" + paramedicdata.Id);
                //Get Paramedic ID
                //
                var content = new StringContent(CarNum, Encoding.UTF8, "application/json");
                HttpResponseMessage response = await client.PostAsync(paramedicdata.Id + "/" + CarNum, content); //Set Paramedic Id

                if (response.IsSuccessStatusCode)
                {
                    DependencyService.Get <Toast>().Show("Sumbited");
                    await Task.Delay(2000);

                    await Xamarin.Forms.Application.Current.MainPage.Navigation.PushModalAsync(new Ambulance.Paramedic.Views.ParamedicProfile());
                }
                else
                {
                    DependencyService.Get <Toast>().Show("Wrong Car Num Check it Again!");
                    Isenabled = true;
                    return;
                }
            }
            catch (Exception e)
            {
                DependencyService.Get <Toast>().Show("No internet connection");
            }
        }
        public RequestViewmodelcs()
        {
            Paramedicdata paramedicdata = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;



            connection = new HubConnectionBuilder()
                         .WithUrl(Settings.NgrokHub)
                         .Build();

            connection.StartAsync();
            var x = connection.State;

            connection.Closed += async(error) =>
            {
                await Task.Delay(3000);
                await Connect();
            };

            connection.On <string>("ConnectionReceived", (message) =>
            {
                DependencyService.Get <Toast>().Show(message.ToString());
                var paramedicId = paramedicdata.Id; //Change This to the suitable paramedic who choosen
                AuthorizeParamedic(paramedicId);
            });

            connection.On <object>("ConnectionStatus", (message) =>
            {
                CrossLocalNotifications.Current.Show("Message", message.ToString(), 101, DateTime.Now.AddSeconds(2));
            });
            async void AuthorizeParamedic(Guid paramedicId)
            {
                try
                {
                    await connection.InvokeAsync("AuthorizeParamedic", arg1 : paramedicId);
                }
                catch (Exception ex)
                {
                    throw new Exception("Faile to get this paramedic - " + ex.Message);
                }
            }

            connection.On <Object>("ReceiveOrder", (test) =>
            {
                var data             = test;
                HubData hub          = JsonConvert.DeserializeObject <HubData>(test.ToString());
                Settings.permantdata = data.ToString();

                Request = "It 's seem you have anew Request";
                Task.Delay(2000);
                //Xamarin.Forms.Application.Current.MainPage.Navigation.PushModalAsync(new Ambulance.Paramedic.Views.NavigationPage(hub));
            });
        }
        private async void Logout(object sender, EventArgs e)
        {
            Paramedicdata paramedicdata = new Paramedicdata();

            paramedicdata = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;

            HttpClient _client;

            _client = new HttpClient();
            var uri = new Uri(string.Format(Settings.Ngrok + "paramedic/paramedicloggingout/" + paramedicdata.Id, string.Empty));
            await _client.GetAsync(uri);

            await Navigation.PushModalAsync(new MainPage());
        }
Пример #4
0
 private void MyListView_ItemTapped(object sender, ItemTappedEventArgs e)
 {
     try
     {
         var           details   = e.Item as Hospitals;
         HubData       hub       = JsonConvert.DeserializeObject <HubData>(Helper.Settings.permantdata);
         Paramedicdata paramedic = JsonConvert.DeserializeObject <Paramedicdata>(Helper.Settings.GeneralSettings);
         SendParamedicHospitalChoice(details.HospitalId, hub.OrderId, paramedic.Id);
         Navigation.PushModalAsync(new Ambulance.Paramedic.Views.Payment(details));
     }
     catch (Exception exception)
     {
         DependencyService.Get <Toast>().Show(exception.Message);
     }
 }
        async Task Login()
        {
            Isenabled = false;
            IsRunning = true;
            try {
                var client = new HttpClient();
                client.BaseAddress = new Uri(Settings.Ngrok + "Users");

                User user = new User();
                user.Email    = email;
                user.Password = password;

                String Userdata = JsonConvert.SerializeObject(user);
                var    content  = new StringContent(Userdata, Encoding.UTF8, "application/json");
                HttpResponseMessage response = await client.PostAsync("users/Login", content);

                if (response.IsSuccessStatusCode)
                {
                    var result = await response.Content.ReadAsStringAsync();

                    Loginmodel modeldata = JsonConvert.DeserializeObject <Loginmodel>(result);
                    Settings.GeneralSettings = result;

                    if (modeldata.RoleName == "Patient")
                    {
                        client = new HttpClient();
                        var uri = new Uri(string.Format(Settings.Ngrok + "patient/GetPatientByUserId/" + modeldata.ID));//+ loginmodel.ID
                        response = await client.GetAsync(uri);

                        if (response.IsSuccessStatusCode)
                        {
                            var loginresult = await response.Content.ReadAsStringAsync();

                            Settings.GeneralSettings = loginresult;
                            await Xamarin.Forms.Application.Current.MainPage.Navigation.PushModalAsync(new Ambulance.UserViews.UserViews());
                        }
                        else
                        {
                            DependencyService.Get <Toast>().Show("Faild to connect server");
                        }
                    }
                    else
                    {
                        var uri = new Uri(string.Format(Settings.Ngrok + "Paramedic/GetParamedicByUserId/" + modeldata.ID));
                        response = await client.GetAsync(uri);

                        if (response.IsSuccessStatusCode)
                        {
                            var paramedicdata = await response.Content.ReadAsStringAsync();

                            Settings.GeneralSettings = paramedicdata;
                            Paramedicdata paramedic = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;
                            DependencyService.Get <Toast>().Show("Hello " + paramedic.UserData.Username.ToString());
                            await Xamarin.Forms.Application.Current.MainPage.Navigation.PushModalAsync(new Ambulance.Paramedic.Views.EnterCarNo());

                            return;
                        }
                        else
                        {
                            DependencyService.Get <Toast>().Show("Faild to connect server");
                        }
                    }
                }
                else
                {
                    DependencyService.Get <Toast>().Show("Invaild Email or Password");
                    Isenabled = true;
                    IsRunning = false;
                    return;
                }
            }
            catch (Exception x)
            {
                Isenabled = true;
                IsRunning = false;
                DependencyService.Get <Toast>().Show("No internet connection");
            }
        }
Пример #6
0
        protected override void OnAppearing()
        {
            Paramedicdata paramedicdata = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;

            DependencyService.Get <Toast>().Show("Hello " + paramedicdata.UserData.Username);
        }
Пример #7
0
        public Paramedicprofile()
        {
            Paramedicdata paramedic = JsonConvert.DeserializeObject <Paramedicdata>(Settings.GeneralSettings) as Paramedicdata;

            if (paramedic.UserData.ImageUrl == null)
            {
                this.userprofile = "profile.png";
            }
            else
            {
                this.userprofile = paramedic.UserData.ImageUrl;
            }
            this.Username    = paramedic.UserData.Username;
            this.Email       = paramedic.UserData.Email;
            this.PhoneNumber = paramedic.UserData.PhoneNumber;
            this.NationalID  = paramedic.UserData.NationalId;
            try {
                connection = new HubConnectionBuilder()
                             .WithUrl(Settings.NgrokHub)
                             .Build();

                connection.StartAsync();
                //         Task.Run(async () => { await Connect(); }).GetAwaiter();
                var x = connection.State;

                connection.Closed += async(error) =>
                {
                    await Task.Delay(3000);

                    await connection.StartAsync();
                };

                connection.On <string>("ConnectionReceived", (message) =>
                {
                    DependencyService.Get <Toast>().Show(message.ToString());
                    var paramedicId = paramedic.Id; //Change This to the suitable paramedic who choosen
                    AuthorizeParamedic(paramedicId);
                });

                connection.On <object>("ConnectionStatus", (message) =>
                {
                    CrossLocalNotifications.Current.Show("Message", message.ToString(), 101, DateTime.Now.AddSeconds(2));
                });
                async void AuthorizeParamedic(Guid paramedicId)
                {
                    try
                    {
                        await connection.InvokeAsync("AuthorizeParamedic", arg1 : paramedicId);
                    }
                    catch (Exception ex)
                    {
                        throw new Exception("Faile to get this paramedic - " + ex.Message);
                    }
                }

                connection.On <Object>("ReceiveOrder", (test) =>
                {
                    var data             = test;
                    HubData hub          = JsonConvert.DeserializeObject <HubData>(test.ToString());
                    Settings.permantdata = data.ToString();
                    CrossLocalNotifications.Current.Show("Message", "You have new request", 101, DateTime.Now.AddSeconds(2));
                    Isvisible = true;
                });
                Navigate = new Command(() => Move(connection));
            }
            catch (Exception e)
            {
                DependencyService.Get <Toast>().Show(e.ToString());
            }
        }