public ActionResult AJOUTERMEMBRE(AddMembreGroup Container)
        {
            if (ModelState.IsValid)
            {
                using (IDAL dal = new Dal())
                {
                    if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "AJOUTER_MEMBRE_GROUPECIBLE"))
                    {
                        List <DOSSIER> listeDossier = new List <DOSSIER>();
                        GROUPECIBLE    groupe       = dal.ObtenirGroupeCibleParId(Container.IdGroupe);
                        if (groupe != null)
                        {
                            LIAISONDOSSIERGROUPECIBLE ldgc = new LIAISONDOSSIERGROUPECIBLE();
                            if (Container.IdsMembresAAjouter != null)
                            {
                                foreach (var m in Container.IdsMembresAAjouter)
                                {
                                    if (!String.IsNullOrEmpty(m))
                                    {
                                        DOSSIER d = dal.ObtenirDossierParId(m);
                                        if (d != null)
                                        {
                                            if (!dal.VerifierPresenceActiveDossierGroupe(d, groupe))
                                            {
                                                ldgc.Dossier         = d;
                                                ldgc.GC              = groupe;
                                                ldgc.DateIntegration = DateTime.Now;
                                                ldgc.Actif           = true;
                                                dal.EnregistrerLiaisonDossierGroupeCible(ldgc);
                                            }
                                        }
                                    }
                                }
                            }

                            return(RedirectToAction("CONSULTERINFOSGROUPECIBLE", new { id = CRYPTAGE.StringHelpers.Decrypt(groupe.GroupeCibleID) }));
                        }
                    }

                    else
                    {
                        ViewBag.ErrorMessage = dal.getErrorMessageFailedAuthorization();
                        return(View("Error"));
                    }
                }
            }

            return(View("Error"));
        }
        public ActionResult ENREGISTRERFACTURE(String Id)
        {
            using (IDAL dal = new Dal())
            {
                if (dal.VerifierAccesParUtilisateurIdParPrivilegePeut(HttpContext.User.Identity.Name, "ENREGISTRER_FACTURE"))
                {
                    FactureVM factureVM = new FactureVM();

                    DOSSIER dossierPatient = dal.ObtenirDossierParId(CRYPTAGE.StringHelpers.Encrypt(Id));
                    if (dossierPatient != null)
                    {
                        factureVM.DossierID   = CRYPTAGE.StringHelpers.Decrypt(dossierPatient.DossierID);
                        factureVM.CodeDossier = CRYPTAGE.StringHelpers.Decrypt(dossierPatient.Code);
                        factureVM.Patient     = CRYPTAGE.StringHelpers.Decrypt(dossierPatient.Patient.Nom) + " " + CRYPTAGE.StringHelpers.Decrypt(dossierPatient.Patient.Prenom);

                        UTILISATEUR u = dal.ObtenirUtilisateurParId(HttpContext.User.Identity.Name);
                        if (u != null)
                        {
                            factureVM.NomCaissier = CRYPTAGE.StringHelpers.Decrypt(u.Personne.Nom) + " " + CRYPTAGE.StringHelpers.Decrypt(u.Personne.Prenom);
                            factureVM.CaissierID  = CRYPTAGE.StringHelpers.Decrypt(u.UtilisateurID);
                        }
                    }

                    List <PRODUIT>   ListeProduits  = dal.ObtenirTousLesProduits();
                    List <ProduitVM> ListeProduitVM = new List <ProduitVM>();

                    if (ListeProduits.Count > 0)
                    {
                        ProduitVM pVM;
                        foreach (var p in ListeProduits)
                        {
                            pVM = new ProduitVM();
                            pVM = dal.ConvertirProduitProduitVM(p);
                            ListeProduitVM.Add(pVM);
                        }
                    }
                    factureVM.ListeProduits = ListeProduitVM;

                    return(View("FormulaireAjoutFacture", factureVM));
                }
                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"));
                }
            }
        }