Example #1
0
 private void buttonUpdateDisponibilite_Click(object sender, EventArgs e)
 {
     if (periodeRow != null)
     {
         if (periodeRow.debut_periode <= periodeRow.fin_periode)
         {
             int value;
             Int32.TryParse(dataGridViewPeriode.SelectedCells[0].Value.ToString(), out value);
             var Result = MessageBox.Show("Etes-vous sûr de vouloir modifier la période n°" + value.ToString() + "?", "Veuillez confirmer:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
             if (Result == DialogResult.OK)
             {
                 EtudiantManager.SavePeriode(periodeRow);
                 PopulateAndBind();
             }
         }
         else
         {
             MessageBox.Show("La date de début de période doit se situer avant la date de fin de période", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
     }
     else
     {
         var Result = MessageBox.Show("Veuillez sélectionner une ligne", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
 }
Example #2
0
        private void Valider()
        {
            etudiantRow.sexe_etudiant = EtudiantManager.GetGenre(comboBoxSexeEtudiant.Text);

            if (id == -1)
            {
                EtudiantManager.AddEtudiant(etudiantRow);
            }
            else
            {
                if (!etudiantRow.statut_etudiant)
                {
                    var Result = MessageBox.Show("Etes-vous sûr de vouloir inactiver l'étudiant n°" + etudiantRow.etudiant_id + "? S'il a communiqué des périodes de disponibilité à venir, elles vont être supprimées",
                                                 "Veuillez confirmer", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                    if (Result == DialogResult.OK)
                    {
                        List <Connectds.periodeRow> periodeList = new List <Connectds.periodeRow>();
                        periodeList = EtudiantManager.GetPeriodeList(etudiantRow.etudiant_id);
                        if (periodeList != null)
                        {
                            foreach (var periode in periodeList)
                            {
                                if (periode.debut_periode >= DateTime.Now)
                                {
                                    EtudiantManager.DeletePeriode(periode.periode_id);
                                }
                            }
                        }
                    }
                }
                EtudiantManager.SaveEtudiant(etudiantRow);
            }
        }
Example #3
0
        /// <summary>
        /// Permet la suppression d'un profil étudiant et de ses périodes de disponibilité
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void buttonDeleteEtudiant_Click(object sender, EventArgs e)
        {
            int value;

            Int32.TryParse(comboBoxListEtudiant.SelectedValue.ToString(), out value);

            // Protection de l'id de l'étudiant par défaut
            if (value == 1)
            {
                MessageBox.Show("Ligne protégée pour la stabilité de l'application", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                var Result = MessageBox.Show("Etes-vous sûr de vouloir supprimer l'étudiant n°" + value.ToString() + "?", "Veuillez confirmer:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                if (Result == DialogResult.OK)
                {
                    // la variable checkJob va permettre de conserver l'information booléenne quant aux attributions de job de l'étudiant en dehors de la boucle foreach
                    bool checkJob = false;
                    Connectds.jobDataTable jobDT = EntrepriseManager.GetJobDT();
                    foreach (Connectds.jobRow jobRow in jobDT)
                    {
                        if (value == jobRow.etudiant_id)
                        {
                            var Result2 = MessageBox.Show("L'étudiant n°" + value.ToString() + " a des attributions de jobs actives. Vous ne pouvez le supprimer. Souhaitez-vous rendre son profil inactif?", "Veuillez préciser:", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                            if (Result2 == DialogResult.Yes)
                            {
                                etudiantSelectionne = EtudiantManager.GetEtudiant(value);
                                etudiantSelectionne.statut_etudiant = false; // le statut devient inactif
                                EtudiantManager.SaveEtudiant(etudiantSelectionne);
                                PopulateAndBind();
                            }
                            checkJob = true;
                            break;
                        }
                    }
                    if (!checkJob)
                    {
                        List <Connectds.periodeRow> periodeList = new List <Connectds.periodeRow>();
                        periodeList = EtudiantManager.GetPeriodeList(value);
                        if (periodeList != null)
                        {
                            foreach (var periode in periodeList)
                            {
                                EtudiantManager.DeletePeriode(periode.periode_id);
                            }
                        }
                        EtudiantManager.DeleteEtudiant(value);
                        PopulateAndBind();
                    }
                }
            }
        }
Example #4
0
        /// <summary>
        /// Rafraichit le binding entre le dataGridViewPeriode et les date pickers, ce qui permet d'utiliser ces derniers pour modifier une période
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dataGridViewPeriode_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            int value;

            if (dataGridViewPeriode.SelectedRows.Count == 1)
            {
                datePickerDebutPeriode.DataBindings.Clear();
                datePickerFinPeriode.DataBindings.Clear();
                Int32.TryParse(dataGridViewPeriode.SelectedCells[0].Value.ToString(), out value);
                periodeRow = EtudiantManager.GetPeriode(value);
                datePickerDebutPeriode.DataBindings.Add("Value", periodeRow, "debut_periode");
                datePickerFinPeriode.DataBindings.Add("Value", periodeRow, "fin_periode");
            }
        }
Example #5
0
 private void buttonSupprimerDisponibilite_Click(object sender, EventArgs e)
 {
     if (dataGridViewPeriode.SelectedRows.Count == 1)
     {
         int value;
         Int32.TryParse(dataGridViewPeriode.SelectedCells[0].Value.ToString(), out value);
         var Result = MessageBox.Show("Etes-vous sûr de vouloir supprimer la période n°" + value.ToString() + "?", "Veuillez confirmer:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
         if (Result == DialogResult.OK)
         {
             EtudiantManager.DeletePeriode(value);
             dataGridViewPeriode.Refresh();
             PopulateAndBind();
         }
     }
 }
Example #6
0
 private void PopulateAndBind()
 {
     //Si l'étudiant est nouvellement créé, cette condition permet de récupérer son id.
     //Sinon, l'id passée en paramètre avec le constructeur est à -1
     if (etudiantId == -1)
     {
         Connectds.etudiantDataTable dt = new Connectds.etudiantDataTable();
         dt          = EtudiantManager.GetEtudiantDT();
         etudiantRow = dt.Last <Connectds.etudiantRow>();
         etudiantId  = etudiantRow.etudiant_id;
     }
     dataGridViewPeriode.DataSource = EtudiantManager.GetPeriodeList(etudiantId);
     textBoxIdEtudiant.Text         = etudiantId.ToString();
     etudiantRow     = EtudiantManager.GetEtudiant(etudiantId);
     textBoxNom.Text = etudiantRow.prenom_etudiant + " " + etudiantRow.nom_etudiant;
 }
Example #7
0
        private void buttonValiderDisponibilite_Click(object sender, EventArgs e)
        {
            Connectds.periodeDataTable periodeDT = new Connectds.periodeDataTable();
            periodeRow               = periodeDT.NewperiodeRow();
            periodeRow.etudiant_id   = etudiantId;
            periodeRow.debut_periode = datePickerDebutPeriode.Value;
            periodeRow.fin_periode   = datePickerFinPeriode.Value;

            if (periodeRow.debut_periode <= periodeRow.fin_periode)
            {
                EtudiantManager.AddPeriode(periodeRow);
                PopulateAndBind();
            }
            else
            {
                MessageBox.Show("La date de début de période doit se situer avant la date de fin de période", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Example #8
0
        private void buttonListEtudiantAfficher_Click(object sender, EventArgs e)
        {
            int value;

            Int32.TryParse(comboBoxListEtudiant.SelectedValue.ToString(), out value);
            etudiantSelectionne = EtudiantManager.GetEtudiant(value);
            if (value != -1 && value != 1)
            {
                FormEtudiant formEtudiant = new FormEtudiant(etudiantSelectionne);
                formEtudiant.MdiParent = this.MdiParent;
                formEtudiant.Show();
                this.Close();
            }
            // Protection de l'id de l'étudiant par défaut
            if (value == 1)
            {
                MessageBox.Show("Ligne protégée pour la stabilité de l'application", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Example #9
0
        private void PopulateAndBind(int jobID)
        {
            ds = EntrepriseManager.GetDS();
            comboBoxEntreprise.DataSource    = ds;
            comboBoxEntreprise.ValueMember   = "entreprise.entreprise_id";
            comboBoxEntreprise.DisplayMember = "entreprise.nom_entreprise";

            if (id != -1)
            {
                jobRow = EntrepriseManager.GetJob(id);
                comboBoxEntreprise.SelectedValue = jobRow.entreprise_id;
                comboBoxEntreprise.Enabled       = false;

                if (!jobRow.Isetudiant_idNull())
                {
                    etudiantRow             = EtudiantManager.GetEtudiant(jobRow.etudiant_id);
                    textBoxEtudiantJob.Text = etudiantRow.etudiant_id + " - " + etudiantRow.nom_etudiant + " " + etudiantRow.prenom_etudiant;
                }

                textBoxJobID.Text     = jobID.ToString();
                buttonValiderJob.Text = "Modifier";
            }
            else
            {
                if (entrepriseID != -1)
                {
                    comboBoxEntreprise.SelectedValue = entrepriseID;
                }

                Connectds.jobDataTable jobDT = new Connectds.jobDataTable();
                jobRow = (Connectds.jobRow)jobDT.NewjobRow();
                //Tentative de contourner les contraintes de FK not null du DataSet:
                //jobRow.Setetudiant_idNull();
                jobRow.etudiant_id = 1;
                comboBoxEntreprise.DropDownStyle = ComboBoxStyle.DropDownList;
                jobRow.titre_job            = string.Empty;
                jobRow.descriptif_job       = string.Empty;
                jobRow.profil_job           = string.Empty;
                jobRow.date_debut_job       = DateTime.Now;
                jobRow.date_fin_job         = DateTime.Now;
                jobRow.horaire_job          = string.Empty;
                jobRow.remuneration_job     = 0;
                jobRow.permis_voiture_job   = false;
                jobRow.remarque_job         = string.Empty;
                jobRow.date_publication_job = DateTime.Now;
                jobRow.statut_job           = false;
                labelJob.Visible            = false;
                textBoxJobID.Visible        = false;
            }
            textBoxIntituleJob.DataBindings.Add("Text", jobRow, "titre_job");
            textBoxDescriptif.DataBindings.Add("Text", jobRow, "descriptif_job");
            textBoxProfilJob.DataBindings.Add("Text", jobRow, "profil_job");
            datePickerDebutJob.DataBindings.Add("Value", jobRow, "date_debut_job");
            datePickerFinJob.DataBindings.Add("Value", jobRow, "date_fin_job");
            textBoxHoraireJob.DataBindings.Add("Text", jobRow, "horaire_job");
            numericUpDownSalaireJob.DataBindings.Add("Value", jobRow, "remuneration_job");
            textBoxRmqJob.DataBindings.Add("Text", jobRow, "remarque_job");
            datePickerPublicationJob.DataBindings.Add("Value", jobRow, "date_publication_job");

            // création du binding pour le radiobutton "Oui" (permis)
            var permisJobBinding = new Binding("Checked", jobRow, "permis_voiture_job");

            // Format = lecture à partir du datasource, retourne "true" s'il lit la valeur true
            permisJobBinding.Format += (s, args) => args.Value = ((bool)args.Value) == true;
            // Parse = écriture dans le datasource, retourne la valeur true s'il lit true, sinon il retourne false
            permisJobBinding.Parse += (s, args) => args.Value = (bool)args.Value ? true : false;
            // Binding:
            radioButtonPermisOuiJob.DataBindings.Add(permisJobBinding);

            // création du binding pour le radiobutton "Non" (permis)
            var permisJobNonBinding = new Binding("Checked", jobRow, "permis_voiture_job");

            // Format = lecture à partir du datasource, retourne "true" s'il lit la valeur false
            permisJobNonBinding.Format += (s, args) => args.Value = ((bool)args.Value) == false;
            // Parse = écriture dans le datasource, retourne la valeur false s'il lit true, sinon il retourne true
            permisJobNonBinding.Parse += (s, args) => args.Value = (bool)args.Value ? false : true;
            // Binding:
            radioButtonPermisNonJob.DataBindings.Add(permisJobNonBinding);
        }
Example #10
0
        private void PopulateAndBind(int id)
        {
            comboBoxSexeEtudiant.Items.Add(Enums.Genre.Féminin.ToString());
            comboBoxSexeEtudiant.Items.Add(Enums.Genre.Masculin.ToString());
            comboBoxSexeEtudiant.Items.Add(Enums.Genre.Indéterminé.ToString());

            dateTimePickerDdNEtudiant.MinDate = DateTime.Now.AddYears(-31);
            dateTimePickerDdNEtudiant.MaxDate = DateTime.Now.AddYears(-12);

            dateTimePickerCreaProfilEtudiant.MinDate = DateTime.Now.AddYears(-5);
            dateTimePickerCreaProfilEtudiant.MaxDate = DateTime.Now.AddDays(1);

            if (id != -1)
            {
                etudiantRow = EtudiantManager.GetEtudiant(id);

                switch (etudiantRow.sexe_etudiant)
                {
                case "F":
                    comboBoxSexeEtudiant.Text = Enums.Genre.Féminin.ToString();
                    break;

                case "M":
                    comboBoxSexeEtudiant.Text = Enums.Genre.Masculin.ToString();
                    break;

                case "X":
                    comboBoxSexeEtudiant.Text = Enums.Genre.Indéterminé.ToString();
                    break;

                default:
                    break;
                }
            }
            else
            {
                Connectds.etudiantDataTable etudiantDT = new Connectds.etudiantDataTable();
                etudiantRow = etudiantDT.NewetudiantRow();

                etudiantRow.nom_etudiant            = string.Empty;
                etudiantRow.prenom_etudiant         = string.Empty;
                etudiantRow.date_naissance_etudiant = DateTime.Now.AddYears(-20);
                dateTimePickerDdNEtudiant.Value     = DateTime.Now.AddYears(-20);
                etudiantRow.adresse_etudiant        = string.Empty;
                etudiantRow.telephone_etudiant      = string.Empty;
                etudiantRow.email_etudiant          = string.Empty;
                etudiantRow.statut_etudiant         = true;

                etudiantRow.ecole_etudiant          = string.Empty;
                etudiantRow.annee_scolaire_etudiant = string.Empty;
                etudiantRow.type_etudes_etudiant    = string.Empty;

                etudiantRow.permis_voiture_etudiant    = true;
                etudiantRow.sexe_etudiant              = string.Empty;
                etudiantRow.hobbies_etudiant           = string.Empty;
                etudiantRow.experience_etudiant        = string.Empty;
                etudiantRow.domaine_recherche_etudiant = string.Empty;

                etudiantRow.langues_etudiant           = string.Empty;
                etudiantRow.remarque_etudiant          = string.Empty;
                etudiantRow.date_creation_etudiant     = DateTime.Now;
                dateTimePickerCreaProfilEtudiant.Value = DateTime.Now;
                labelIdEtudiant.Visible   = false;
                textBoxIdEtudiant.Visible = false;
            }
            textBoxIdEtudiant.DataBindings.Add("Text", etudiantRow, "etudiant_id");
            textBoxNomEtudiant.DataBindings.Add("Text", etudiantRow, "nom_etudiant");
            textBoxPrenomEtudiant.DataBindings.Add("Text", etudiantRow, "prenom_etudiant");
            dateTimePickerDdNEtudiant.DataBindings.Add("Value", etudiantRow, "date_naissance_etudiant");
            textBoxAdresseEtudiant.DataBindings.Add("Text", etudiantRow, "adresse_etudiant");
            textBoxTelEtudiant.DataBindings.Add("Text", etudiantRow, "telephone_etudiant");
            textBoxEmailEtudiant.DataBindings.Add("Text", etudiantRow, "email_etudiant");

            textBoxEcoleEtudiant.DataBindings.Add("Text", etudiantRow, "ecole_etudiant");
            textBoxAnneeEtudiant.DataBindings.Add("Text", etudiantRow, "annee_scolaire_etudiant");
            textBoxTypeEtudiant.DataBindings.Add("Text", etudiantRow, "type_etudes_etudiant");

            textBoxLangueEtudiant.DataBindings.Add("Text", etudiantRow, "langues_etudiant");
            textBoxExperience.DataBindings.Add("Text", etudiantRow, "experience_etudiant");
            textBoxDomaineEtudiant.DataBindings.Add("Text", etudiantRow, "domaine_recherche_etudiant");
            textBoxHobbiesEtudiant.DataBindings.Add("Text", etudiantRow, "hobbies_etudiant");
            textBoxRmqEtudiant.DataBindings.Add("Text", etudiantRow, "remarque_etudiant");
            dateTimePickerCreaProfilEtudiant.DataBindings.Add("Value", etudiantRow, "date_creation_etudiant");


            // création du binding pour le radiobutton "Oui" (permis)
            var permisBinding = new Binding("Checked", etudiantRow, "permis_voiture_etudiant");

            // Format = lecture à partir du datasource, retourne "true" s'il lit la valeur true
            permisBinding.Format += (s, args) => args.Value = ((bool)args.Value) == true;
            // Parse = écriture dans le datasource, retourne la valeur true s'il lit true, sinon il retourne false
            permisBinding.Parse += (s, args) => args.Value = (bool)args.Value ? true : false;
            // Binding:
            radioButtonPermisOuiEtudiant.DataBindings.Add(permisBinding);

            // création du binding pour le radiobutton "Non" (permis)
            var permisNonBinding = new Binding("Checked", etudiantRow, "permis_voiture_etudiant");

            // Format = lecture à partir du datasource, retourne "true" s'il lit la valeur false
            permisNonBinding.Format += (s, args) => args.Value = ((bool)args.Value) == false;
            // Parse = écriture dans le datasource, retourne la valeur false s'il lit true, sinon il retourne true
            permisNonBinding.Parse += (s, args) => args.Value = (bool)args.Value ? false : true;
            // Binding:
            radioButtonPermisNonEtudiant.DataBindings.Add(permisNonBinding);

            // création du binding pour le checkbox Actif
            var actifBinding = new Binding("Checked", etudiantRow, "statut_etudiant");

            // Format = lecture à partir du datasource, retourne "true" s'il lit la valeur 1
            actifBinding.Format += (s, args) => args.Value = ((bool)args.Value) == true;
            // Parse = écriture dans le datasource, retourne la valeur false s'il lit la valeur 2
            actifBinding.Parse += (s, args) => args.Value = (bool)args.Value ? true : false;
            // Binding:
            checkBoxActif.DataBindings.Add(actifBinding);
        }
Example #11
0
 private void PopulateAndBind(DateTime debut, DateTime fin)
 {
     dataGridViewRechercheEtudiant.DataSource = EtudiantManager.GetPeriodeList(debut, fin);
 }