示例#1
0
        /// <summary>
        /// fonction qui est executée lorsque l'utilisateur clique sur le bouton de supression du matériel
        /// Si le matériel a déjà été ajouté alors dans cette fonction on va accepder à la base de données pour le supprimer, sinon on cache juste le formulaire 
        /// Les licences de version qui sont associées à ce matériel seront également supprimées.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSupp_Click(object sender, EventArgs e)
        {
            //Si le label concernant le numéro attribué au matériel est vide :
            if (this.lblNumMatAttribue.Text.Equals(""))
            {
                this.panel.Hide(); // on cache juste le formulaire
            }
            else
            {
                if (MessageBox.Show("Voulez-vous vraiment supprimer ce matériel ? Les licences associées à ce matériel seront également supprimées.", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    //nous allons devoir effectuer sa suppression dans la base de donnée :
                    Mysql m = new Mysql();
                    try
                    {
                        m.suppMateriel(int.Parse(this.lblNumMatAttribue.Text));

                        //pour chaque formulaire de materiel
                        for (int i = 0; i < this.frmParent.getListeFrmNvoMat().Count; i++)
                        {
                            //si le formulaire a été validé (le numero attribué est ecrit)
                            if (!this.frmParent.getListeFrmNvoMat().ElementAt(i).getNum().Equals(""))
                            {
                                //pour chaque licence de duree
                                for (int j = 0; j < this.frmParent.getListeFrmNvlLicDuree().Count; j++)
                                {
                                    //si le formulaire a été validé (le numero attribué est ecrit) et si le numero du matériel est renseigné et est égale au numéro du materiel qu'on souhaite supprimer
                                    if (!this.frmParent.getListeFrmNvlLicDuree().ElementAt(j).getNum().Equals("") && this.frmParent.getListeFrmNvlLicDuree().ElementAt(j).getNumMatAssoc().Equals(this.frmParent.getListeFrmNvoMat().ElementAt(i).getNum()))
                                    {
                                        //on effectue la suppression de cette licence.
                                        this.frmParent.getListeFrmNvlLicDuree().ElementAt(j).btnSupp_Click(sender,e);
                                    }
                                }
                                //pour chaque licence de vrsion
                                for (int k = 0; k < this.frmParent.getListeFrmNvlLicVersion().Count; k++)
                                {
                                    //si le formulaire a été validé (le numero attribué est ecrit) et si le numero du matériel est renseigné et est égale au numéro du materiel qu'on souhaite supprimer
                                    if (!this.frmParent.getListeFrmNvlLicVersion().ElementAt(k).getNum().Equals("") && this.frmParent.getListeFrmNvlLicVersion().ElementAt(k).getNumMatAssoc().Equals(this.frmParent.getListeFrmNvoMat().ElementAt(i).getNum()))
                                    {
                                        //on effectue la suppression de cette licence.
                                        this.frmParent.getListeFrmNvlLicVersion().ElementAt(k).btnSupp_Click(sender, e);
                                    }
                                }
                            }
                        }
                        this.panel.Hide(); // on cache juste le formulaire
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Echec", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    }
                }
            }
        }
示例#2
0
        /// <summary>
        /// fonction qui se déclenche lorsque le bouton de suppression d'un matériel est cliqué. Permet de supprimer le matériel concerné de la base de données
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void btnSuppMat_Click(object sender, EventArgs e)
        {
            Mysql m = new Mysql();
            List<Personne> lesP = m.getLesPersonne();

            int idMat = int.Parse(this.tableLayoutMat.GetControlFromPosition(0, this.tableLayoutMat.GetCellPosition((Control)sender).Row).Text);
            try
            {
                List<Licence_duree> lesLicDur = m.getLesLicenceDuree(lesP.ElementAt(this.listBoxQui.SelectedIndex).getIdPersonne(), idMat);
                List<Licence_version> lesLicVersion = m.getLesLicenceVersion(lesP.ElementAt(this.listBoxQui.SelectedIndex).getIdPersonne(), idMat);

                //si il y a des licences de durée associées on va les supprimer
                for (int i = 0; i < lesLicDur.Count; i++)
                {
                    m.suppLicDuree(lesLicDur.ElementAt(i).getIdLicence());
                }

                //si il y des licences de version associées on va les supprimer
                for (int i = 0; i < lesLicVersion.Count; i++)
                {
                    m.suppLicVersion(lesLicVersion.ElementAt(i).getIdLicence());
                }

                m.suppMateriel(idMat);

                this.listBoxQui_SelectedIndexChanged(sender, e);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Echec", MessageBoxButtons.OK, MessageBoxIcon.Stop);
            }
        }