private void buttonConferma_Click(object sender, EventArgs e)
        {
            if (CountSelectedRowInDataGrid() != atletiAmmessiEliminatorie)
            {
                MessageBox.Show("Il numero di atleti selezionati non è " + atletiAmmessiEliminatorie + ": controllare la lista", "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                List <AtletaEliminatorie> listaQualificati = new List <AtletaEliminatorie>();
                int posizione = 1;
                foreach (DataGridViewRow r in dataGridView1.Rows)
                {
                    if (((bool)r.Cells[0].Value == true) && posizione <= atletiAmmessiEliminatorie)
                    {
                        listaQualificati.Add(new AtletaEliminatorie()
                        {
                            IdAtleta     = (int)r.Cells[4].Value,
                            IdTorneo     = (int)r.Cells[1].Value,
                            idDisciplina = (int)r.Cells[2].Value,
                            Posizione    = posizione
                        }
                                             );
                        posizione++;
                    }
                }

                SqlDal_Pools.DeleteAllPahases(idTorneo, idDisciplina);

                if (atletiAmmessiEliminatorie == 32)
                {
                    SqlDal_Pools.InsertSedicesimi(listaQualificati);
                }
                else if (atletiAmmessiEliminatorie == 16)
                {
                    SqlDal_Pools.InsertOttavi(listaQualificati);
                }
                else if (atletiAmmessiEliminatorie == 8)
                {
                    SqlDal_Pools.InsertQuarti(listaQualificati);
                }
                else if (atletiAmmessiEliminatorie == 4)
                {
                    SqlDal_Pools.InsertSemifinali(SetCampoForSemifinali(listaQualificati));
                }

                SqlDal_Pools.ConcludiGironi(idTorneo, idDisciplina);

                //va fatta la lista di output per la generazione degli incontri
                //in realtà qui salvo semplicemente i dati sui Qualificati 'atletiAmmessiEliminatorie'
                //poi la form1 li carica e genera gli incontri diretti

                this.Close();
            }
        }
예제 #2
0
        private void btnSaveResult_Click(object sender, RoutedEventArgs e)
        {
            if (_currentSelectedItems != atletiAmmessiEliminatorie)
            {
                System.Windows.Forms.MessageBox.Show("Il numero di atleti selezionati non è " + atletiAmmessiEliminatorie + ": controllare la lista", "ERRORE",
                                                     System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
            }
            else
            {
                List <AtletaEliminatorie> listaQualificati = new List <AtletaEliminatorie>();

                int posizione = 1;

                foreach (GironiConclusi a in dataGridResult.Items)
                {
                    if (a.Qualificato)
                    {
                        listaQualificati.Add(new AtletaEliminatorie()
                        {
                            IdAtleta     = a.IdAtleta,
                            IdTorneo     = a.IdTorneo,
                            idDisciplina = a.IdDisciplina,
                            Posizione    = posizione
                        }
                                             );
                        posizione++;
                    }
                }

                CreateNextPhase(listaQualificati);

                SqlDal_Pools.ConcludiGironi(idTorneo, idDisciplina);

                WindowCheckResult = true;
                this.Close();
            }
        }