//********************************** Fin des éléments utiles pour la barre de progréssion

        public WindowGenererResultatsAnnuelsUI()
        {
            InitializeComponent();

            genererResultatsAnnuelsBL = new GenererResultatsAnnuelsBL();

            ancienObjet = new MoyennesAnnuellesBE();

            // Initialisation de la collection, qui va s'afficher dans la DataGrid :
            ListeMoyennesAnnuelles = new ObservableCollection <MoyennesAnnuellesBE>();
            List <MoyennesAnnuellesBE> LMoyennesAnnuellesBE = genererResultatsAnnuelsBL.listerToutesLesMoyennesAnnuelles();

            // on met la liste "ListeMoyennesAnnuelles" dans le DataGrid
            RemplirDataGrid(LMoyennesAnnuellesBE);

            List <ClasseBE> LClasse = genererResultatsAnnuelsBL.listerToutesLesClasses();

            // ------------------- Chargement de la liste des codes de Classe dans le comboBox de la fenêtre
            //(utile pour le filtre)
            cmbClasse.ItemsSource = genererResultatsAnnuelsBL.getListCodeClasse(LClasse);

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

            //on cache la barre de progression
            ProgressBar1.Visibility = System.Windows.Visibility.Hidden;
        }
Example #2
0
 // ajouter une Moyenne Annuelle
 public bool ajouterMoyenneAnnuelle(MoyennesAnnuellesBE moyenne)
 {
     if (moyennesAnnuellesDA.ajouter(moyenne))
     {
         journalDA.journaliser("enregistrement de la moyenne annuelle de l'élève de matricule " + moyenne.matricule + ". matière : " + moyenne.codeMat + ", année : " + moyenne.annee + ", moyenne : " + moyenne.moyenne);
         return(true);
     }
     return(false);
 }
Example #3
0
 // modifier une Moyenne Annuelle
 public bool modifierMoyenneAnnuelle(MoyennesAnnuellesBE moyenne)
 {
     if (moyennesAnnuellesDA.modifier(moyenne))
     {
         journalDA.journaliser("modification de la moyenne annuelle de l'élève de matricule " + moyenne.matricule + ". matière : " + moyenne.codeMat + ", année : " + moyenne.annee + ". ancienne moyenne : " + moyenne.moyenne + ", nouvelle moyenne : " + moyenne.moyenne);
         return(true);
     }
     return(false);
 }
Example #4
0
 // supprimer une Moyenne Annuelle
 public bool supprinerMoyenneAnnuelle(MoyennesAnnuellesBE moyenne)
 {
     if (moyennesAnnuellesDA.supprimer(moyenne))
     {
         journalDA.journaliser("suppression de la moyenne annuelle de l'élève de matricule " + moyenne.matricule + ". matière : " + moyenne.codeMat + ", année : " + moyenne.annee);
         return(true);
     }
     return(false);
 }
Example #5
0
        //creer une Moyenne Annuelle
        public bool creerMoyenneAnnuelle(String codeMatiere, String matricule, Double moyenne, int annee, int rang, double moyenneClasse, string mention, double moyenneMin, double moyenneMax, string appreciation)
        {
            MoyennesAnnuellesBE moy = new MoyennesAnnuellesBE(codeMatiere, matricule, moyenne, annee, rang, moyenneClasse, mention, moyenneMin, moyenneMax, appreciation);

            if (moyennesAnnuellesDA.ajouter(moy))
            {
                journalDA.journaliser("enregistrement de la moyenne annuelle de l'élève de matricule " + matricule + ". matière : " + codeMatiere + ", année : " + annee + ", moyenne : " + moyenne);
                return(true);
            }
            return(false);
        }
Example #6
0
 // rechercher une Moyenne Annuelle
 public MoyennesAnnuellesBE rechercherMoyenneAnnuelle(MoyennesAnnuellesBE moyenne)
 {
     return(moyennesAnnuellesDA.rechercher(moyenne));
 }
Example #7
0
        //Calcul de la moyenne des élèves pour une classe, une matière et une année donnée
        //il s'agit de remplir la table "moyennesAnnuelles"
        public void calculerMoyenneAnnuelles(String codeClasse, int annee)
        {
            ClasseBE classe = new ClasseBE();

            classe.codeClasse = codeClasse;

            ClasseBE classeBE = rechercherClasse(classe);

            //on liste les matières de la classe pour l'année choisi
            List <MatiereBE> LMatiere = listeDesMatieresDuneClasse(classeBE, annee);

            //on calcul les moyennes annuelles par matières
            for (int j = 0; j < LMatiere.Count; j++)
            {
                // calcul de la moyenne trimestrielle des élève sur chacune des matières individuellement
                List <String[]> List = moyennesAnnuellesDA.calculMoyenneAnnuelles(codeClasse, LMatiere.ElementAt(j).codeMat, annee);

                if (List != null && List.Count != 0)
                {
                    //on fabrique les objets de type moyennesTrimestrielles et on les mets dans le BD
                    List <MoyennesAnnuellesBE> LMoyennesmoyenneAnnuelles = new List <MoyennesAnnuellesBE>();
                    for (int i = 0; i < List.Count; i++)
                    {
                        /*
                         * List.ElementAt(i)[0] : matricule;
                         * List.ElementAt(i)[1] : codeMatiere;
                         * List.ElementAt(i)[2] : moyenne;
                         */
                        MoyennesAnnuellesBE moyenneAnnuelle = new MoyennesAnnuellesBE();
                        moyenneAnnuelle.codeMat = List.ElementAt(i)[1];

                        moyenneAnnuelle.matricule     = List.ElementAt(i)[0];
                        moyenneAnnuelle.moyenne       = Convert.ToDouble(List.ElementAt(i)[2]);
                        moyenneAnnuelle.annee         = annee;
                        moyenneAnnuelle.rang          = 0;
                        moyenneAnnuelle.moyenneClasse = 0;
                        if (getMention(moyenneAnnuelle.moyenne) != null)
                        {
                            moyenneAnnuelle.mention = getMention(moyenneAnnuelle.moyenne);
                        }
                        else
                        {
                            moyenneAnnuelle.mention = "";
                        }
                        moyenneAnnuelle.moyenneMin = 0;
                        moyenneAnnuelle.moyenneMax = 0;

                        LMoyennesmoyenneAnnuelles.Add(moyenneAnnuelle);
                    }

                    //-------------- on calcule le rang, la moyenne générale de la classe, les moyennes min et max

                    double moyenneDeLaClasse = 0;                                              // moyenne générale de la classe
                    double moyenneMin        = LMoyennesmoyenneAnnuelles.ElementAt(0).moyenne; // moyenne mininale des élèves de la classe
                    double moyenneMax        = LMoyennesmoyenneAnnuelles.ElementAt(0).moyenne; // moyenne maximale des élèves de la classe

                    //on trie la liste
                    LMoyennesmoyenneAnnuelles = LMoyennesmoyenneAnnuelles.OrderByDescending(o => o.moyenne).ToList();

                    MoyennesAnnuellesBE moyennePrecedente = new MoyennesAnnuellesBE();

                    for (int i = 0; i < LMoyennesmoyenneAnnuelles.Count; i++)
                    {
                        // ------------------- DEBUT détermination du rang
                        if (i == 0)
                        {                                                                            // on est sur le premier (celui qui a la plus grande note)
                            MoyennesAnnuellesBE oldMoyenne = LMoyennesmoyenneAnnuelles.ElementAt(i); // l'ancienne version de la moyenne (sera utilisé pour la modification)

                            LMoyennesmoyenneAnnuelles.ElementAt(i).rang = 1;                         // le premier pour cette séquence et cette matière

                            //on met à jour le rang dans la BD
                            //modifierMoyenne(oldMoyenne, LMoyennesmoyenneAnnuelles.ElementAt(j));

                            moyennePrecedente = LMoyennesmoyenneAnnuelles.ElementAt(i);
                        }
                        else
                        {
                            if (LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne == moyennePrecedente.moyenne)
                            {
                                MoyennesAnnuellesBE oldMoyenne = LMoyennesmoyenneAnnuelles.ElementAt(i); // l'ancienne version de la moyenne (sera utilisé pour la modification)

                                //alors on a un ex éco (ils ont le même rang)
                                LMoyennesmoyenneAnnuelles.ElementAt(i).rang = moyennePrecedente.rang;

                                //on met à jour le rang dans la BD
                                //modifierMoyenne(oldMoyenne, LMoyenneAvecRang.ElementAt(j));
                            }
                            else
                            {
                                MoyennesAnnuellesBE oldMoyenne = LMoyennesmoyenneAnnuelles.ElementAt(i); // l'ancienne version de la moyenne (sera utilisé pour la modification)

                                //alors l'élève prend le rend suivant
                                //LMoyennesmoyenneAnnuelles.ElementAt(j).rang = moyennePrecedente.rang + 1;
                                LMoyennesmoyenneAnnuelles.ElementAt(i).rang = i + 1;

                                //on met à jour le rang dans la BD
                                //modifierMoyenne(oldMoyenne, LMoyenneAvecRang.ElementAt(j));
                            }

                            moyennePrecedente = LMoyennesmoyenneAnnuelles.ElementAt(i);
                        }
                        // ------------------- FIN détermination du rang

                        // ------------------- DEBUT détermination de la moyenne de la classe

                        moyenneDeLaClasse = moyenneDeLaClasse + LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne;

                        // ------------------- FIN détermination de la moyenne de la classe



                        // ------------------- DEBUT détermination des moyennes minimales et maximales

                        if (LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne < moyenneMin)
                        {
                            moyenneMin = LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne;
                        }

                        if (LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne > moyenneMax)
                        {
                            moyenneMax = LMoyennesmoyenneAnnuelles.ElementAt(i).moyenne;
                        }

                        // ------------------- FIN détermination des moyennes minimales et maximales
                    }

                    moyenneDeLaClasse = moyenneDeLaClasse / LMoyennesmoyenneAnnuelles.Count;

                    //------------------- DEBUT mise à jour des moyennes avec les infos telles que : moyenneClasse, mention, moyenneMin, moyenneMax

                    for (int i = 0; i < LMoyennesmoyenneAnnuelles.Count; i++)
                    {
                        LMoyennesmoyenneAnnuelles.ElementAt(i).moyenneClasse = moyenneDeLaClasse;
                        LMoyennesmoyenneAnnuelles.ElementAt(i).moyenneMin    = moyenneMin;
                        LMoyennesmoyenneAnnuelles.ElementAt(i).moyenneMax    = moyenneMax;

                        //on met à jour le rang dans la BD
                        if (moyennesAnnuellesDA.rechercher(LMoyennesmoyenneAnnuelles.ElementAt(i)) != null)
                        {
                            supprimerMoyenneAnnuelle(LMoyennesmoyenneAnnuelles.ElementAt(i));
                        }

                        ajouterMoyenneAnnuelle(LMoyennesmoyenneAnnuelles.ElementAt(i));

                        //modifierMoyenneTrimestriel(LMoyennesTrimestriels.ElementAt(i), LMoyennesTrimestriels.ElementAt(i));
                    }

                    //------------------- FIN mise à jour des moyennes avec les infos telles que : moyenneClasse, mention, moyenneMin, moyenneMax
                }
            }

            journalDA.journaliser("Calcul des moyennes annuelles des élèves de la classe " + codeClasse + ", année " + annee);
        }