private void grdListeEnseignant_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (grdListeEnseignant.SelectedIndex != -1)
            {
                etat = 1;
                EnseignantBE enseignant = new EnseignantBE();

                enseignant = creerModifierEnseignantBL.rechercherEnseignant(ListeEnseignants.ElementAt(grdListeEnseignant.SelectedIndex));
                // on charge les informations dans le formulaire
                //txtCode.Text = enseignant.id;
                txtCodeProf.Text     = enseignant.codeProf;
                txtNom.Text          = enseignant.nomProf;
                dpkdateNaiss.Text    = Convert.ToString(enseignant.dateNaissance);
                txtTel.Text          = enseignant.tel;
                txtEmail.Text        = enseignant.email;
                txtVille.Text        = enseignant.ville;
                dpkDateEmbauche.Text = Convert.ToString(enseignant.dateEmbauche);
                dpkDateDepart.Text   = Convert.ToString(enseignant.dateDepart);

                cmbStatut.Text = enseignant.statut;

                try
                {
                    photo           = enseignant.photo;
                    imgPhoto.Source = new BitmapImage(new Uri(ConnexionUI.DOSSIER_PHOTO + enseignant.photo));
                }
                catch (Exception) { imgPhoto.Source = null; }

                ancienEnseignant = enseignant;

                grdListeEnseignant.UnselectAll();
            }
        }
Ejemplo n.º 2
0
 // supprimer une Enseignant
 public bool supprinerEnseignant(EnseignantBE enseignant)
 {
     if (enseignantDA.supprimer(enseignant))
     {
         journalDA.journaliser("suppression de l'enseignant de code " + enseignant.codeProf + " et de nom " + enseignant.nomProf);
         return(true);
     }
     return(false);
 }
Ejemplo n.º 3
0
 // modifier une Enseignant
 public bool modifierEnseignant(EnseignantBE enseignant)
 {
     if (enseignantDA.modifier(enseignant))
     {
         journalDA.journaliser("modification de l'enseignant de code " + enseignant.codeProf + ". nouveau nom : " + enseignant.nomProf);
         return(true);
     }
     return(false);
 }
 private void cmbEnseignant_DropDownClosed(object sender, EventArgs e)
 {
     if (cmbEnseignant.Text != null && cmbEnseignant.Text != "")
     {
         string nommat = cmbEnseignant.Text;
         txtMatricule.Text   = nommat.Split('-')[0].Trim();
         enseignant.codeProf = nommat.Split('-')[0].Trim();
         enseignant          = notificationBL.rechercherEnseignant(enseignant);
     }
 }
Ejemplo n.º 5
0
        //-----------fin compter -------------------------------------------------

        // retourne la liste des enseignants d'une classe pour une année
        public List <EnseignantBE> listeEnseignants(ClasseBE classe, int annee)
        {
            List <EnseignantBE> list = new List <EnseignantBE>();
            string   codeprof;
            string   nomprof;
            DateTime dateNaiss;
            String   telephone;
            String   email;
            String   ville;
            DateTime dateEmbauche;
            DateTime dateDepart;

            EnseignantBE e;

            try
            {
                // Création d'une commande SQL
                MySqlCommand cmd = con.connexion.CreateCommand();
                cmd.CommandText = "SELECT DISTINCT e.codeprof, e.nomprof, e.datenais, e.tel, e.email, e.ville, e.dateembauche, e.datedepart FROM Enseignant e, "
                                  + " Programmer p, Classe c WHERE p.codeprof = e.codeprof AND p.codeclasse = c.codeclasse AND c.codeclasse = @codeClasse AND p.annee = @annee"
                                  + " ORDER BY e.nomprof";

                cmd.Parameters.AddWithValue("@codeClasse", classe.codeClasse);
                cmd.Parameters.AddWithValue("@annee", annee);

                using (MySqlDataReader dataReader = cmd.ExecuteReader())
                {
                    //fabriquer l'objet à retourner
                    while (dataReader.Read())
                    {
                        codeprof     = Convert.ToString(dataReader["codeprof"]);
                        nomprof      = Convert.ToString(dataReader["nomprof"]);
                        dateNaiss    = Convert.ToDateTime(dataReader["datenais"]);
                        email        = Convert.ToString(dataReader["email"]);
                        ville        = Convert.ToString(dataReader["ville"]);
                        telephone    = Convert.ToString(dataReader["tel"]);
                        dateEmbauche = Convert.ToDateTime(dataReader["DATEEMBAUCHE"]);
                        dateDepart   = Convert.ToDateTime(dataReader["DATEDEPART"]);

                        e = new EnseignantBE(codeprof, nomprof, dateNaiss, telephone, email, ville, dateEmbauche, dateDepart);
                        list.Add(e);
                    }
                    dataReader.Close();

                    return(list);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(null);
            }
        }
Ejemplo n.º 6
0
        //creer une Enseignant
        public bool creerEnseignant(string codeEnseignant, string nomEnseignant, DateTime dateNaiss, String tel, String email, String ville, DateTime dateEmbauche, DateTime dateDepart, String statut, String photo)
        {
            EnseignantBE enseignant = new EnseignantBE(codeEnseignant, nomEnseignant, dateNaiss, tel, email, ville, dateEmbauche, dateDepart);

            enseignant.statut = statut;
            enseignant.photo  = photo;

            if (enseignantDA.ajouter(enseignant))
            {
                journalDA.journaliser("enregistrement d'un enseignant de code " + codeEnseignant + " et de nom " + nomEnseignant);
                return(true);
            }
            return(false);
        }
        // Fonction permettant de remplir le DataGrid avec les informations de la base de données
        // @param : - listObjet : la liste des objets à afficher dans le DataGrid
        public void RemplirDataGrid(List <DirigerBE> listObjet)
        {
            // Ajout de données dans la DataTable :
            var table = new DataTable();

            table.Columns.Add(new DataColumn("codeClasse", typeof(string)));
            table.Columns.Add(new DataColumn("codeProf", typeof(string)));
            table.Columns.Add(new DataColumn("annee", typeof(string)));
            table.Columns.Add(new DataColumn("enseignant", typeof(EnseignantBE)));

            if (listObjet != null)
            {
                for (int i = 0; i < listObjet.Count; i++)
                {
                    DataRow dr = table.NewRow();
                    dr["codeClasse"] = listObjet.ElementAt(i).codeClasse;
                    dr["codeProf"]   = listObjet.ElementAt(i).codeProf;
                    dr["annee"]      = listObjet.ElementAt(i).annee;
                    dr["enseignant"] = listObjet.ElementAt(i).enseignant;

                    table.Rows.Add(dr);
                }
            }

            string       vCodeClasse = "";
            string       vCodeProf   = "";
            int          annee       = Convert.ToInt16(System.DateTime.Today.Year);
            EnseignantBE enseignant  = new EnseignantBE();

            ListeTitulaires.Clear();

            foreach (DataRow row in table.Rows)
            {
                vCodeClasse = Convert.ToString(row["codeClasse"]);
                vCodeProf   = Convert.ToString(row["codeProf"]);
                annee       = Convert.ToInt16(row["annee"]);
                enseignant  = (EnseignantBE)row["enseignant"];
                DirigerBE diriger = new DirigerBE();
                diriger.codeClasse = vCodeClasse;
                diriger.codeProf   = vCodeProf;
                diriger.annee      = annee;
                diriger.enseignant = enseignant;

                ListeTitulaires.Add(diriger);
            }

            grdListeTitulaire.ItemsSource = ListeTitulaires;
        }
        public string obtenirProfTitulaire(string p, int annee)
        {
            string       codeprof   = classeDA.getCodeProfTitulaireDuneClasse(p, annee);
            EnseignantBE enseignant = new EnseignantBE();

            enseignant.codeProf = codeprof;
            enseignant          = enseignantDA.rechercher(enseignant);
            if (enseignant != null)
            {
                return(enseignant.nomProf);
            }
            else
            {
                return("");
            }
        }
        private void txtAnneeScolaire_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.Key == Key.Enter)
            {
                List <DirigerBE> LDirigerBE = new List <DirigerBE>();

                LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + txtAnnee.Text + "'");

                // on charge les infos sur les enseignants
                for (int i = 0; i < LDirigerBE.Count; i++)
                {
                    EnseignantBE enseignant = new EnseignantBE();
                    enseignant.codeProf = LDirigerBE.ElementAt(i).codeProf;
                    LDirigerBE.ElementAt(i).enseignant = titularisationEnseignantBL.rechercherEnseignant(enseignant);
                }
                // on met la liste "LSerieBE" dans le DataGrid
                RemplirDataGrid(LDirigerBE);
                //grdListeTitulaire.ItemsSource = LDirigerBE;
            }
        }
        public WindowAddEditEnseignantUI()
        {
            CultureInfo ci = CultureInfo.CreateSpecificCulture(CultureInfo.CurrentCulture.Name);

            ci.DateTimeFormat.ShortDatePattern  = "dd-MM-yyyy";
            Thread.CurrentThread.CurrentCulture = ci;

            InitializeComponent();

            creerModifierEnseignantBL = new CreerModifierEnseignantBL();

            ancienEnseignant = new EnseignantBE();

            etat = 0;

            // Initialisation de la collection, qui va s'afficher dans la DataGrid :
            ListeEnseignants = new ObservableCollection <EnseignantBE>();
            List <EnseignantBE> LEnseignantBE = creerModifierEnseignantBL.listerTousLesEnseignants();

            dpkDateEmbauche.Text = Convert.ToString(System.DateTime.Today.Date);
            dpkdateNaiss.Text    = Convert.ToString(System.DateTime.Today.Date);

            // on met la liste "LSerieBE" dans le DataGrid
            RemplirDataGrid(LEnseignantBE);

            //-------------MOI----------------------------------------------------
            txtCodeProf.IsEnabled = false;
            txtCodeProf.Text      = nouveauMatricule(creerModifierEnseignantBL.getDernierMatricule());
            //--------------------------------------------------------------------

            List <String> ListStatut = new List <String>();

            ListStatut.Add("Permanent");
            ListStatut.Add("Vacataire");
            cmbStatut.ItemsSource = ListStatut;
            cmbStatut.Text        = ListStatut.ElementAt(0);

            photo = ""; //Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\PhotosEnseignants\\default.jpg";
        }
Ejemplo n.º 11
0
        private void AfficherProgramme()
        {
            LigneProgramme ligne;
            MatiereBE      matiere;
            EnseignantBE   enseignant;

            programmes = new List <ProgrammerBE>();
            lignes     = new List <LigneProgramme>();

            if (validerFormulaire() != false)
            {
                programmes = programmeBL.listerSuivantCritereProgrammer("codeclasse = " + "'" + cmbClasse.SelectedValue.ToString() + "' AND annee = " + "'" + annee + "'");
                if (programmes != null)
                {
                    foreach (ProgrammerBE p in programmes)
                    {
                        matiere             = new MatiereBE();
                        matiere.codeMat     = p.codematiere;
                        matiere             = programmeBL.rechercherMatiere(matiere);
                        enseignant          = new EnseignantBE();
                        enseignant.codeProf = p.codeprof;
                        enseignant          = programmeBL.rechercherEnseignant(enseignant);
                        ligne = new LigneProgramme(matiere.nomMat, p.coef, enseignant.nomProf);
                        lignes.Add(ligne);
                    }
                    if (radioAvecProf.IsChecked == true)
                    {
                        grdProgrammes.Columns[2].Visibility = Visibility.Visible;
                    }
                    else if (radioSansProf.IsChecked == true)
                    {
                        grdProgrammes.Columns[2].Visibility = Visibility.Hidden;
                    }

                    grdProgrammes.ItemsSource = lignes;
                    grdProgrammes.Items.Refresh();
                }
            }
        }
        public ConvocationProfUC()
        {
            InitializeComponent();

            notificationBL = new GestionNotificationBL();
            //chkEmail.IsChecked = true;
            nbcaracteres = 0;
            //chkSMS.IsChecked = true;
            annee       = notificationBL.anneeEnCours();
            enseignant  = new EnseignantBE();
            enseignants = new List <string>();
            List <EnseignantBE> professeurs = notificationBL.listerToutEnseignants();

            if (professeurs != null)
            {
                foreach (EnseignantBE e in professeurs)
                {
                    enseignants.Add(e.codeProf + " - " + e.nomProf);
                }
            }
            cmbEnseignant.ItemsSource = enseignants;
            cmbEnseignant.Items.Refresh();
            lblStatut.Content = GestionNotificationBL.INFORMATIONS_NON_VALIDEES;
        }
        private void grdListeTitulaire_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (grdListeTitulaire.SelectedIndex != -1)
            {
                etat = 1;
                DirigerBE diriger = new DirigerBE();
                diriger = titularisationEnseignantBL.rechercherTitularisation(ListeTitulaires.ElementAt(grdListeTitulaire.SelectedIndex));

                // on charge les informations dans le formulaire
                cmbClasse.Text = diriger.codeClasse;

                txtAnnee.Text         = Convert.ToString(diriger.annee);
                txtAnneeScolaire.Text = Convert.ToString(diriger.annee - 1);

                //on cherche les infos ur l'enseignant
                EnseignantBE enseignant = new EnseignantBE();
                enseignant.codeProf = ListeTitulaires.ElementAt(grdListeTitulaire.SelectedIndex).codeProf;
                enseignant          = titularisationEnseignantBL.rechercherEnseignant(enseignant);
                cmbTitulaire.Text   = enseignant.codeProf + " - " + enseignant.nomProf;
                oldDiriger          = diriger;

                grdListeTitulaire.UnselectAll();
            }
        }
Ejemplo n.º 14
0
        public void genererBulletinTrimestrielDunEleve(Document doc, CreerEtat etat, PdfWriter writer, String matricule, int annee, String codeClasse, String codetrimestre, string photo)
        {
            List <LigneBulletinTrimestriel> ListLigneBulletinTrimestriel = resultatTrimestrielDA.genererBulletinTrimestrielDunEleve(matricule, annee, codeClasse, codetrimestre);

            TrimestreBE trimestre = new TrimestreBE();

            trimestre.codetrimestre = codetrimestre;
            trimestre = trimestreDA.rechercher(trimestre);
            EleveBE elv = new EleveBE();

            elv.matricule = matricule;

            BulletinTrimestriel bulletinTrimestriel = new BulletinTrimestriel();

            bulletinTrimestriel.eleve = eleveDA.rechercher(elv);
            string nom;

            if (bulletinTrimestriel.eleve.nom.Length > 50)
            {
                nom = bulletinTrimestriel.eleve.nom.Substring(0, 49);
            }
            else
            {
                nom = bulletinTrimestriel.eleve.nom;
            }

            ClasseBE classe = new ClasseBE();

            classe.codeClasse = codeClasse;

            bulletinTrimestriel.classe = classeDA.rechercher(classe);

            bulletinTrimestriel.annee = annee;

            //on recherche le nombre de séquence du trimestre
            bulletinTrimestriel.nbSequence = trimestreDA.getNombreSequenceDunTrimestre(codetrimestre);
            bulletinTrimestriel.listLigneBulletinTrimestriel = ListLigneBulletinTrimestriel;
            //on liste les résultats trimestriels de l'élève pour l'année
            List <ResultatTrimestrielBE> ListResultatsTrimestriel = resultatTrimestrielDA.listerSuivantCritere("annee = '" + annee + "' AND codeTrimestre = '" + codetrimestre + "' AND matricule = '" + matricule + "'");

            if (ListResultatsTrimestriel != null && ListResultatsTrimestriel.Count != 0)
            {
                bulletinTrimestriel.resultattrimestriel = ListResultatsTrimestriel.ElementAt(0);
            }

            //on charge les moyennes Trimestrielles min et max des élèves de la classe choisit
            bulletinTrimestriel.moyenneMin = resultatTrimestrielDA.getMoynenneTrimestrielleMinimaleDuneClasse(codeClasse, codetrimestre, annee);
            bulletinTrimestriel.moyenneMax = resultatTrimestrielDA.getMoynenneTrimestrielleMaximaleDuneClasse(codeClasse, codetrimestre, annee);

            //on Charge la liste des code de séquence du trimestre
            List <String> ListCodeSequence = trimestreDA.getListCodeSequenceDunTrimestre(codetrimestre);

            // on recherche l'effectif de la classe
            int effectifClasse = classeDA.getEffectifClasse(codeClasse, annee);

            //on recherche le professeur titulaire de la classe
            String codeProf = classeDA.getCodeProfTitulaireDuneClasse(codeClasse, annee);

            EnseignantBE profTitulaire = new EnseignantBE();

            if (codeProf != null)
            {
                profTitulaire.codeProf = codeProf;
                profTitulaire          = enseignantDA.rechercher(profTitulaire);
            }

            //on charge les infos sur les paramètres
            ParametresBE parametre = parametresDA.getParametre();

            //************************ on charge les disciplines de l'élève
            bulletinTrimestriel.ListSanction = sanctionnerDA.getListSanctionTrimestrielleEleve(matricule, annee, codetrimestre);

            //liste des moyennes sequentielles du gar
            Dictionary <List <string>, List <double> > moyennesSequentielles = new Dictionary <List <string>, List <double> >();

            moyennesSequentielles = resultatDA.listeResultatsSequentielEleve(matricule, annee);

            etat.etatBulletinTrimestrielEleve(doc, writer, bulletinTrimestriel, ListCodeSequence, effectifClasse, profTitulaire, parametre, photo, moyennesSequentielles);

            journalDA.journaliser("génération du bulletin Trimestriel ( trimestre " + codetrimestre + ") de l'élève de matricule " + matricule);
        }
        private void cmdEnregistrer_Click(object sender, RoutedEventArgs e)
        {
            if ((txtCodeProf.Text != null && txtNom.Text != null && txtTel.Text != null && cmbStatut.Text != null) &&
                (txtCodeProf.Text != "" && txtNom.Text != "" && txtTel.Text != "" && cmbStatut.Text != ""))
            {
                EnseignantBE enseignant = new EnseignantBE();
                enseignant.codeProf      = txtCodeProf.Text;
                enseignant.nomProf       = txtNom.Text;
                enseignant.dateNaissance = Convert.ToDateTime(dpkdateNaiss.Text);

                enseignant.tel          = txtTel.Text;
                enseignant.email        = txtEmail.Text;
                enseignant.ville        = txtVille.Text;
                enseignant.dateEmbauche = Convert.ToDateTime(dpkDateEmbauche.Text);
                enseignant.statut       = cmbStatut.Text;

                //copie de la photo de l'enseignant
                try
                {
                    string destfile = System.IO.Path.Combine(ConnexionUI.DOSSIER_PHOTO, enseignant.codeProf + "." + photo.Split('.')[1]);
                    System.IO.File.Copy(photo, destfile, true);
                    photo            = enseignant.codeProf + "." + photo.Split('.')[1];
                    enseignant.photo = photo;
                }
                catch (Exception)
                {
                    photo            = "";
                    enseignant.photo = "";
                }

                if (dpkDateDepart.Text == null || dpkDateDepart.Text == "")
                {
                    enseignant.dateDepart = Convert.ToDateTime(null);
                }
                else
                {
                    enseignant.dateDepart = Convert.ToDateTime(dpkDateDepart.Text);
                }

                if (etat == 1)
                {
                    creerModifierEnseignantBL.modifierEnseignant(ancienEnseignant, enseignant);
                    List <EnseignantBE> LEnseignantBE = creerModifierEnseignantBL.listerTousLesEnseignants();
                    // on met la liste "listeEnseignant" dans le DataGrid
                    RemplirDataGrid(LEnseignantBE);
                    txtCodeProf.Text = "";
                    txtNom.Text      = "";
                    //dpkdateNaiss.Text = null;
                    txtTel.Text   = "";
                    txtEmail.Text = "";
                    txtVille.Text = "";
                    //dpkDateEmbauche.Text = null;
                    //dpkDateEmbauche.Text = Convert.ToString(System.DateTime.Today.Date);
                    //dpkDateDepart.Text = null;
                    //cmbStatut.Text = "";
                    imgPhoto.Source = null;
                    etat            = 0;

                    //-------------MOI----------------------------------------------------
                    txtCodeProf.Text = nouveauMatricule(creerModifierEnseignantBL.getDernierMatricule());
                    //--------------------------------------------------------------------
                }
                else if (creerModifierEnseignantBL.rechercherEnseignant(enseignant) == null)
                {
                    if (creerModifierEnseignantBL.creerEnseignant(txtCodeProf.Text, txtNom.Text, Convert.ToDateTime(dpkdateNaiss.SelectedDate), txtTel.Text, txtEmail.Text, txtVille.Text, Convert.ToDateTime(dpkDateEmbauche.SelectedDate), Convert.ToDateTime(dpkDateDepart.SelectedDate), cmbStatut.Text, enseignant.photo))
                    {
                        MessageBox.Show("Opération réussie");
                        txtCodeProf.Text = "";
                        txtNom.Text      = "";
                        //dpkdateNaiss.Text = null;
                        txtTel.Text   = "";
                        txtEmail.Text = "";
                        txtVille.Text = "";

                        //dpkDateEmbauche.Text = null;
                        //dpkDateEmbauche.Text = Convert.ToString(System.DateTime.Today.Date);

                        //dpkDateDepart.Text = null;

                        //cmbStatut.Text = "";
                        imgPhoto.Source = null;

                        // Initialisation de la collection, qui va s'afficher dans la DataGrid :
                        List <EnseignantBE> LEnseignantBE = creerModifierEnseignantBL.listerTousLesEnseignants();
                        // on met la liste "LEnseignantBE" dans le DataGrid
                        RemplirDataGrid(LEnseignantBE);

                        //-------------MOI----------------------------------------------------
                        txtCodeProf.Text = nouveauMatricule(creerModifierEnseignantBL.getDernierMatricule());
                        //--------------------------------------------------------------------
                    }
                    else
                    {
                        MessageBox.Show("Echec enregistrement : une erreure est survenue !");
                    }
                }
                else
                {
                    MessageBox.Show("Cet enseignant existe deja dans le système  !");
                }
            }
            else
            {
                MessageBox.Show("Tous les champs marqués par un Astérix '(*)' doivent êtres remplis !");
            }
        }
Ejemplo n.º 16
0
 // rechercher une Enseignant
 public EnseignantBE rechercherEnseignant(EnseignantBE enseignant)
 {
     return(enseignantDA.rechercher(enseignant));
 }
        //méthode qui génère le bulletin Annuel d'un élève
        public void genererBulletinAnnuelDunEleve(String matricule, int annee, String codeClasse, string photo)
        {
            List <LigneBulletinAnnuel> ListLigneBulletinAnnuel = resultatAnnuelDA.genererBulletinAnnuelDunEleve(matricule, annee, codeClasse);


            BulletinAnnuel bulletinAnnuel = new BulletinAnnuel();
            EleveBE        elv            = new EleveBE();

            elv.matricule = matricule;

            bulletinAnnuel.eleve = eleveDA.rechercher(elv);
            CreerEtat etat = new CreerEtat();
            string    nom;

            if (bulletinAnnuel.eleve.nom.Length > 50)
            {
                nom = bulletinAnnuel.eleve.nom.Substring(0, 49);
            }
            else
            {
                nom = bulletinAnnuel.eleve.nom;
            }
            etat.docname = ConnexionUI.DOSSIER_BULLETINS + annee + "-" + codeClasse + "-" + nom + ".pdf";
            etat.title   = "BULLETIN ANNUEL";

            ClasseBE classe = new ClasseBE();

            classe.codeClasse = codeClasse;

            bulletinAnnuel.classe = classeDA.rechercher(classe);

            bulletinAnnuel.annee = annee;

            //on recherche le nombre de trimestre de l'année
            bulletinAnnuel.nbTrimestre = trimestreDA.getNombreTrimestre();

            //on recherche le nombre de séquence de l'année
            bulletinAnnuel.nbSequence = sequenceDA.getNombreSequence();

            bulletinAnnuel.listLigneBulletinAnnuel = ListLigneBulletinAnnuel;
            //on liste les résultats Annuels de l'élève pour l'année
            List <ResultatAnnuelBE> ListResultatsAnnuel = resultatAnnuelDA.listerSuivantCritere("annee = '" + annee + "' AND matricule = '" + matricule + "'");

            if (ListResultatsAnnuel != null && ListResultatsAnnuel.Count != 0)
            {
                bulletinAnnuel.resultatannuel = ListResultatsAnnuel.ElementAt(0);
            }

            //on charge les moyennes Annuelles min et max des élèves de la classe choisit
            bulletinAnnuel.moyenneMin = resultatAnnuelDA.getMoynenneAnnuelleMinimaleDuneClasse(codeClasse, annee);
            bulletinAnnuel.moyenneMax = resultatAnnuelDA.getMoynenneAnnuelleMaximaleDuneClasse(codeClasse, annee);

            //on Charge la liste des code de trimestre de l'année
            //List<TrimestreBE> LTrimestre = trimestreDA.listerTous();
            List <String> ListCodeSequence = sequenceDA.getListCodeSequence();
            //List<String> ListCodeTrimestre = getListCodeTrimestre(LTrimestre);

            //************************ on charge les disciplines de l'élève

            // on recherche l'effectif de la classe
            int effectifClasse = classeDA.getEffectifClasse(codeClasse, annee);

            //on recherche le professeur titulaire de la classe
            String codeProf = classeDA.getCodeProfTitulaireDuneClasse(codeClasse, annee);

            EnseignantBE profTitulaire = new EnseignantBE();

            if (codeProf != null)
            {
                profTitulaire.codeProf = codeProf;
                profTitulaire          = enseignantDA.rechercher(profTitulaire);
            }

            //on charge les infos sur les paramètres
            ParametresBE parametre = parametresDA.getParametre();

            //************************ on charge les disciplines de l'élève
            bulletinAnnuel.ListSanction = sanctionnerDA.getListSanctionAnuelleEleve(matricule, annee);

            etat.etatBulletinAnnuelEleve(bulletinAnnuel, ListCodeSequence, effectifClasse, profTitulaire, parametre, codeClasse, photo);

            journalDA.journaliser("génération du bulletin annuel (" + annee + ") de l'élève de matricule " + matricule);
        }
        // Fonction permettant de remplir le DataGrid avec les informations de la base de données
        // @param : - listObjet : la liste des objets à afficher dans le DataGrid
        public void RemplirDataGrid(List <EnseignantBE> listObjet)
        {
            CultureInfo ci = CultureInfo.CreateSpecificCulture(CultureInfo.CurrentCulture.Name);

            ci.DateTimeFormat.ShortDatePattern  = "yyyy-MM-dd";
            Thread.CurrentThread.CurrentCulture = ci;

            dpkDateDepart.Text = System.DateTime.Now.ToString();

            // Ajout de données dans la DataTable :
            var table = new DataTable();

            table.Columns.Add(new DataColumn("codeprof", typeof(string)));
            table.Columns.Add(new DataColumn("nomProf", typeof(string)));
            table.Columns.Add(new DataColumn("dateNaissance", typeof(string)));
            table.Columns.Add(new DataColumn("dateNaissanceString", typeof(string)));
            table.Columns.Add(new DataColumn("tel", typeof(string)));
            table.Columns.Add(new DataColumn("email", typeof(string)));
            table.Columns.Add(new DataColumn("ville", typeof(string)));

            table.Columns.Add(new DataColumn("dateEmbauche", typeof(string)));
            table.Columns.Add(new DataColumn("dateDepart", typeof(string)));
            table.Columns.Add(new DataColumn("dateEmbaucheString", typeof(string)));
            table.Columns.Add(new DataColumn("dateDepartString", typeof(string)));
            table.Columns.Add(new DataColumn("statut", typeof(string)));

            if (listObjet != null)
            {
                for (int i = 0; i < listObjet.Count; i++)
                {
                    DataRow dr = table.NewRow();
                    dr["codeprof"]            = listObjet.ElementAt(i).codeProf;
                    dr["nomProf"]             = listObjet.ElementAt(i).nomProf;
                    dr["dateNaissance"]       = listObjet.ElementAt(i).dateNaissance;
                    dr["dateNaissanceString"] = listObjet.ElementAt(i).dateNaissanceString;
                    dr["tel"]   = listObjet.ElementAt(i).tel;
                    dr["email"] = listObjet.ElementAt(i).email;
                    dr["ville"] = listObjet.ElementAt(i).ville;

                    dr["dateEmbauche"] = listObjet.ElementAt(i).dateEmbauche;
                    dr["dateDepart"]   = listObjet.ElementAt(i).dateDepart;

                    dr["dateEmbaucheString"] = listObjet.ElementAt(i).dateEmbaucheString;
                    dr["dateDepartString"]   = listObjet.ElementAt(i).dateDepartString;

                    dr["statut"] = listObjet.ElementAt(i).statut;

                    table.Rows.Add(dr);
                }
            }

            string vCodeprof  = txtCodeProf.Text;
            string vNom       = "";
            string vDateNaiss = "";
            string vTel       = "";
            string vEmail     = "";
            string vVille     = "";

            string vDateEmbauche = "";
            string vDateDepart   = "";
            string vStatut       = "";

            ListeEnseignants.Clear();

            //Personnes_Table = LoadDataTable();

            foreach (DataRow row in table.Rows)
            {
                vCodeprof  = Convert.ToString(row["codeprof"]);
                vNom       = Convert.ToString(row["nomProf"]);
                vDateNaiss = Convert.ToString(row["dateNaissance"]);
                vTel       = Convert.ToString(row["tel"]);
                vEmail     = Convert.ToString(row["email"]);
                vVille     = Convert.ToString(row["ville"]);

                vDateEmbauche = Convert.ToString(row["dateEmbauche"]);
                vDateDepart   = Convert.ToString(row["dateDepart"]);
                vStatut       = Convert.ToString(row["statut"]);

                EnseignantBE enseignant = new EnseignantBE(vCodeprof, vNom, Convert.ToDateTime(vDateNaiss), vTel, vEmail, vVille, Convert.ToDateTime(vDateEmbauche), Convert.ToDateTime(vDateDepart));
                enseignant.statut = vStatut;

                ListeEnseignants.Add(enseignant);
            }

            grdListeEnseignant.ItemsSource = ListeEnseignants;
        }
 internal EnseignantBE rechercherEnseignant(EnseignantBE enseignant)
 {
     return(enseignantDA.rechercher(enseignant));
 }
Ejemplo n.º 20
0
        private void actionToExcecuteOnClick()
        {
            int            annee  = notificationBL.anneeEnCours();
            List <EleveBE> eleves = new List <EleveBE>();

            nb       = 0;
            nbreussi = 0;
            echecs   = new List <Adresse>();
            Dictionary <string, string> mappage       = new Dictionary <string, string>();
            Dictionary <string, string> mappageNumero = new Dictionary <string, string>();

            switch (action)
            {
            case CONVOCATION_PARENT:

                EleveBE eleve = new EleveBE();
                eleve.matricule = convocationParent.matricule;
                eleve           = notificationBL.rechercherEleve(eleve);
                nb       = 1;
                nbreussi = 0;

                string[] adresse = new string[2] {
                    eleve.matricule, eleve.telParent
                };
                Dictionary <string, int> result = new Dictionary <string, int>();

                if (Tools.format_number(eleve.telParent) == "")
                {
                    echecs.Add(new Adresse(eleve.telParent, eleve.nom));
                }
                else
                {
                    nbreussi++;
                    result = notificationBL.envoiSMS(adresse, convocationParent.message);
                }

                break;

            case CONVOCATION_PERSONNEL:
                EnseignantBE prof = new EnseignantBE();
                prof.codeProf = convocationPersonnel.matricule;
                prof          = notificationBL.rechercherEnseignant(prof);
                nb            = 1;
                nbreussi      = 0;

                adresse = new string[2] {
                    prof.codeProf, prof.tel
                };
                result = new Dictionary <string, int>();

                if (Tools.format_number(prof.tel) == "")
                {
                    echecs.Add(new Adresse(prof.tel, prof.nomProf));
                }
                else
                {
                    nbreussi++;
                    result = notificationBL.envoiSMS(adresse, convocationPersonnel.message);
                }

                break;

            case ENVOI_RESULTAT:
                List <string>   sequences       = notificationBL.listerValeurColonneSequence("codeseq");
                List <string>   trimestres      = notificationBL.listerValeurColonneTrimestre("codetrimestre");
                List <string[]> destinataireSMS = new List <string[]>();
                mappage       = new Dictionary <string, string>();
                mappageNumero = new Dictionary <string, string>();

                if (envoiResultat.classe == EnvoyerResultatUC.TOUTE)
                {
                    eleves = notificationBL.listeEleveDuneAnnee(annee);
                }
                else
                {
                    eleves = notificationBL.listeEleveDuneClasse(envoiResultat.classe, annee);
                }
                string message = "";
                if (eleves != null)
                {
                    nb       = eleves.Count;
                    nbreussi = 0;

                    if (sequences.Contains(envoiResultat.periode))
                    {
                        ResultatBE resultat;
                        foreach (EleveBE e in eleves)
                        {
                            resultat = new ResultatBE();
                            resultat = notificationBL.resultatSequentielleEleve(e.matricule, annee, envoiResultat.periode);

                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                message = "L'élève " + e.nom + " a obtenu la note de " + resultat.moyenne
                                          + " pour le compte de la Séquence " + envoiResultat.periode
                                          + " Rang " + resultat.rang
                                          + " Moyenne générale " + resultat.moyenneclasse;

                                destinataireSMS.Add(new string[3] {
                                    e.matricule, e.telParent, message
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }

                    if (trimestres.Contains(envoiResultat.periode))
                    {
                        ResultatTrimestrielBE resultat;
                        foreach (EleveBE e in eleves)
                        {
                            resultat = new ResultatTrimestrielBE();
                            resultat = notificationBL.resultatTrimestrielEleve(e.matricule, annee, envoiResultat.periode);

                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                message = "L'élève " + e.nom + " a obtenu la note de " + resultat.moyenne
                                          + " pour le compte du Trimestre " + envoiResultat.periode
                                          + " Rang " + resultat.rang
                                          + " Moyenne générale " + resultat.moyenneclasse;

                                destinataireSMS.Add(new string[3] {
                                    e.matricule, e.telParent, message
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }

                    if (EnvoyerResultatUC.ANNUEL == envoiResultat.periode)
                    {
                        ResultatAnnuelBE resultat;
                        foreach (EleveBE e in eleves)
                        {
                            resultat = new ResultatAnnuelBE();
                            resultat = notificationBL.resultatAnnuelDunEleve(e.matricule, annee);

                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                message = "L'élève " + e.nom + " a obtenu la note annuelle de " + resultat.moyenne
                                          + " pour le compte de l'année académique : " + (annee - 1) + "/" + annee
                                          + " Rang " + resultat.rang
                                          + " Moyenne générale " + resultat.moyenneclasse;

                                destinataireSMS.Add(new string[3] {
                                    e.matricule, e.telParent, message
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }

                result = new Dictionary <string, int>();
                result = notificationBL.envoiSMS(destinataireSMS);
                //if (result != null)
                //{
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        if (result[element.Key] != 0)
                //            echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }
                //    nbreussi = nb - echecs.Count;
                //}
                //else
                //{
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }
                //}

                break;

            case REUNION:
                destinataireSMS = new List <string[]>();
                mappage         = new Dictionary <string, string>();
                mappageNumero   = new Dictionary <string, string>();
                nbreussi        = 0;
                nb = 0;

                if (ReunionUC.ENSEIGNANT == reunion.concerne)
                {
                    List <EnseignantBE> liste = new List <EnseignantBE>();
                    liste = notificationBL.listerToutEnseignants();
                    if (liste != null)
                    {
                        nb = liste.Count;
                        foreach (EnseignantBE e in liste)
                        {
                            if (Tools.format_number(e.tel) == "")
                            {
                                echecs.Add(new Adresse(e.tel, e.nomProf));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.codeProf, e.tel
                                });
                                mappage.Add(e.codeProf, e.nomProf);
                                mappageNumero.Add(e.codeProf, e.tel);
                            }
                        }
                    }
                }
                else if (ReunionUC.PARENT == reunion.concerne)
                {
                    List <EleveBE> list = new List <EleveBE>();
                    list = notificationBL.listeEleveDuneAnnee(annee);
                    if (list != null)
                    {
                        nb = list.Count;
                        foreach (EleveBE e in list)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }
                else if (ReunionUC.MIXTE == reunion.concerne)
                {
                    List <EnseignantBE> liste = new List <EnseignantBE>();
                    liste = notificationBL.listerToutEnseignants();
                    if (liste != null)
                    {
                        nb = liste.Count;
                        foreach (EnseignantBE e in liste)
                        {
                            if (Tools.format_number(e.tel) == "")
                            {
                                echecs.Add(new Adresse(e.tel, e.nomProf));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.codeProf, e.tel
                                });
                                mappage.Add(e.codeProf, e.nomProf);
                                mappageNumero.Add(e.codeProf, e.tel);
                            }
                        }
                    }
                    List <EleveBE> list = new List <EleveBE>();
                    list = notificationBL.listeEleveDuneAnnee(annee);
                    if (list != null)
                    {
                        nb += list.Count;
                        foreach (EleveBE e in list)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }

                message = reunion.message;
                result  = new Dictionary <string, int>();
                result  = notificationBL.envoiSMS(destinataireSMS, message);

                //if (result != null)
                //{
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        if (result[element.Key] != 0)
                //            echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }
                //    nbreussi = nb - echecs.Count;
                //}
                //else
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }

                break;

            case REUNION_ELEVE:
                destinataireSMS = new List <string[]>();
                eleves          = new List <EleveBE>();
                mappage         = new Dictionary <string, string>();
                mappageNumero   = new Dictionary <string, string>();
                nbreussi        = 0;

                if (ReunionEleveUC.SERIE == reunionEleve.concerne)
                {
                    eleves = notificationBL.listeEleveDuneSerie(reunionEleve.code, annee);
                    if (eleves != null)
                    {
                        foreach (EleveBE e in eleves)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }
                else if (ReunionEleveUC.CYCLE == reunionEleve.concerne)
                {
                    eleves = notificationBL.listeEleveDunCycle(reunionEleve.code, annee);
                    if (eleves != null)
                    {
                        foreach (EleveBE e in eleves)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }
                else if (ReunionEleveUC.NIVEAU == reunionEleve.concerne)
                {
                    eleves = notificationBL.listeEleveDunNiveau(reunionEleve.code, annee);
                    if (eleves != null)
                    {
                        foreach (EleveBE e in eleves)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }
                else if (ReunionEleveUC.CLASSE == reunionEleve.concerne)
                {
                    eleves = notificationBL.listeEleveDuneClasse(reunionEleve.code, annee);
                    if (eleves != null)
                    {
                        foreach (EleveBE e in eleves)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }
                else if (ReunionEleveUC.MIXTE == reunionEleve.concerne)
                {
                    eleves = notificationBL.listeEleveDuneAnnee(annee);
                    if (eleves != null)
                    {
                        foreach (EleveBE e in eleves)
                        {
                            if (Tools.format_number(e.telParent) == "")
                            {
                                echecs.Add(new Adresse(e.telParent, e.nom));
                            }
                            else
                            {
                                nbreussi++;
                                destinataireSMS.Add(new string[2] {
                                    e.matricule, e.telParent
                                });
                                mappage.Add(e.matricule, e.nom);
                                mappageNumero.Add(e.matricule, e.telParent);
                            }
                        }
                    }
                }

                nb     = eleves.Count;
                result = new Dictionary <string, int>();
                result = notificationBL.envoiSMS(destinataireSMS, reunionEleve.message);

                //if (result != null)
                //{
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        if (result[element.Key] != 0)
                //            echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }
                //    nbreussi = nb - echecs.Count;
                //}
                //else
                //    foreach (KeyValuePair<string, string> element in mappage)
                //    {
                //        echecs.Add(new Adresse(mappageNumero[element.Key], element.Value));
                //    }

                break;

            default:
                break;
            }
        }
        public void genererBulletinSequentielDunEleve(Document doc, CreerEtat etat, PdfWriter writer, String matricule, int annee, String codeClasse, String codeSequence, string photo)
        {
            List <LigneBulletinSequentiel> ListLigneBulletinSequentiel = resultatDA.genererBulletinSequentielDunEleve(matricule, annee, codeClasse, codeSequence);
            SequenceBE sequence = new SequenceBE();

            sequence.codeseq = codeSequence;
            sequence         = sequenceDA.rechercher(sequence);

            BullettinSequentiel bulletinSequentiel = new BullettinSequentiel();
            EleveBE             elv = new EleveBE();

            elv.matricule = matricule;

            bulletinSequentiel.eleve = eleveDA.rechercher(elv);

            ClasseBE classe = new ClasseBE();

            classe.codeClasse = codeClasse;

            bulletinSequentiel.classe = classeDA.rechercher(classe);

            bulletinSequentiel.annee = annee;

            //on recherche le nombre d'évaluation de la séquence
            bulletinSequentiel.nbEvaluation = sequenceDA.getNombreEvaluationDuneSequence(codeClasse, codeSequence, annee);
            bulletinSequentiel.listLigneBulletinSequentiel = ListLigneBulletinSequentiel;
            //on liste les résultats trimestriels de l'élève pour l'année
            List <ResultatBE> ListResultatsSequentiel = resultatDA.listerSuivantCritere("annee = '" + annee + "' AND codeSeq = '" + codeSequence + "' AND matricule = '" + matricule + "'");

            if (ListResultatsSequentiel != null && ListResultatsSequentiel.Count != 0)
            {
                bulletinSequentiel.resultatSequentiel = ListResultatsSequentiel.ElementAt(0);
            }

            //on charge les moyennes séquentielles min et max des élèves de la classe choisit
            bulletinSequentiel.moyenneMin = resultatDA.getMoynenneSequentielleMinimaleDuneClasse(codeClasse, codeSequence, annee);
            bulletinSequentiel.moyenneMax = resultatDA.getMoynenneSequentielleMaximaleDuneClasse(codeClasse, codeSequence, annee);

            //on Charge la liste des codes d'évaluation de la séquence
            List <String> ListCodeEvaluation = sequenceDA.getListCodeEvaluationDuneSequence(codeClasse, codeSequence, annee);



            // on recherche l'effectif de la classe
            int effectifClasse = classeDA.getEffectifClasse(codeClasse, annee);

            //on recherche le professeur titulaire de la classe
            String codeProf = classeDA.getCodeProfTitulaireDuneClasse(codeClasse, annee);

            EnseignantBE profTitulaire = new EnseignantBE();

            if (codeProf != null)
            {
                profTitulaire.codeProf = codeProf;
                profTitulaire          = enseignantDA.rechercher(profTitulaire);
            }

            //on charge les infos sur les paramètres
            ParametresBE parametre = parametresDA.getParametre();

            //on appelle la fonction qui défini les avertissements et les blâmes de l'élève
            DefinirLesAvertissementsEtBlamesDunEleve(matricule, codeSequence, annee);

            //************************ on charge les disciplines de l'élève
            bulletinSequentiel.ListSanction = sanctionnerDA.getListSanctionSequentielleEleve(matricule, annee, codeSequence);

            etat.etatBulletinSequentielEleve(doc, writer, bulletinSequentiel, ListCodeEvaluation, effectifClasse, profTitulaire, parametre, photo);

            journalDA.journaliser("génération du bulletin séquentiel (Séquence " + codeSequence + ") de l'élève de matricule " + matricule);
        }
        public WindowTitularisationEnseignantUI()
        {
            CultureInfo ci = CultureInfo.CreateSpecificCulture(CultureInfo.CurrentCulture.Name);

            ci.DateTimeFormat.ShortDatePattern  = "dd-MM-yyyy";
            Thread.CurrentThread.CurrentCulture = ci;

            InitializeComponent();

            titularisationEnseignantBL = new TitularisationEnseignantBL();

            etat = 0;

            // A mettre pour que le binding avec le DataGrid fonctionne !
            grdListeTitulaire.DataContext = this;

            //txtAnnee.Text = Convert.ToString(System.DateTime.Today.Year);
            ParametresBE param = titularisationEnseignantBL.getParametres();

            if (param != null)
            {
                annee = param.annee;

                txtAnnee.Text         = Convert.ToString(param.annee);
                txtAnneeScolaire.Text = (param.annee - 1).ToString();
            }
            else
            {
                txtAnnee.Text         = "";
                txtAnneeScolaire.Text = "";
            }

            // Initialisation de la collection, qui va s'afficher dans la DataGrid :
            ListeTitulaires = new ObservableCollection <DirigerBE>();
            LEnseignant     = new List <EnseignantBE>();
            oldDiriger      = new DirigerBE();

            List <DirigerBE> LDirigerBE = new List <DirigerBE>();

            if (param != null)
            {
                LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + param.annee + "'");
            }
            else
            {
                LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + Convert.ToInt16(System.DateTime.Today.Year) + "'");
            }

            // on charge les infos sur les enseignants
            for (int i = 0; i < LDirigerBE.Count; i++)
            {
                EnseignantBE enseignant = new EnseignantBE();
                enseignant.codeProf = LDirigerBE.ElementAt(i).codeProf;
                LDirigerBE.ElementAt(i).enseignant = titularisationEnseignantBL.rechercherEnseignant(enseignant);
            }
            // on met la liste "LSerieBE" dans le DataGrid

            RemplirDataGrid(LDirigerBE);

            //grdListeTitulaire.ItemsSource = LDirigerBE;

            // ------------------- Chargement de la liste des codes de classe dans le comboBox de la fenêtre
            //(utile pour le filtre)
            List <ClasseBE> LClasse = titularisationEnseignantBL.listerToutesLesClasses();

            cmbClasse.ItemsSource = titularisationEnseignantBL.getListCodeClasse(LClasse);
        }
        private void cmdEnregistrer_Click(object sender, RoutedEventArgs e)
        {
            if ((cmbClasse.Text != null && txtAnneeScolaire.Text != null && cmbTitulaire.Text != null) &&
                (cmbClasse.Text != "" && txtAnneeScolaire.Text != "" && cmbTitulaire.Text != ""))
            {
                DirigerBE diriger = new DirigerBE();
                diriger.codeClasse = cmbClasse.Text;
                diriger.annee      = Convert.ToInt16(txtAnnee.Text);
                diriger.codeProf   = LEnseignant.ElementAt(cmbTitulaire.SelectedIndex).codeProf;
                // on charge les infos sur l'enseignant
                EnseignantBE enseignant = new EnseignantBE();
                enseignant.codeProf = diriger.codeProf;
                diriger.enseignant  = titularisationEnseignantBL.rechercherEnseignant(enseignant);

                if (etat == 1)
                {
                    titularisationEnseignantBL.modifierTitularisation(oldDiriger, diriger);


                    //txtAnnee.Text = Convert.ToString(System.DateTime.Today.Year);
                    ParametresBE param = titularisationEnseignantBL.getParametres();
                    if (param != null)
                    {
                        annee = param.annee;

                        txtAnnee.Text         = Convert.ToString(param.annee);
                        txtAnneeScolaire.Text = (param.annee - 1).ToString();
                    }
                    else
                    {
                        txtAnnee.Text         = "";
                        txtAnneeScolaire.Text = "";
                    }

                    cmbClasse.Text           = null;
                    cmbTitulaire.Text        = null;
                    cmbTitulaire.ItemsSource = null;

                    etat = 0;

                    List <DirigerBE> LDirigerBE = new List <DirigerBE>();
                    if (param != null)
                    {
                        LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + param.annee + "'");
                    }
                    else
                    {
                        LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + Convert.ToInt16(System.DateTime.Today.Year) + "'");
                    }

                    // on met la liste "LSerieBE" dans le DataGrid
                    // on charge les infos sur les enseignants
                    for (int i = 0; i < LDirigerBE.Count; i++)
                    {
                        enseignant          = new EnseignantBE();
                        enseignant.codeProf = LDirigerBE.ElementAt(i).codeProf;
                        LDirigerBE.ElementAt(i).enseignant = titularisationEnseignantBL.rechercherEnseignant(enseignant);
                    }
                    RemplirDataGrid(LDirigerBE);
                    //grdListeTitulaire.ItemsSource = LDirigerBE;
                }
                else if (titularisationEnseignantBL.listerTitularisationsSuivantCritere("codeclasse = '" + cmbClasse.Text + "' AND annee = '" + txtAnnee.Text + "'").Count == 0)
                {     // si la classe en question n'a pas encore de titulaire
                    if (titularisationEnseignantBL.rechercherTitularisation(diriger) == null)
                    { // si un enseignant n'a pas encor été désigné titulaire pour cette classe dans cette année
                        if (titularisationEnseignantBL.creerTitularisation(cmbClasse.Text, LEnseignant.ElementAt(cmbTitulaire.SelectedIndex).codeProf, Convert.ToInt16(txtAnnee.Text)))
                        {
                            MessageBox.Show("Opération réussie");


                            List <DirigerBE> LDirigerBE = titularisationEnseignantBL.listerTitularisationsSuivantCritere("annee = '" + txtAnnee.Text + "'");
                            // on charge les infos sur les enseignants
                            for (int i = 0; i < LDirigerBE.Count; i++)
                            {
                                enseignant          = new EnseignantBE();
                                enseignant.codeProf = LDirigerBE.ElementAt(i).codeProf;
                                LDirigerBE.ElementAt(i).enseignant = titularisationEnseignantBL.rechercherEnseignant(enseignant);
                            }
                            //on rafraichir le DataGrid
                            RemplirDataGrid(LDirigerBE);
                            //grdListeTitulaire.ItemsSource = LDirigerBE;

                            //on rafraichit les champs du formulaire
                            //txtAnnee.Text = Convert.ToString(System.DateTime.Today.Year);
                            ParametresBE param = titularisationEnseignantBL.getParametres();
                            if (param != null)
                            {
                                annee = param.annee;

                                txtAnnee.Text         = Convert.ToString(param.annee);
                                txtAnneeScolaire.Text = (param.annee - 1).ToString();
                            }
                            else
                            {
                                txtAnnee.Text         = "";
                                txtAnneeScolaire.Text = "";
                            }

                            cmbClasse.Text           = null;
                            cmbTitulaire.Text        = null;
                            cmbTitulaire.ItemsSource = null;
                        }
                        else
                        {
                            MessageBox.Show("Echec enregistrement : une erreure est survenue !");
                        }
                    }
                    else
                    {
                        MessageBox.Show("Une Titularisation de ce type existe deja dans le système \n \n Veuillez modifier les informations SVP !");
                    }
                }
                else
                {
                    MessageBox.Show("Cette Classe a deja un titulaire pour l'année choisit !");
                }
            }
            else
            {
                MessageBox.Show("Tous les champs doivent pas être remplis !");
            }
        }