コード例 #1
0
        /// <summary>
        /// this functions checks if an anamnese for a patient exists in the database
        /// </summary>
        /// <param name="pagesnavigation"></param>
        /// <param name="patientenDataGrid"></param>
        /// <returns></returns>
        public bool CheckIfAnamneseForPatient(PagesNavigation pagesnavigation, DataGrid patientenDataGrid)
        {
            DataSet data = ((QueryBuilder)MysqlSshConnection.InstanceCon).CustomeQuery(
                "SELECT * FROM anamneslijst WHERE patient_id =" + Container.GetInstance.Get("patient")["id"]);

            //if patienten anamnese exist : enable buttons
            if (data.Tables[0].Rows.Count == 0)
            {
                pagesnavigation.DossierButton.IsEnabled    = false;
                pagesnavigation.MetingenButton.IsEnabled   = false;
                pagesnavigation.RapportageButton.IsEnabled = false;
                AnamneseOverzicht anamneseButton = new AnamneseOverzicht(pagesnavigation, patientenDataGrid);
                pagesnavigation.mainFrame.NavigationService.Navigate(anamneseButton);
                pagesnavigation.ShowDialog();

                return(true);
            }
            // else if patienten anamnese does not exist : enable buttons

            pagesnavigation.DossierButton.IsEnabled    = true;
            pagesnavigation.MetingenButton.IsEnabled   = true;
            pagesnavigation.RapportageButton.IsEnabled = true;

            return(false);
        }
コード例 #2
0
        /// <summary>
        /// Handles the mainframe in the patientendossier page
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="mainframe"></param>
        /// <param name="pagesNavigation"></param>
        /// <param name="home"></param>
        /// <param name="patientenDataGrid"></param>
        public void PagesHandler(object sender, Frame mainframe, PagesNavigation pagesNavigation, Home home, DataGrid patientenDataGrid)
        {
            Button btn = (Button)sender;

            switch (btn.Name)
            {
            case "DossierButton":
                PatientDossier patient = new PatientDossier(pagesNavigation, patientenDataGrid);
                mainframe.NavigationService.Navigate(patient);
                break;

            case "AnamneseButton":
                AnamneseOverzicht anamneseButton = new AnamneseOverzicht(pagesNavigation, patientenDataGrid);
                mainframe.NavigationService.Navigate(anamneseButton);
                break;

            case "MetingenButton":
                MetingenOverzicht metingenOverzicht = new MetingenOverzicht();
                mainframe.NavigationService.Navigate(metingenOverzicht);
                break;

            case "RapportageButton":
                RapportagesOverzicht rapportagesOverzicht = new RapportagesOverzicht();
                mainframe.NavigationService.Navigate(rapportagesOverzicht);
                break;

            case "PatientDossier":
                break;
            }
        }
コード例 #3
0
 /// <summary>
 /// loads anamnese overview
 /// </summary>
 /// <param name="pagesNavigation"></param>
 /// <param name="patientenDataGrid"></param>
 public AnamneseOverzicht(PagesNavigation pagesNavigation, DataGrid patientenDataGrid)
 {
     InitializeComponent();
     anamneseController.Overzicht(this);
     CreateAnamneseBtn.Click += (sender, e) => anamneseController.CreateAnamnese(sender, NavigationService, pagesNavigation, patientenDataGrid);
     deletebtn.Click         += (sender, e) => patientController.DeletePatient(pagesNavigation, patientenDataGrid);
 }
コード例 #4
0
 /// <summary>
 /// creates new anamnse
 /// </summary>
 /// <param name="pagesNavigation"></param>
 /// <param name="patienDataGrid"></param>
 public AnamneseCreate(PagesNavigation pagesNavigation, DataGrid patienDataGrid)
 {
     InitializeComponent();
     gordon_saveBtn.Click += (sender, e) =>
                             anamnesecontroller.Create(sender, stackpanel, NavigationService, pagesNavigation, patienDataGrid);
     patient_id.Text       = Container.GetInstance.Get("patient")["id"].ToString();
     patient_id.IsReadOnly = true;
 }
コード例 #5
0
        /// <summary>
        /// Method to navigate to the create anamnese page.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="nav"></param>
        /// <param name="pagesNavigation"></param>
        /// <param name="patientenDataGrid"></param>
        public void CreateAnamnese(object sender, NavigationService nav, PagesNavigation pagesNavigation, DataGrid patientenDataGrid)
        {
            AnamneseCreate anamneseCreate = new AnamneseCreate(pagesNavigation, patientenDataGrid);
            Button         btn            = (Button)sender;

            if (btn.Name == "CreateAnamneseBtn")
            {
                nav.Navigate(anamneseCreate);
            }
        }
コード例 #6
0
        /// <summary>
        /// Method that inserts all fields into the database.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="stackpanel"></param>
        /// <param name="nav"></param>
        /// <param name="page"></param>
        /// <param name="patientenDataGrid"></param>
        public void Create(object sender, StackPanel stackpanel, NavigationService nav, PagesNavigation page, DataGrid patientenDataGrid)
        {
            Dictionary <string, string> array = new Dictionary <string, string>();

            foreach (FrameworkElement child in stackpanel.Children)
            {
                Grid grid = child as Grid;

                foreach (object textfield in grid.Children)
                {
                    if (textfield.GetType() == typeof(TextBox))
                    {
                        TextBox textbox = textfield as TextBox;
                        array[textbox.Name] = !string.IsNullOrEmpty(textbox.Text) ? textbox.Text : null;
                    }
                }
            }

            if (!Checkifempty(stackpanel))
            {
                MessageBox.Show("Niet alle velden zijn ingevuld");
            }
            else
            {
                MessageBoxResult  result            = MessageBox.Show("Weet u zeker dat u de anamnese wilt opslaan?", "Anamnse opslaan", MessageBoxButton.YesNoCancel);
                AnamneseOverzicht anamneseOverzicht = new AnamneseOverzicht(page, patientenDataGrid);
                switch (result)
                {
                case MessageBoxResult.Yes:
                    MessageBox.Show("Anamanese aangemaakt! Klik op 'Anamnese' in het menu om deze te bekijken.");
                    ((QueryBuilder)MysqlSshConnection.InstanceCon).InsertHandler("anamneslijst", array);
                    nav.Navigate(anamneseOverzicht);
                    page.Close();
                    Home            home = new Home();
                    PagesNavigation a    = new PagesNavigation(home, patientenDataGrid);
                    a.ShowDialog();

                    break;

                case MessageBoxResult.No:
                    break;

                case MessageBoxResult.Cancel:
                    break;
                }
            }
        }
コード例 #7
0
        /// <summary>
        /// opens patient page
        /// </summary>
        /// <param name="patientenDataGrid"></param>
        /// <param name="home"></param>
        public void OpenPatient(DataGrid patientenDataGrid, Home home)
        {
            DataRowView selectedRow = patientenDataGrid.SelectedItem as DataRowView;
            Dictionary <string, string> patientenDataRowArray = new Dictionary <string, string>();

            patientenDataRowArray["id"] = selectedRow.Row.ItemArray[0].ToString();

            DataSet patientDataRow = ((QueryBuilder)MysqlSshConnection.InstanceCon).CustomeQuery("SELECT * FROM patient WHERE userid = " + Container.GetInstance.Get("userId") + " AND id = " + patientenDataRowArray["id"]);

            Container.GetInstance.Set("patient", patientDataRow.Tables[0].Rows[0]);
            PagesNavigation navigation = new PagesNavigation(home, patientenDataGrid);

            if (!CheckIfAnamneseForPatient(navigation, patientenDataGrid))
            {
                PatientDossier patient = new PatientDossier(navigation, patientenDataGrid);
                navigation.mainFrame.NavigationService.Navigate(patient);
                navigation.ShowDialog();
            }
        }
コード例 #8
0
 /// <summary>
 /// handles patient page functions
 /// </summary>
 /// <param name="pagesNavigation"></param>
 /// <param name="patientenDataGrid"></param>
 public PatientDossier(PagesNavigation pagesNavigation, DataGrid patientenDataGrid)
 {
     InitializeComponent();
     patientController.Overzicht(this);
     deletebtn.Click += (sender, e) => patientController.DeletePatient(pagesNavigation, patientenDataGrid);
 }