Esempio n. 1
0
        public Personnelinfo(UserData user, PersonnelInfoViewModel personnel, ConnService Sservice)

        {
            InitializeComponent();
            signalService = Sservice;

            UserList  = new List <PersonnelData>();
            this.user = user;
            persons   = personnel;


            Task.Run(async delegate
            {
                var response = await StaticHelpers.httpclient.GetAsync(Environment.GetEnvironmentVariable("GamersServerUri") + "/personnelinfo");
                var result   = await response.Content.ReadAsStringAsync();

                Dispatcher.Invoke(() =>
                {
                    UserList            = JsonConvert.DeserializeObject <List <PersonnelData> >(result);
                    Users.ItemsSource   = UserList;
                    CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(Users.ItemsSource);
                    view.Filter         = UseFilter;
                });
            });


            signalService.SendingSuccess += (string response, string view, string sender) =>
            {
                if (sender == user.UserId && view == "Personnel")
                {
                    MessageBox.Show(response);
                }
            };
        }
Esempio n. 2
0
        public Personnelinfo()

        {
            InitializeComponent();
            PersonnelInfoViewModel persons = new PersonnelInfoViewModel();

            Users.ItemsSource = persons.GetData();
        }
Esempio n. 3
0
        public Home(UserData Userinfo, string uri)
        {
            InitializeComponent();
            try
            {
                User     = Userinfo;
                this.uri = uri;
                Loaded  += Home_Loaded;
                string NameChip = "Hi, " + User.Firstname + " " + User.Surname;
                stat = new StatusModel
                {
                    UserId = User.UserId,
                    Status = "Active"
                };

                connection = new HubConnectionBuilder()
                             .WithUrl(uri + "/updates")
                             .Build();

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

                    await signalService.SendStatus(stat);

                    CloseHomeWindow?.Invoke();
                };

                this.StateChanged += Home_StateChanged;


                signalService = new ConnService(connection);

                signalService.StatusReceived += Cos_StatusReceived;

                signalService.AlertReceived += CasesPage_AlertEvent;

                Task.Run(async() =>
                {
                    await ServerConnect();
                });

                persons       = new PersonnelInfoViewModel();
                schedule      = new SchedulePage();
                paypage       = new PaymentPage();
                loadingWindow = new LoadingWindow();

                signalService.NewUserSync += async(string id) =>
                {
                    await signalService.ConnectionSync(User.UserId);
                };

                signalService.DisconnectUser += (string obj) =>
                {
                    Task.Run(async() =>
                    {
                        await signalService.SendStatus(stat);
                        await signalService.UpdateStatus(stat.Status, stat.UserId);
                    });
                };
                LoadMap();

                HistoryPage.historyItem += (HistoryModel obj) =>
                {
                    MainHolder.Visibility = Visibility.Visible;
                    browser.Visibility    = Visibility.Collapsed;
                    Dispatcher.Invoke(() => MainHolder.NavigationService.Navigate(new CaseDetails(obj)));
                };



                this.Closing += MainWindow_Closing;

                sService = signalService;



                Respond += (string[] details) =>
                {
                    Dispatcher.Invoke(() =>
                    {
                        ResponseView.Visibility = Visibility.Visible;
                        browser.Visibility      = Visibility.Collapsed;
                        var rpage = new ResponsePage(User, signalService, details);
                        Response.NavigationService.Navigate(rpage);


                        rpage.BtnClicked += (string obj) =>
                        {
                            switch (obj)
                            {
                            case "Close":
                                ResponseView.Visibility  = Visibility.Collapsed;
                                browser.Visibility       = Visibility.Visible;
                                RestoreButton.Visibility = Visibility.Visible;
                                break;

                            case "restart":
                                CasesModel alert = new CasesModel()
                                {
                                    DateTime    = Convert.ToDateTime(details[5]),
                                    Location    = details[2],
                                    VHTCode     = details[4],
                                    Description = details[6],
                                    Village     = details[3],
                                    Status      = "ongoing",
                                    CaseId      = details[0],
                                    Category    = details[7]
                                };
                                Dispatcher.Invoke(async() => {
                                    await signalService.RestartResponse(details[0]);
                                });
                                break;

                            case "completed":
                                Dispatcher.Invoke(() => {
                                    RadWindow.Confirm("Are you sure you want to mark case as completed?", async delegate
                                    {
                                        await signalService.CompletedCase(details[0]);
                                        RadWindow.Alert("This case has been marked as completed.", MarkCaseCompleted);
                                    });
                                });
                                break;
                            }
                        };
                    });
                };
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }