예제 #1
0
        private void btnGo_Click(object sender, EventArgs e)
        {
            if (txtQuery.Text == "")
            {
                return;
            }
            var dbCon = DBConnetion.Instance();

            dbCon.DatabaseName = "ugc";
            if (dbCon.IsConnect())
            {
                string query  = txtQuery.Text; //" call clients_all()";//"SELECT * FROM tiers";
                var    cmd    = new MySql.Data.MySqlClient.MySqlCommand(query, dbCon.Connection);
                var    reader = cmd.ExecuteReader();


                while (reader.Read())
                {
                    int    id      = reader.GetInt16("id");
                    string code    = (reader.IsDBNull(1)) ? "" : reader.GetString("code");
                    string famille = (reader.IsDBNull(2)) ? "" : reader.GetString("famille");
                    string raison  = (reader.IsDBNull(3)) ? "" : reader.GetString("raison");
                    //raison = reader.GetString("raison");
                    decimal solde           = reader.GetDecimal("solde");
                    string  fixe            = (reader.IsDBNull(5)) ? "" : reader.GetString("fixe");
                    string  mobile          = (reader.IsDBNull(6)) ? "" : reader.GetString("mobile");
                    string  email           = (reader.IsDBNull(7)) ? "" : reader.GetString("email");
                    string  fax             = (reader.IsDBNull(8)) ? "" : reader.GetString("fax");
                    decimal chiffre_affaire = reader.GetDecimal("chiffre_affaire");
                    string  ville           = (reader.IsDBNull(10)) ? "" : reader.GetString("ville");
                    string  modereglement   = (reader.IsDBNull(11)) ? "" : reader.GetString("modereglement");
                    string  type            = (reader.IsDBNull(12)) ? "" : reader.GetString("type");
                    string  adresse         = (reader.IsDBNull(13)) ? "" : reader.GetString("adresse");

                    txtResult.Text += id + "\t" + code + "\t" + raison + "\t"
                                      + fixe + "\t" + mobile + "\t" + fax + "\t" + email + "\t"
                                      + famille + "\t" + solde + "\t" + chiffre_affaire + "\t"
                                      + ville + "\t" + modereglement + "\t" + type + "\t" + adresse + "\r\n";

                    /*
                     * Console.WriteLine(id + "\t" + code + "\t" + raison + "\t"
                     + fixe + "\t" + mobile + "\t" + fax + "\t" + email + "\t"
                     + famille + "\t" + solde + "\t" + chiffre_affaire + "\t"
                     + ville + "\t" + modereglement + "\t" + type + "\t" + adresse
                     +                );
                     */
                }
                Console.WriteLine(reader.GetSchemaTable().TableName);

                reader.Close();

                // dbCon.Close();
            }
        }
        //Funcion encargada de generar todos los loads del juego
        private void Loading()
        {
            //Instanciacion del ArkanoidControl
            ac = new ArkanoidControl
            {
                Dock   = DockStyle.Fill,
                Width  = Width,
                Height = Height
            };

            //Action GameEnded que vuelve al menu al terminar el juego
            ac.GameEnded = () =>
            {
                MessageBox.Show("PERDISTE");
                var menuForm = new Menu();
                menuForm.Show();
                Dispose();
            };

            //Action GameWon que vuelve al menu al ganar la partida y guarda los datos del ganador
            ac.GameWon = () =>
            {
                var id = DBConnetion.RealizarConsulta($"select id from users where name='{TxtName.Text}'").Rows[0][0].
                         ToString();
                var maximo = DBConnetion.RealizarConsulta($"select attempt from attempts" +
                                                          $" where id_user = '******' ORDER BY attempt DESC FETCH FIRST 1 ROWS ONLY");

                int val;

                if (maximo.Rows.Count == 0)
                {
                    val = 1;
                }
                else
                {
                    val = Convert.ToInt32(maximo.Rows[0][0].ToString()) + 1;
                }

                DBConnetion.RealizarAccion($"INSERT into ATTEMPTS(id_user,attempt,score) VALUES('{Convert.ToInt32(id)}', {val},{GameData.score})");
                MessageBox.Show("GANASTE LA PARTIDA");
                var menuForm = new Menu();
                menuForm.Show();
                Dispose();
            };
        }
예제 #3
0
파일: Test.cs 프로젝트: ftillouhamid/Ugc
        private void openDbAnsBind()
        {
            var dbCon = DBConnetion.Instance();

            dbCon.DatabaseName = "ugc";
            if (dbCon.IsConnect())
            {
                MySqlDataAdapter Da    = new MySqlDataAdapter();
                string           query = "Call clients_all()";
                Da.SelectCommand = new MySqlCommand(query, dbCon.Connection);
                DataTable table = new DataTable();
                Da.Fill(table);
                BindingSource bsource = new BindingSource();
                bsource.DataSource = table;


                dgClients.DataSource = bsource;
                // dgClients.DataBindingComplete();
            }
        }
예제 #4
0
        //funcion tipo Datatable que se encarga de obetener el top 10 de la base de datos
        public static DataTable GetTopTen(ref List <string> headers)
        {
            List <ScoreModel> TopTen     = new List <ScoreModel>();
            DataTable         TableScore = DBConnetion.RealizarConsulta($"select users.name as usuario, t.attempt as intento, t.score as puntaje from " +
                                                                        $"(SELECT distinct on (id_user) id_user, attempt, score from attempts ORDER BY id_user, score DESC) as t " +
                                                                        $"inner join users on t.id_user = users.id  ORDER BY t.score desc fetch first 10 rows only");

            foreach (DataColumn dc in TableScore.Columns)
            {
                headers.Add(dc.ColumnName);
            }


            foreach (DataRow dr in TableScore.Rows)
            {
                TopTen.Add(new ScoreModel(
                               dr[0].ToString(),
                               dr[1].ToString(),
                               dr[2].ToString()
                               ));
            }

            return(TableScore);
        }
        //Evento el cual se encarga de cargar el ArkanoidControl y de cominar el nombre entre
        //este Form y el ArkanoidContro
        private void BtnPlay_Click(object sender, EventArgs e)
        {
            try
            {
                //se manda a llamar el InitializeGame para que se actualicen los datos al volver a jugar
                GameData.InitializeGame();
                //se cargan los Action y propiedades del ArkanoidControl
                Loading();
                //se invoca el delegate
                gn?.Invoke(TxtName.Text);

                string nombre = TxtName.Text;
                //variable tipo data table
                var consultar = DBConnetion.RealizarConsulta($"SELECT * FROM USERS " +
                                                             $"where name = '{nombre}'");

                string agregar = $"INSERT into USERS(name) VALUES('{nombre}')";

                //hacemos uso del delegate para comunicar el nombre entre este form y el arkanoud control
                gn = nick =>
                {
                    switch (TxtName.Text)
                    {
                    case string aux when aux.Length > 16:
                        throw new ExceededMaxCharactersException(
                                  "No se puede ingresar un alias de mas de 16 caracteres");

                    case string aux when aux.Trim().Length == 0:
                        throw new EmpyNicknameException("Debe ingresar un nombre de usuario");

                    default:    //en caso de que no se cumpla ningun caso de excepcion, se corre el juego
                        //verifiica si el usuario ya existe en la base de datos
                        if (consultar.Rows.Count == 1)
                        {
                            MessageBox.Show($"Bienvenido de nuevo {nick}", "Game");
                            tableLayoutPanel1.Hide();
                            Text = "Arkanoid";
                        }
                        //si no existe lo agrega
                        else
                        {
                            //Agregando User a DB
                            DBConnetion.RealizarAccion(agregar);
                            MessageBox.Show($"Gracias por registrarte {nick} \n Presiona OK para comenzar a jugar");
                            //Cambiando el control del tableLayout por ArkanoidControl
                            tableLayoutPanel1.Hide();
                            Text = "Arkanoid";
                        }
                        Controls.Add(ac);
                        break;
                    }
                };
            }
            catch (ExceededMaxCharactersException ex)
            {
                MessageBox.Show(ex.Message);
            }
            catch (EmpyNicknameException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }