private void btnAfficherAdmission_Click(object sender, RoutedEventArgs e)
        {
            AdmissionAffichee adm = dgListeAdmissions.SelectedItem as AdmissionAffichee;

            if (adm != null)
            {
                //AfficherAdmission fenetreAA = new AfficherAdmission(adm);
                //fenetreAA.ShowDialog();

                Admission sAdmission = myBdd.Admissions.SingleOrDefault(a => a.IdAdmission == adm.IdAdmission);
                if (sAdmission != null)
                {
                    AfficherAdmission fenetreAA = new AfficherAdmission(sAdmission);
                    fenetreAA.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Aucune admission n'est choisie", "Alerte", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            else
            {
                MessageBox.Show("Aucune admission n'est choisie", "Alerte", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }
Ejemplo n.º 2
0
        } // listerAdmissions()

        private void btnDonnerConge_Click(object sender, RoutedEventArgs e)
        {
            AdmissionAffichee admissionAffichee = dgListeAdmissions.SelectedItem as AdmissionAffichee;

            if (admissionAffichee != null)
            {
                // On retrouve l'admission choisie dans notre table Admissions
                Admission sAdmission = myBdd.Admissions.SingleOrDefault(a => a.IdAdmission == admissionAffichee.IdAdmission);

                if (sAdmission != null)
                {
                    if (sAdmission.DateConge == null)
                    {
                        // On met la date d'aujourd'hui comme la date de congé et on libère le lit
                        sAdmission.DateConge  = DateTime.Today;
                        sAdmission.Lit.Occupe = false;

                        // On calcule la facture à payer
                        double totalFacture  = 0;
                        double coutQuotidien = 0;

                        if (sAdmission.ChambrePriveGratuit != true && sAdmission.Patient.AssurancePrive == null)
                        {
                            if (sAdmission.Lit.IdTypeLit == 2)
                            {
                                coutQuotidien += 267;
                            }
                            else if (sAdmission.Lit.IdTypeLit == 3)
                            {
                                coutQuotidien += 571;
                            }
                        }

                        if (sAdmission.LocationTelephone == true)
                        {
                            coutQuotidien += 7.50;
                        }

                        if (sAdmission.LocationTeleviseur == true)
                        {
                            coutQuotidien += 42.50;
                        }

                        // Calcul des jours passés à l'hôpital et du total de la facture
                        if (coutQuotidien > 0)
                        {
                            int Nbjours = (sAdmission.DateConge.Value.Date - sAdmission.DateAdmission.Date).Days;
                            totalFacture = coutQuotidien * Nbjours;
                        }

                        // Sauvegarde des changements et affichage de la facture
                        try
                        {
                            myBdd.SaveChanges();
                            MessageBox.Show("Le patient " + sAdmission.Patient.Nom.Trim() + " " + sAdmission.Patient.Prenom.Trim() +
                                            " a reçu son congé et le total de sa facture est: " + totalFacture + "$",
                                            "Congé", MessageBoxButton.OK, MessageBoxImage.Information);

                            listerAdmissions();
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message, "Erreur d'enregistrement", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show("L'admission choisie était déjà fermée", "Alerte", MessageBoxButton.OK, MessageBoxImage.Warning);
                    }
                }
                else
                {
                    MessageBox.Show("Aucune admission n'est sélectionnée!", "Alerte",
                                    MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            else
            {
                MessageBox.Show("Aucune admission n'est sélectionnée!", "Alerte",
                                MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        } // btnDonnerConge_Click