public ActionResult ENREGISTREREXAMENMEDICAL(ExamenMedicalVM EMVM)
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "ENREGISTRER_EXAMEN_MEDICAL"))
                {
                    if (ModelState.IsValid)
                    {
                        EXAMENMEDICAL examenMedical = new EXAMENMEDICAL();

                        examenMedical.Code        = EMVM.Code;
                        examenMedical.Description = EMVM.Description;
                        examenMedical.Libelle     = EMVM.Libele;
                        examenMedical.ExamenType  = dal.ObtenirExamenTypeParId(EMVM.ExamenTypeId);

                        dal.EnregistrerExamenMedical(examenMedical);

                        return(RedirectToAction("CONULTERLISTEEXAMENMEDICAUX"));
                    }
                    return(RedirectToAction("ENREGISTREREXAMENMEDICAL"));
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }
 public ActionResult ENREGISTREREXAMENMEDICAL()
 {
     using (IDAL dal = new Dal())
     {
         if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "ENREGISTRER_EXAMEN_MEDICAL"))
         {
             ExamenMedicalVM EMVM = new ExamenMedicalVM();
             ViewBag.ListeExamenType = dal.ObtenirTousLesExamenTypes();
             return(View("FormulaireAjoutExamenMedical", EMVM));
         }
         else
         {
             ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
             return(View("Error"));
         }
     }
 }
        public ActionResult CONSULTEREXAMENMEDICAL(String Id)
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "CONSULTER_EXAMEN_MEDICAL"))
                {
                    ExamenMedicalVM EMVM          = new ExamenMedicalVM();
                    EXAMENMEDICAL   examenMedical = dal.ObtenirExamenMedicalParId(CRYPTAGE.StringHelpers.Encrypt(Id));
                    EMVM = dal.ConvertirExamenMedicalExamenMedicalVM(examenMedical);

                    return(View("ConsulterExamenMedical", EMVM));
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }
        public ActionResult ENREGISTREREXAMEN(String Id)
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "ENREGISTRER_EXAMEN"))
                {
                    DIAGNOSTIC Diagnostic = dal.ObtenirDiagnosticParId(CRYPTAGE.StringHelpers.Encrypt(Id));

                    if (Diagnostic != null)
                    {
                        DOSSIER Dossier = dal.ObtenirDossierParId(Diagnostic.Dossier.DossierID);

                        if (Dossier != null)
                        {
                            UTILISATEUR Medecin = dal.ObtenirUtilisateurParId(HttpContext.User.Identity.Name);
                            if (Medecin != null)
                            {
                                ExamenVM EVM = new ExamenVM();
                                EVM.DiagnosticId = Diagnostic.DiagnosticId;
                                EVM.Medecin      = CRYPTAGE.StringHelpers.Decrypt(Medecin.Personne.Nom) + " " + CRYPTAGE.StringHelpers.Decrypt(Medecin.Personne.Prenom);
                                EVM.Patient      = CRYPTAGE.StringHelpers.Decrypt(Dossier.Patient.Nom) + " " + CRYPTAGE.StringHelpers.Decrypt(Dossier.Patient.Prenom);
                                EVM.DossierId    = Dossier.DossierID;
                                EVM.CodeDossier  = CRYPTAGE.StringHelpers.Decrypt(Dossier.Code);
                                EVM.MedecinId    = Medecin.UtilisateurID;

                                List <EXAMENMEDICAL>   TempListeExamenMedical = dal.ObtenirTousLesExamenMedicaux();
                                List <ExamenMedicalVM> ListeExamenMedicalVM   = new List <ExamenMedicalVM>();
                                ExamenMedicalVM        examMedicalVM;

                                foreach (var examMedical in TempListeExamenMedical)
                                {
                                    examMedicalVM = new ExamenMedicalVM();
                                    ListeExamenMedicalVM.Add(dal.ConvertirExamenMedicalExamenMedicalVM(examMedical));
                                }

                                EVM.Examens = ListeExamenMedicalVM;

                                ViewBag.ListeExamenType = dal.ObtenirTousLesExamenTypes();
                                ViewBag.ListeService    = dal.ObtenirTousLesServices();

                                return(View("FormulaireAjoutExamen", EVM));
                            }
                            else
                            {
                                ViewBag.ErrorMessage = "Veuillez séléctionner un Médecin svp.";
                                return(View("Error"));
                            }
                        }
                        else
                        {
                            ViewBag.ErrorMessage = "Veuillez séléctionner un Dossier Patient svp.";
                            return(View("Error"));
                        }
                    }
                    else
                    {
                        ViewBag.ErrorMessage = "Veuillez séléctionner un Diagnostic ayant declenché cet examen médical svp.";
                        return(View("Error"));
                    }
                }
                else
                {
                    ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                    return(View("Error"));
                }
            }
        }