예제 #1
0
        private void buttonAjouter_Click(object sender, EventArgs e)
        {
            int   idInscrit = 0;
            Int32 numTranspondeur;
            int   idArrivee     = 0;
            bool  ecrireEnreg   = true;
            bool  modifierEnreg = false;
            bool  faireMaj      = false;

            DateTime arriveeCoureur;

            if (comboBoxTranspondeur.SelectedIndex != -1)
            {
                // lecture de l'enregistrement de la table inscription.

                numTranspondeur = Convert.ToInt32(comboBoxTranspondeur.SelectedItem);

                DbInscriptions lectInscription = new DbInscriptions();
                // (bool opeOk, string messErreur,
                MySqlDataReader readerInscrit = lectInscription.LectureunInscrit(Convert.ToInt32(comboBoxTranspondeur.SelectedItem));
                //if (opeOk == true)
                //{
                if (readerInscrit != null)          // on teste si la requete a bien retournée un résultat
                {
                    // Vérifie si des données sont présente dans reader

                    if (readerInscrit.HasRows)
                    {
                        readerInscrit.Read();
                        idInscrit = Convert.ToInt16(readerInscrit.GetString(0));
                        faireMaj  = true;
                    }
                    else
                    {
                        MessageBox.Show("Une erreur s'est produite il n'y a pas d'inscrit pour le numero de transpondeur : " + numTranspondeur);
                    }
                }
                else
                {
                    MessageBox.Show("Une erreur s'est produite il n'y a pas d'inscrit pour le numero de transpondeur : " + numTranspondeur);
                }
                //}
                //else
                //{
                //    MessageBox.Show("Une erreur s'est produite lors de la lecture d'un inscrit, veuillez vérifier l'état dse votre base de Données, avec le message : " + messErreur);
                //}

                if (faireMaj == true)
                {
                    // Verification si transpondeur deja existant, ex : passé deux fois devant le portique.

                    DbArrivee       dejaArrivee       = new DbArrivee();
                    MySqlDataReader readerDejaArrivee = dejaArrivee.LectureUnArrivee(idInscrit);

                    if (readerDejaArrivee != null)          // on teste si la requete a bien retournéer un résultat
                    {
                        // Vérifie si des données sont présente dans reader

                        if (readerDejaArrivee.HasRows)
                        {
                            DialogResult refaireEnreg = MessageBox.Show("ATTENTION : ce badge est deja enregistré, refaire l'enregistrement ?", "Enregistrer encore !", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                            if (refaireEnreg == DialogResult.No)
                            {
                                modifierEnreg = false;
                                ecrireEnreg   = false;
                            }
                            else
                            {
                                modifierEnreg = true;
                                readerDejaArrivee.Read();
                                idArrivee = Convert.ToInt16(readerDejaArrivee.GetString(0));
                            }
                        }
                    }

                    if (ecrireEnreg == true)
                    {
                        if (modifierEnreg == true)
                        {
                            arriveeCoureur = Convert.ToDateTime(maskedTextBoxHeureArrivee.Text);
                            Arrivee   modifArrivee    = new Arrivee(arriveeCoureur, idInscrit);
                            DbArrivee ModifierArrivee = new DbArrivee();
                            (bool result, string messErreur) = ModifierArrivee.ModifierArrivee(modifArrivee, idArrivee);
                            if (result == false)
                            {
                                MessageBox.Show("La création à échouée, veuillez vérifier l'état de votre base de Données" + messErreur);
                            }
                            else
                            {
                                MessageBox.Show("Arrivée du coureur mise à jour !");
                            }
                        }
                        else
                        {
                            arriveeCoureur = Convert.ToDateTime(maskedTextBoxHeureArrivee.Text);
                            Arrivee   creeArrivee  = new Arrivee(arriveeCoureur, idInscrit);
                            DbArrivee AjoutArrivee = new DbArrivee();
                            bool      result       = AjoutArrivee.AjouterArrivee(creeArrivee);
                            if (result == false)
                            {
                                MessageBox.Show("La création à échouée, veuillez vérifier l'état de votre base de Données");
                            }
                            else
                            {
                                MessageBox.Show("Arrivée du coureur effectuée !");
                            }
                        }
                    }
                }
            }
        }
예제 #2
0
            public void testSuspention()
            {
                while (!sleepSwitch)
                {
                    while (Thread.CurrentThread.IsAlive)
                    {
                        Thread.Sleep(500);

                        // lecture badgeage transpondeur


                        lock (this)
                        {
                            if (chaineLu != "")
                            {
                                ecrireEnreg    = true;
                                modifierEnreg  = false;
                                faireMaj       = false;
                                arriveeCoureur = DateTime.Now;
                                chaineConv     = "";
                                // Mettre à jour le tuple de l'arrivée du coureur en récupérant son ID dans inscription avec le numéro de transpondeur

                                DateTime heurearrivee = DateTime.Now;

                                // mise en majuscule la chaine lue.

                                for (int i = 0; i < chaineLu.Length; i++)
                                {
                                    switch (Convert.ToString(chaineLu[i]))
                                    {
                                    case "&":
                                        chaineConv = chaineConv + "1";
                                        break;

                                    case "é":
                                        chaineConv = chaineConv + "2";
                                        break;

                                    case "\"":
                                        chaineConv = chaineConv + "3";
                                        break;

                                    case "'":
                                        chaineConv = chaineConv + "4";
                                        break;

                                    case "(":
                                        chaineConv = chaineConv + "5";
                                        break;

                                    case "-":
                                        chaineConv = chaineConv + "6";
                                        break;

                                    case "è":
                                        chaineConv = chaineConv + "7";
                                        break;

                                    case "_":
                                        chaineConv = chaineConv + "8";
                                        break;

                                    case "ç":
                                        chaineConv = chaineConv + "9";
                                        break;

                                    case "à":
                                        chaineConv = chaineConv + "0";
                                        break;
                                    }
                                }
                                chaineConv = "139319757";

                                // conversion en entier

                                numTranspondeur = Convert.ToInt32(chaineConv);

                                // lecture de l'enregistrement de la table inscription.

                                DbInscriptions lectInscription = new DbInscriptions();
                                // (bool opeOk, string messErreur,
                                MySqlDataReader readerInscrit = lectInscription.LectureunInscrit(numTranspondeur);
                                //if (opeOk == true)
                                //{
                                if (readerInscrit != null)          // on teste si la requete a bien retournée un résultat
                                {
                                    // Vérifie si des données sont présente dans reader

                                    if (readerInscrit.HasRows)
                                    {
                                        readerInscrit.Read();
                                        idInscrit = Convert.ToInt16(readerInscrit.GetString(0));
                                        faireMaj  = true;
                                    }
                                    else
                                    {
                                        MessageBox.Show("Une erreur s'est produite il n'y a pas d'inscrit pour le numero de transpondeur : " + numTranspondeur);
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("Une erreur s'est produite il n'y a pas d'inscrit pour le numero de transpondeur : " + numTranspondeur);
                                }
                                //}
                                //else
                                //{
                                //    MessageBox.Show("Une erreur s'est produite lors de la lecture d'un inscrit, veuillez vérifier l'état dse votre base de Données, avec le message : " + messErreur);
                                //}

                                if (faireMaj == true)
                                {
                                    // Verification si transpondeur deja existant, ex : passé deux fois devant le portique.

                                    DbArrivee       dejaArrivee       = new DbArrivee();
                                    MySqlDataReader readerDejaArrivee = dejaArrivee.LectureUnArrivee(idInscrit);

                                    if (readerDejaArrivee != null)          // on teste si la requete a bien retournéer un résultat
                                    {
                                        // Vérifie si des données sont présente dans reader

                                        if (readerDejaArrivee.HasRows)
                                        {
                                            DialogResult refaireEnreg = MessageBox.Show("ATTENTION : ce badge est deja enregistré, refaire l'enregistrement ?", "Enregistrer encore !", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                                            if (refaireEnreg == DialogResult.No)
                                            {
                                                modifierEnreg = false;
                                                ecrireEnreg   = false;
                                            }
                                            else
                                            {
                                                modifierEnreg = true;
                                                readerDejaArrivee.Read();
                                                idArrivee = Convert.ToInt16(readerDejaArrivee.GetString(0));
                                            }
                                        }
                                    }

                                    if (ecrireEnreg == true)
                                    {
                                        if (modifierEnreg == true)
                                        {
                                            Arrivee   modifArrivee    = new Arrivee(arriveeCoureur, idInscrit);
                                            DbArrivee ModifierArrivee = new DbArrivee();
                                            (bool result, string messErreur) = ModifierArrivee.ModifierArrivee(modifArrivee, idArrivee);
                                            if (result == false)
                                            {
                                                MessageBox.Show("La création à échouée, veuillez vérifier l'état de votre base de Données" + messErreur);
                                            }
                                            else
                                            {
                                                MessageBox.Show("Arrivée du coureur mise à jour !");
                                            }
                                        }
                                        else
                                        {
                                            Arrivee   creeArrivee  = new Arrivee(arriveeCoureur, idInscrit);
                                            DbArrivee AjoutArrivee = new DbArrivee();
                                            bool      result       = AjoutArrivee.AjouterArrivee(creeArrivee);
                                            if (result == false)
                                            {
                                                MessageBox.Show("La création à échouée, veuillez vérifier l'état de votre base de Données");
                                            }
                                            else
                                            {
                                                MessageBox.Show("Arrivée du coureur effectuée !");
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                try
                {
                    Thread.Sleep(Timeout.Infinite);
                }
                catch (ThreadInterruptedException e)
                {
                }
            }