Example #1
0
        public ControlDossierPatientNotesInf(Citoyen patient, Hospitalisation hospit)
        {
            InitializeComponent();
            DataContext = ControlModelNoteInf = new ControlModelDossierPatientNotesInf(patient, hospit, Data.DataModelNotesInf.GetNotesInfirmiereCitoyens(patient.AssMaladie, hospit.DateDebut));

            /*http://420.cstj.qc.ca/laurencedarveau/vitadmin/radio1.jpg*/
        }
Example #2
0
        public IHttpActionResult PutHospitalisation(int id, Hospitalisation hospitalisation)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != hospitalisation.HospitalisationId)
            {
                return(BadRequest());
            }

            db.Entry(hospitalisation).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!HospitalisationExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public static void AddResultatLabo(Hospitalisation hospit, ResultatLabo resultLabo, int numEmp)
        {
            resultLabo.DateEvenement   = DateTime.Now;
            resultLabo.EmployeImplique = DataModelEmploye.GetEmploye(numEmp);

            if (ConnexionBD.Instance().EstConnecte())
            {
                string requete = string.Format("INSERT INTO evenements " +
                                               "(idHospitalisation, idEmploye, dateHeure, estNotifier) " +
                                               "VALUES (" +
                                               "(SELECT idHospitalisation FROM hospitalisations WHERE dateDebut = '{0}')," +
                                               "{1}," +
                                               "'{2}'," +
                                               "{3})", hospit.DateDebut.ToString(), numEmp, resultLabo.DateEvenement.ToString(), resultLabo.EstNotifier);


                ConnexionBD.Instance().ExecuterRequete(requete);

                requete = string.Format("INSERT INTO resultatsLabo " +
                                        "(idEvenement, lienImage, nomAnalyse) " +
                                        "VALUES (" +
                                        "(SELECT idEvenement FROM evenements WHERE dateHeure = '{0}')," +
                                        "'{1}'," +
                                        "'{2}')"
                                        , resultLabo.DateEvenement.ToString(), resultLabo.LienImage, resultLabo.NomAnalyse);

                ConnexionBD.Instance().ExecuterRequete(requete);
                ControlModel.ControlModelDossierPatientResultatsLabo.LstResultsLabo.Add(resultLabo);
            }
        }
Example #4
0
        public static void AddNoteInf(Hospitalisation hospit, NoteInfirmiere noteInf, int numEmp)
        {
            noteInf.DateEvenement   = DateTime.Now;
            noteInf.EmployeImplique = DataModelEmploye.GetEmploye(numEmp);

            if (ConnexionBD.Instance().EstConnecte())
            {
                string requete = string.Format("INSERT INTO evenements " +
                                               "(idHospitalisation, idEmploye, dateHeure, estNotifier) " +
                                               "VALUES (" +
                                               "(SELECT idHospitalisation FROM hospitalisations WHERE dateDebut = '{0}')," +
                                               "{1}," +
                                               "'{2}'," +
                                               "{3})", hospit.DateDebut.ToString(), numEmp, noteInf.DateEvenement.ToString(), noteInf.EstNotifier);


                ConnexionBD.Instance().ExecuterRequete(requete);

                requete = string.Format("INSERT INTO NotesInfirmiere " +
                                        "(idEvenement, note) " +
                                        "VALUES (" +
                                        "(SELECT idEvenement FROM evenements WHERE dateHeure = '{0}')," +
                                        "'{1}')"
                                        , noteInf.DateEvenement.ToString(), noteInf.NotesInf);

                ConnexionBD.Instance().ExecuterRequete(requete);
                ControlModel.ControlModelDossierPatientNotesInf.LstNotesInf.Add(noteInf);
            }
        }
Example #5
0
        public static void AddPrescription(Hospitalisation hospit, Prescription prescript, int numEmp)
        {
            prescript.DateEvenement   = DateTime.Now;
            prescript.EmployeImplique = DataModelEmploye.GetEmploye(numEmp);

            if (ConnexionBD.Instance().EstConnecte())
            {
                string requete = string.Format("INSERT INTO evenements " +
                                               "(idHospitalisation, idEmploye, dateHeure, estNotifier) " +
                                               "VALUES (" +
                                               "(SELECT idHospitalisation FROM hospitalisations WHERE dateDebut = '{0}')," +
                                               "{1}," +
                                               "'{2}'," +
                                               "{3})", hospit.DateDebut.ToString(), numEmp, prescript.DateEvenement.ToString(), prescript.EstNotifier);


                ConnexionBD.Instance().ExecuterRequete(requete);

                requete = string.Format("INSERT INTO Prescriptions " +
                                        "(idEvenement, produit, posologie, dateDebut, nbJour) " +
                                        "VALUES (" +
                                        "(SELECT idEvenement FROM evenements WHERE dateHeure = '{0}')," +
                                        "'{1}'," +
                                        "'{2}'," +
                                        "'{3}'," +
                                        "{4})"
                                        , prescript.DateEvenement.ToString(), prescript.Produit, prescript.Posologie, prescript.DateDebut.ToString(), prescript.NbJour);

                ConnexionBD.Instance().ExecuterRequete(requete);
                ControlModel.ControlModelDossierPatientPrescriptions.LstPrescriptions.Add(prescript);
            }
        }
Example #6
0
        public static Hospitalisation GetHospitalisation(Citoyen citoyen)
        {
            Hospitalisation hospitalisation = new Hospitalisation();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                // Si oui, on execute la requête que l'on veut effectuer
                ConnexionBD.Instance().ExecuterRequete(
                    "SELECT h.dateDebut dDebut, h.dateFin dFin, t.Nom NomTrait " +
                    "FROM hospitalisations h " +
                    "INNER JOIN citoyens c ON c.idCitoyen = h.idCitoyen " +
                    "INNER JOIN hospitalisationstraitements ht ON ht.idHospitalisation = h.idHospitalisation " +
                    "INNER JOIN traitements t ON t.idTraitement = ht.idTraitement " +
                    "INNER JOIN departements d ON d.idDepartement = t.idDepartement " +
                    "WHERE c.numAssuranceMaladie ='" + citoyen.AssMaladie + "' "
                    , lecteur =>
                {
                    hospitalisation.DateDebut = (DateTime)lecteur.GetMySqlDateTime("dDebut");
                    //hospitalisation.DateFin = lecteur.IsDBNull(lecteur.GetOrdinal("dFin")) ? new DateTime() : (DateTime)lecteur.GetMySqlDateTime("dFin");
                    hospitalisation.DateFin = (DateTime)lecteur.GetMySqlDateTime("dFin");
                }
                    );
            }

            return(hospitalisation);
        }
Example #7
0
        /// <summary>
        /// Sert à s'assurer que les dernières hospitalisations ont été terminées lorsqu'un nouvelle hospitalisation a été créée pour un patient
        /// </summary>
        /// <param name="citoyen"></param>
        public static void PutHospitalisationTerminees(Citoyen citoyen)
        {
            Hospitalisation hospitalisation = new Hospitalisation();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                //hospitalisation = GetHospitalisation(citoyen);

                // On met fin au traitement de l'hospitalisation à terminer
                ConnexionBD.Instance().ExecuterRequete(
                    "UPDATE hospitalisationstraitements ht " +
                    "SET ht.estEnCours = 'false' " +
                    "WHERE ht.idHospitalisation = (SELECT idHospitalisation FROM hospitalisations h WHERE (h.dateFin = '0001-01-01 00:00:00' OR h.dateFin IS NULL) " +
                    "AND h.idCitoyen = (SELECT idCitoyen FROM citoyens c WHERE c.numAssuranceMaladie = '" + citoyen.AssMaladie + "')) "
                    );

                // Si oui, on execute la requête que l'on veut effectuer
                ConnexionBD.Instance().ExecuterRequete(
                    "UPDATE hospitalisations h " +
                    "SET h.dateFin = '" + DateTime.Now + "' " +
                    "WHERE (h.dateFin = '0000-00-00 00:00:00' OR h.dateFin IS NULL) " +
                    "AND h.idCitoyen = (SELECT idCitoyen FROM citoyens c WHERE c.numAssuranceMaladie = '" + citoyen.AssMaladie + "') "
                    );
            }
        }
        public Boolean Add(Hospitalisation newHospitalisation)
        {
            List <Hospitalisation> hospitalisations = GetAll();

            hospitalisations.Add(newHospitalisation);
            Save(hospitalisations);
            return(true);
        }
 public ControlModelAjouterPatientLit(GestionnaireEcrans gestionnaireEcrans, Citoyen citoyen, Lit lit, Hospitalisation hospitalisation, List <Lit> lits)
 {
     GestionnaireEcrans = gestionnaireEcrans;
     Citoyen            = citoyen;
     Hospitalisation    = hospitalisation;
     Lit            = lit;
     CallRequeteLit = () => { Lits = new ObservableCollection <Lit>(DataModelLit.GetLitsDepartement(hospitalisation.LstTraitements[0].DepartementAssocie)); };
 }
Example #10
0
        public static void PostHospitalisation(Citoyen citoyen, Hospitalisation hospitalisation, Traitement traitement, Chambre chambre, Lit lit)
        {
            if (ConnexionBD.Instance().EstConnecte())
            {
                PutHospitalisationTerminees(citoyen);

                // On crée la nouvelle hospitalisation liée au patient
                ConnexionBD.Instance().ExecuterRequete(

                    "INSERT INTO hospitalisations (idCitoyen, dateDebut, dateFin, contexte) " +
                    "VALUES ((SELECT idCitoyen FROM citoyens c WHERE c.numAssuranceMaladie = '" + citoyen.AssMaladie + "'), " +
                    "'" + hospitalisation.DateDebut.ToString() + "', " +
                    "'" + hospitalisation.DateFin.ToString() + "', " +
                    "'" + hospitalisation.Contexte + "') "
                    );

                // On crée la nouvelle liste de symptôme lié à l'hospitalisation
                hospitalisation.LstSymptomes.ForEach(symptome => {
                    ConnexionBD.Instance().ExecuterRequete(

                        "INSERT INTO symptomes (idHospitalisation, description, estActif) " +
                        "VALUES ((SELECT idHospitalisation FROM hospitalisation h " +
                        "INNER JOIN citoyen c ON c.idCitoyen = h.idCitoyen " +
                        "WHERE h.dateDebut = '" + hospitalisation.DateDebut.ToString() + "' AND " +
                        "c.numAssuranceMaladie = '" + citoyen.AssMaladie + "' ), " +     // Fin de la valeur idHospitalisation
                        "'" + symptome.Description + "', " +
                        "'" + symptome.EstActif + "') ");
                });

                // Ensuite, il faut créer le lien en bd entre l'hospitalisation et le traitement assigné
                ConnexionBD.Instance().ExecuterRequete(

                    "INSERT INTO hospitalisationstraitements (idHospitalisation, idTraitement, estEnCours) " +
                    "VALUES ((SELECT idHospitalisation FROM hospitalisations h INNER JOIN citoyens c WHERE (c.numAssuranceMaladie = '" + citoyen.AssMaladie + "') AND (h.dateDebut = '" + hospitalisation.DateDebut.ToString() + "')), " +
                    "(SELECT idTraitement FROM traitements t WHERE t.nom = '" + traitement.Nom + "'), " +
                    "true) "
                    );

                PutHospitalisationTraitement(hospitalisation, traitement);

                // Ensuite, il faut mettre à jour le lit dans lequel le citoyen est hospitalisé s'il a été assigné dans un lit disponible
                // Si le citoyen était assigné à un autre lit, il faut le sortir de ce lit pour le libérer.
                // TODO: Il va falloir mettre l'ancien lit en entretien par défaut lorsque l'infirmière-chef aura le menu pour modifier l'état des lits
                if (citoyen.Lit.Numero != null)
                {
                    DataModelLit.PutAncienLitCitoyen(citoyen);
                }

                if (lit != null)
                {
                    DataModelLit.PutNouveauLitCitoyen(lit, citoyen);
                }

                //On change le lit du patient dans la mémoire aussi!
                citoyen.Lit = lit;
            }
        }
Example #11
0
        public IHttpActionResult GetHospitalisation(int id)
        {
            Hospitalisation hospitalisation = db.Hospitalisations.Find(id);

            if (hospitalisation == null)
            {
                return(NotFound());
            }

            return(Ok(hospitalisation));
        }
        public ControlModelSymptome(Hospitalisation hospitalisation)
        {
            if (hospitalisation.LstSymptomes == null)
            {
                hospitalisation.LstSymptomes = new List <Symptome>();
            }

            Hospitalisation = hospitalisation;

            Symptomes = new ObservableCollection <Symptome>(hospitalisation.LstSymptomes);
        }
Example #13
0
        public IHttpActionResult PostHospitalisation(Hospitalisation hospitalisation)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Hospitalisations.Add(hospitalisation);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = hospitalisation.HospitalisationId }, hospitalisation));
        }
        public void Save(Hospitalisation hospitalisation)
        {
            foreach (Hospitalisation hosp in _hospitalisationFileRepository.GetAll())
            {
                if (hosp.HospitalisationId.Equals(hospitalisation.HospitalisationId))
                {
                    _hospitalisationFileRepository.Update(hospitalisation.HospitalisationId, hospitalisation);
                    return;
                }
            }

            _hospitalisationFileRepository.Add(hospitalisation);
        }
        public ControlTextBoxHospitalisation(string nomLabel, Hospitalisation hospitalisation)
        {
            InitializeComponent();


            DataContext = new ControlModelTextBoxHospitalisation(nomLabel, hospitalisation);
            placeHolder = new placeHolder("Ajouter le contexte ici");
            (DataContext as ControlModelTextBoxHospitalisation).Hospitalisation.Contexte = placeHolder.Texte;
            Loaded += Focus_OnLoaded;

            txtContext.GotFocus  += placeHolder.EnleverTexte;
            txtContext.LostFocus += placeHolder.AjouterTexte;
        }
Example #16
0
        public IHttpActionResult DeleteHospitalisation(int id)
        {
            Hospitalisation hospitalisation = db.Hospitalisations.Find(id);

            if (hospitalisation == null)
            {
                return(NotFound());
            }

            db.Hospitalisations.Remove(hospitalisation);
            db.SaveChanges();

            return(Ok(hospitalisation));
        }
Example #17
0
        public static void AddEvenement(Hospitalisation hospit, Evenement evenement)
        {
            if (ConnexionBD.Instance().EstConnecte())
            {
                string requete = string.Format("INSERT INTO evenement " +
                                               "(idHospitalisation, idEmploye) " +
                                               "VALUES (" +
                                               "(SELECT idHospitalisation FROM hospitalisation WHERE dateDebut = '{0}')," +
                                               "(SELECT idEmploye FROM employe WHERE numEmploye = '{1}'))", hospit.DateDebut.ToString(), evenement.EmployeImplique.NumEmploye);


                ConnexionBD.Instance().ExecuterRequete(requete);
            }
        }
Example #18
0
 /// <summary>
 /// sert à rendre à false le estEnCours des traitements qui ne sont plus en cours dans une hospitalisation
 /// </summary>
 /// <param name="hospitalisation"></param>
 /// <param name="traitementEnCours"></param>
 public static void PutHospitalisationTraitement(Hospitalisation hospitalisation, Traitement traitementEnCours)
 {
     // On vérifie si la BD est connecté
     if (ConnexionBD.Instance().EstConnecte())
     {
         // Si oui, on execute la requête que l'on veut effectuer
         ConnexionBD.Instance().ExecuterRequete(
             "UPDATE hospitalisationstraitements ht " +
             "SET ht.estEnCours = 0 " +
             "WHERE ht.idHospitalisation = (SELECT idHospitalisation FROM hospitalisations h WHERE h.dateDebut = '" + hospitalisation.DateDebut + "') " +
             "AND ht.idTraitement != (SELECT idTraitement FROM traitements t WHERE t.nom = '" + traitementEnCours.Nom + "') "
             );
     }
 }
        public Boolean Update(int hospitalisationId, Hospitalisation newHospitalisation)
        {
            List <Hospitalisation> hospitalisations = GetAll();

            foreach (Hospitalisation hospitalisation in hospitalisations)
            {
                if (hospitalisation.HospitalisationId.Equals(hospitalisationId))
                {
                    hospitalisations[hospitalisations.IndexOf(hospitalisation)] = newHospitalisation;
                    Save(hospitalisations);
                    return(true);
                }
            }
            return(false);
        }
Example #20
0
        public ViewModelProfessionnelDossierPatientCreerHospitalisation(GestionnaireEcrans gestionnaireEcrans, Citoyen citoyen)
        {
            LstUserControl     = new List <UserControl>();
            Hospitalisation    = new Hospitalisation();
            GestionnaireEcrans = gestionnaireEcrans;
            Citoyen            = citoyen;

            ControlAjouterPatientLit UCPatientLits = new ControlAjouterPatientLit(GestionnaireEcrans, Citoyen, Lit, Hospitalisation);

            LstUserControl.Add(new ControlTextBoxHospitalisation("Contexte:", Hospitalisation));
            LstUserControl.Add(new ControlSymptome(Hospitalisation));
            LstUserControl.Add(new ControlTraitementCreationHospitalisation(Hospitalisation.LstTraitements = new List <Traitement>(), UCPatientLits.CallRequeteLits));
            LstUserControl.Add(UCPatientLits);

            TotalEtape = LstUserControl.Count();
            NumEtape   = 1;
        }
Example #21
0
 public ViewPatientHospitalisation(GestionnaireEcrans gestionnaireEcrans, Citoyen patient, Hospitalisation hospit)
 {
     InitializeComponent();
     DataContext  = new ViewModelPatientHospitalisation(gestionnaireEcrans, patient);
     this.Content = new ControlDossierPatientOnglets(gestionnaireEcrans, patient, hospit);
     Patient      = patient;
     GestEcrans   = gestionnaireEcrans;
 }
Example #22
0
 public ControlModelAjoutPrescription(Hospitalisation hospit)
 {
     Hospit = hospit;
 }
Example #23
0
 public ControlDossierPatientPrescriptions(Citoyen patient, Hospitalisation hospit)
 {
     InitializeComponent();
     DataContext = ControlModelPrescription = new ControlModelDossierPatientPrescriptions(patient, hospit, DataModelPrescriptions.GetPrescriptionsCitoyens(patient.AssMaladie));
 }
 public ControlModelTextBoxHospitalisation(string nomLabel, Hospitalisation hospitalisation)
 {
     NomLabel        = nomLabel;
     Hospitalisation = hospitalisation;
     //Hospitalisation.Contexte = "Ajouter le contexte ici";
 }
 public ControlModelDossierPatientNotesInf(Citoyen patient, Hospitalisation hospit, List <NoteInfirmiere> lstNotesInf)
 {
     LstNotesInf = new ObservableCollection <NoteInfirmiere>(lstNotesInf);
     Hospit      = hospit;
 }
Example #26
0
 public ControlAjoutPrescription(Hospitalisation hospit)
 {
     InitializeComponent();
     DataContext = ControlModelPrescription = new ControlModelAjoutPrescription(hospit);
 }
        //ObservableCollection<Lit> Lits { get; set; }
        public ControlAjouterPatientLit(GestionnaireEcrans gestionnaireEcrans, Citoyen citoyen, Lit lit, Hospitalisation hospitalisation)
        {
            InitializeComponent();

            DataContext = new ControlModelAjouterPatientLit(gestionnaireEcrans, citoyen, lit, hospitalisation, new List <Lit>());
        }
 public ControlModelAjoutNote(Hospitalisation hospit)
 {
     Hospit  = hospit;
     NoteInf = new NoteInfirmiere();
 }
 public ControlModelAjoutResultatLabo(Hospitalisation hospit)
 {
     Hospit = hospit;
 }
Example #30
0
 public ControlModelDossierPatientNotesMed(Citoyen patient, Hospitalisation hospit, List <NoteMedecin> lstNotesMed)
 {
     LstNotesMed = new ObservableCollection <NoteMedecin>(lstNotesMed);
     Hospit      = hospit;
 }