Пример #1
0
        //---------Afficher les éléments du menu de la fenetre principale dans le listBox-----------

        public void afficherEleveDansListBox(string codeClasse, string annee)
        {
            List <ElementListeEleve> listElementBox = new List <ElementListeEleve>();
            List <ClasseBE>          listClasse     = new List <ClasseBE>();
            List <EleveBE>           listeEleve     = new List <EleveBE>();
            ClasseBE classeBE = new ClasseBE();

            try
            {
                //avoir l'entité classe qui correspond au code sélectionné
                listClasse = classeBL.listerClasseSuivantCritere("codeclasse='" + codeClasse + "'");
                if (listClasse.Count != 0)
                {
                    classeBE = listClasse.ElementAt(0);
                }

                listeEleve = bulletinsTrimestrielBL.listeEleves(classeBE, Convert.ToInt32(txtAnnee.Text));


                foreach (EleveBE unEleve in listeEleve)
                {
                    listElementBox.Add(new ElementListeEleve()
                    {
                        matricule      = unEleve.matricule.ToString(),
                        nom            = unEleve.nom.ToString(),
                        chaineAffichee = unEleve.matricule.ToString().ToUpper() + "==" + unEleve.nom.ToString().ToUpper()
                                         //newTextElement = unEleve.nom.ToString().ToUpper() + "==" + unEleve.matricule.ToString().ToUpper()
                    });
                }

                //trier la liste avant d'envoyer à létat
                if (listElementBox.Count != 0)
                {
                    List <ElementListeEleve> newList = listElementBox.OrderBy(o => o.nom).ToList();
                    listElementBox.Clear();
                    foreach (ElementListeEleve elt in newList)
                    {
                        listElementBox.Add(elt);
                    }
                    listBoxEleve.ItemsSource = listElementBox;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }
        }
        private void cmdValider_Click(object sender, RoutedEventArgs e)
        {
            //on vérifit si tous les champs ont été corectement rempli
            if ((cmbClasse.Text != null && txtAnneeScolaire.Text != null && cmbTrimestre.Text != null) && (cmbClasse.Text != "" && txtAnneeScolaire.Text != "" && cmbTrimestre.Text != ""))
            {
                //si on a choisi <Toutes les classes>
                if (cmbClasse.Text.Equals("<Toutes Les Classes>"))
                {
                    if (cmbTrimestre.Text.Equals("<Tous Les Trimestres>"))
                    {
                        //--------------------------- Action pour toutes les classes et tous les trimestres

                        //on liste toutes les classes
                        List <ClasseBE> LClasse = genererBulletinsTrimestrielBL.listerToutesLesClasses();

                        List <TrimestreBE> LTrimestre = genererBulletinsTrimestrielBL.listerTousLesTrimestres();

                        //Configure the ProgressBar
                        ProgressBar1.Minimum = 0;
                        ProgressBar1.Maximum = LClasse.Count;
                        ProgressBar1.Value   = 0;

                        //Stores the value of the ProgressBar
                        double value = 0;

                        //Create a new instance of our ProgressBar Delegate that points
                        // to the ProgressBar's SetValue method.
                        UpdateProgressBarDelegate updatePbDelegate =
                            new UpdateProgressBarDelegate(ProgressBar1.SetValue);


                        //on affiche la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Visible;

                        for (int i = 0; i < LClasse.Count; i++)
                        {
                            //on liste les élèves de la classe
                            List <EleveBE> LEleve = genererBulletinsTrimestrielBL.listeEleves(LClasse.ElementAt(i), Convert.ToInt16(txtAnnee.Text));
                            for (int j = 0; j < LEleve.Count; j++)
                            {
                                for (int k = 0; k < LTrimestre.Count; k++)
                                {
                                    // ***********calcul des moyennes
                                    //remplissage de la table "moyennes"

                                    genererBulletinsTrimestrielBL.genererBulletinTrimestrielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text),
                                                                                                     LClasse.ElementAt(i).codeClasse, LTrimestre.ElementAt(k).codetrimestre, LEleve.ElementAt(j).photo);


                                    value += 1;

                                    Dispatcher.Invoke(updatePbDelegate,
                                                      System.Windows.Threading.DispatcherPriority.Background,
                                                      new object[] { ProgressBar.ValueProperty, value });
                                }
                            }
                        }

                        MessageBox.Show("Opération Terminée !! ");

                        //on cache la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Hidden;
                    }
                    else
                    {
                        //--------------------------- Action pour toutes les classes et un trimestre particulier

                        //on liste toutes les classes
                        List <ClasseBE> LClasse = genererBulletinsTrimestrielBL.listerToutesLesClasses();

                        //Configure the ProgressBar
                        ProgressBar1.Minimum = 0;
                        ProgressBar1.Maximum = LClasse.Count;
                        ProgressBar1.Value   = 0;

                        //Stores the value of the ProgressBar
                        double value = 0;

                        //Create a new instance of our ProgressBar Delegate that points
                        // to the ProgressBar's SetValue method.
                        UpdateProgressBarDelegate updatePbDelegate =
                            new UpdateProgressBarDelegate(ProgressBar1.SetValue);


                        //on affiche la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Visible;

                        for (int i = 0; i < LClasse.Count; i++)
                        {
                            //on liste les élèves de la classe
                            List <EleveBE> LEleve = genererBulletinsTrimestrielBL.listeEleves(LClasse.ElementAt(i), Convert.ToInt16(txtAnnee.Text));
                            for (int j = 0; j < LEleve.Count; j++)
                            {
                                // ***********calcul des moyennes
                                //remplissage de la table "moyennes"

                                genererBulletinsTrimestrielBL.genererBulletinTrimestrielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text),
                                                                                                 LClasse.ElementAt(i).codeClasse, cmbTrimestre.Text, LEleve.ElementAt(j).photo);


                                value += 1;

                                Dispatcher.Invoke(updatePbDelegate,
                                                  System.Windows.Threading.DispatcherPriority.Background,
                                                  new object[] { ProgressBar.ValueProperty, value });
                            }
                        }

                        MessageBox.Show("Opération Terminée !! ");

                        //on cache la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Hidden;
                    }
                }
                else
                {
                    if (cmbTrimestre.Text.Equals("<Tous Les Trimestres>"))
                    {
                        //--------------------- Action pour une classe particulière et tous les trimestres
                        List <TrimestreBE> LTrimestre = genererBulletinsTrimestrielBL.listerTousLesTrimestres();

                        //Configure the ProgressBar
                        ProgressBar1.Minimum = 0;
                        ProgressBar1.Maximum = LTrimestre.Count;
                        ProgressBar1.Value   = 0;

                        //Stores the value of the ProgressBar
                        double value = 0;

                        //Create a new instance of our ProgressBar Delegate that points
                        // to the ProgressBar's SetValue method.
                        UpdateProgressBarDelegate updatePbDelegate =
                            new UpdateProgressBarDelegate(ProgressBar1.SetValue);


                        //on affiche la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Visible;

                        ClasseBE classe = new ClasseBE();
                        classe.codeClasse = cmbClasse.Text;
                        classe            = genererBulletinsTrimestrielBL.rechercherClasse(classe);
                        //on liste les élèves de la classe
                        List <EleveBE> LEleve = genererBulletinsTrimestrielBL.listeEleves(classe, Convert.ToInt16(txtAnnee.Text));
                        for (int j = 0; j < LEleve.Count; j++)
                        {
                            for (int k = 0; k < LTrimestre.Count; k++)
                            {
                                // ***********calcul des moyennes
                                //remplissage de la table "moyennes"

                                genererBulletinsTrimestrielBL.genererBulletinTrimestrielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), classe.codeClasse,
                                                                                                 LTrimestre.ElementAt(k).codetrimestre, LEleve.ElementAt(j).photo);


                                value += 1;

                                Dispatcher.Invoke(updatePbDelegate,
                                                  System.Windows.Threading.DispatcherPriority.Background,
                                                  new object[] { ProgressBar.ValueProperty, value });
                            }
                        }

                        MessageBox.Show("Opération Terminée !! ");

                        //on cache la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Hidden;
                    }
                    else
                    {
                        //--------------------- Action pour une classe particulière et un trimestre particulier

                        //Configure the ProgressBar
                        ProgressBar1.Minimum = 0;
                        ProgressBar1.Maximum = 1;
                        ProgressBar1.Value   = 0;

                        //Stores the value of the ProgressBar
                        double value = 0;

                        //Create a new instance of our ProgressBar Delegate that points
                        // to the ProgressBar's SetValue method.
                        UpdateProgressBarDelegate updatePbDelegate =
                            new UpdateProgressBarDelegate(ProgressBar1.SetValue);


                        //on affiche la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Visible;

                        // ***********calcul des moyennes
                        //remplissage de la table "moyennes"

                        ClasseBE classe = new ClasseBE();
                        classe.codeClasse = cmbClasse.Text;
                        classe            = genererBulletinsTrimestrielBL.rechercherClasse(classe);

                        //on liste les élèves de la classe
                        List <EleveBE> LEleve = genererBulletinsTrimestrielBL.listeEleves(classe, Convert.ToInt16(txtAnnee.Text));
                        for (int j = 0; j < LEleve.Count; j++)
                        {
                            // ***********calcul des moyennes
                            //remplissage de la table "moyennes"

                            genererBulletinsTrimestrielBL.genererBulletinTrimestrielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), cmbClasse.Text,
                                                                                             cmbTrimestre.Text, LEleve.ElementAt(j).photo);


                            value += 1;

                            Dispatcher.Invoke(updatePbDelegate,
                                              System.Windows.Threading.DispatcherPriority.Background,
                                              new object[] { ProgressBar.ValueProperty, value });
                        }

                        //calcul des résultats
                        //remplissage de la table "resultats"

                        //genererResultatsTrimestrielsBL.calculerResultatsTrimestriels(cmbClasse.Text, cmbTrimestre.Text, Convert.ToInt16(txtAnnee.Text));

                        MessageBox.Show("Opération Terminée !! ");

                        //on cache la barre de progression
                        ProgressBar1.Visibility = System.Windows.Visibility.Hidden;
                    }
                }
            }
            else
            {
                MessageBox.Show("Tous les champs doivent êtres remplis !! ");
            }
        }