private void Path_textBox_TextChanged(object sender, EventArgs e)
        {
            groupNumber_comboBox.Items.Clear();
            groupName_textBox.Text = "";
            GroupAgeCategoryList.Clear();

            folderName = Path_textBox.Text;
            try
            {
                tournir = SecretaryController.TakeTournir(folderName);
                for (int i = 0; i < tournir.groups.Count; i++)
                {
                    groupNumber_comboBox.Items.Add(tournir.groups[i].number);
                    MessageBox.Show("Категорий в группе " + (i + 1).ToString() + " " + tournir.groups[i].number.ToString());
                    for (int j = 0; j < tournir.groups[i].CategoryList.Count; j++)
                    {
                        if (!GroupAgeCategoryList.Contains(tournir.groups[i].CategoryList[j]))
                        {
                            MessageBox.Show(tournir.groups[i].CategoryList[j]);
                            GroupAgeCategoryList.Add(tournir.groups[i].CategoryList[j]);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #2
0
        public HoldingTournament(secretaryMainForm PreviousForm)
        {
            InitializeComponent();
            tournamentIsAlive = false;
            this.previousForm = PreviousForm;
            this.tournir      = PreviousForm.tournir;
            //TestAddingDuets(tournir);

            tourList       = new List <Tour>();
            tourButtonList = new List <Button>();
        }
Example #3
0
        private void backbutton_Click(object sender, EventArgs e)
        {
            this.secretaryMainForm.Enabled = true;
            this.Hide();

            this.secretaryMainForm.tournir = this.tournir;
            if (this.Path_textBox.Text != "")
            {
                this.secretaryMainForm.Path_textBox.Text = this.Path_textBox.Text;
            }
        }
Example #4
0
 private void Path_textBox_TextChanged(object sender, EventArgs e)
 {
     folderName = Path_textBox.Text;
     //try
     //{
     tournir = SecretaryController.TakeTournir(folderName);
     //}
     //catch (Exception ex)
     //{
     //    MessageBox.Show(ex.Message);
     //}
 }
Example #5
0
        public secretaryForm()
        {
            InitializeComponent();
            tournir = new TournirClass();

            CreateGroup_button.Visible = true;
            //CreateSet_button.Visible = true;

            CreateGroupSecond_button.Visible = false;
            Categoriess_groupBox.Visible     = false;
            label_NumberOfGroup.Visible      = false;
            NumberOfGroup_textBox.Visible    = false;
            BackSecond_button.Visible        = false;
        }
Example #6
0
        public void TestAddindDuets(TournirClass ourTournir)
        {
            Random rnd = new Random();

            for (int j = 0; j < ourTournir.groups.Count; j++)
            {
                foreach (SetClass item in ourTournir.groups[j].SetList)
                {
                    for (int i = 0; i < rnd.Next() % 5 + 1; i++)
                    {
                        item.DuetList.Add(new Duet(i));
                    }
                }
            }
        }
Example #7
0
 private void Path_textBox_TextChanged(object sender, EventArgs e)
 {
     folderName = Path_textBox.Text;
     try
     {
         tournir = SecretaryController.TakeTournir(folderName);
         for (int i = 0; i < tournir.groups.Count; i++)
         {
             groupNumber_comboBox.Items.Add(tournir.groups[i].number);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Example #8
0
        //public CheckBox[] judgeChessCheckList = new CheckBox[0, 0];

        public secretaryForm(secretaryMainForm secretaryMainForm)
        {
            InitializeComponent();
            //tournir = new TournirClass();
            tournir = secretaryMainForm.tournir;
            this.secretaryMainForm = secretaryMainForm;

            judgeGroupBox.Visible        = false;
            Categoriess_groupBox.Visible = false;
            CreateGroup_button.Visible   = true;
            //CreateSet_button.Visible = true;

            CreateGroupSecond_button.Visible = false;
            Categoriess_groupBox.Visible     = false;
            //creatingSet_groupBox.Visible = false;

            label_NumberOfGroup.Visible   = false;
            NumberOfGroup_textBox.Visible = false;
            BackSecond_button.Visible     = false;

            judgeChessPanel.Visible = false;
        }
Example #9
0
 public GradingForm(secretaryMainForm PreviousForm)
 {
     InitializeComponent();
     this.tournir      = PreviousForm.tournir;
     this.previousForm = PreviousForm;
 }
 public formationReglament(secretaryMainForm secretaryPreviousForm)
 {
     InitializeComponent();
     this.previousForm = secretaryPreviousForm;
     this.tournir      = this.previousForm.tournir;
 }
        public static TournirClass TakeTournir(string cn)
        {
            connectString = $"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={cn}";
            myConnection  = new OleDbConnection(connectString);
            myConnection.Open();
            int Num = 1;

            TournirClass RetTournir = new TournirClass();

            OleDbCommand command1 = new OleDbCommand("", myConnection);
            OleDbCommand command2 = new OleDbCommand("", myConnection);
            OleDbCommand command3 = new OleDbCommand("", myConnection);
            OleDbCommand command4 = new OleDbCommand("", myConnection);
            OleDbCommand command5 = new OleDbCommand("", myConnection);
            OleDbCommand command6 = new OleDbCommand("", myConnection);
            OleDbCommand command7 = new OleDbCommand("", myConnection);

            command1.CommandText = "SELECT Название FROM tournir WHERE ID = @Num";
            command1.Parameters.AddWithValue("Num", Num);

            command2.CommandText = "SELECT Дата_Проведения FROM tournir WHERE ID = @Num";
            command2.Parameters.AddWithValue("Num", Num);

            command3.CommandText = "SELECT Время_Проведения FROM tournir WHERE ID = @Num";
            command3.Parameters.AddWithValue("Num", Num);

            command4.CommandText = "SELECT Место_Проведения FROM tournir WHERE ID = @Num";
            command4.Parameters.AddWithValue("Num", Num);

            command5.CommandText = "SELECT Организация FROM tournir WHERE ID = @Num";
            command5.Parameters.AddWithValue("Num", Num);

            command6.CommandText = "SELECT ФИО_Секретаря FROM tournir WHERE ID = @Num";
            command6.Parameters.AddWithValue("Num", Num);

            command7.CommandText = "SELECT ФИО_Регистратора FROM tournir WHERE ID = @Num";
            command7.Parameters.AddWithValue("Num", Num);

            try
            {
                RetTournir.name = command1.ExecuteScalar().ToString();
                RetTournir.date.ToInt(command2.ExecuteScalar().ToString());
                RetTournir.time.ToInt(command3.ExecuteScalar().ToString());
                RetTournir.place        = command4.ExecuteScalar().ToString();
                RetTournir.organisation = command5.ExecuteScalar().ToString();
                RetTournir.secretary    = command6.ExecuteScalar().ToString();
                RetTournir.registrator  = command7.ExecuteScalar().ToString();

                //MessageBox.Show($"Турнир: {RetTournir.name}\nДата: {RetTournir.date}\nВремя: {RetTournir.time}\nМесто: {RetTournir.place}\nОрганизация: {RetTournir.organisation}\nСекретарь: {RetTournir.secretary}\nРегистратор: {RetTournir.registrator}");
                //myConnection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Упс, что-то пошло не так... код 1\nError: " + ex.Message);
            } //заполнение Турнира

            try
            {
                int    i    = 1;
                int    k    = 0;
                string name = "";

                command             = new OleDbCommand("", myConnection);
                command.CommandText = "SELECT COUNT(Номер_Группы) FROM groups";
                k = Convert.ToInt32(command.ExecuteScalar());

                //MessageBox.Show("Количество групп: " + Convert.ToString(k));

                while (i <= k)
                {
                    myConnection = new OleDbConnection(connectString);
                    myConnection.Open();
                    command             = new OleDbCommand("", myConnection);
                    command.CommandText = "SELECT Категория FROM groups WHERE Номер_Группы = @id";
                    command.Parameters.AddWithValue("id", i);
                    name = Convert.ToString(command.ExecuteScalar());
                    RetTournir.groups.Add(new GroupClass(i, RetTournir.name, name));

                    RetTournir.groups[i - 1].CategoryList = TakeCategory(RetTournir.groups[i - 1], cn);
                    RetTournir.groups[i - 1].DancesList   = TakeDances(RetTournir.groups[i - 1], cn);
                    RetTournir.groups[i - 1].JudgeList    = TakeJudges(RetTournir.groups[i - 1], cn);
                    //MessageBox.Show(RetTournir.groups[i - 1].show());

                    //MessageBox.Show("Вытягивание списка пар");
                    RetTournir.groups[i - 1].duetList = TakeDuets(RetTournir.groups[i - 1], cn);
                    //MessageBox.Show(RetTournir.groups[i - 1].show());
                    i++;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Упс, что-то пошло не так при определении списка групп\nError: " + ex.Message);
            } //заполнение групп

            try
            {
                myConnection = new OleDbConnection(connectString);
                myConnection.Open();

                BitArray checkArray = Controller.GapCounter("Номер", "judges", myConnection);

                int i1      = 0;
                int counter = 0;
                int k1      = 0;
                int max     = 0;

                command             = new OleDbCommand("", myConnection);
                command.CommandText = "SELECT COUNT(Номер) FROM judges";

                command3             = new OleDbCommand("", myConnection);
                command3.CommandText = "SELECT MAX(Номер) FROM judges";

                k1 = Convert.ToInt32(command.ExecuteScalar());
                //MessageBox.Show("Количество судей: " + Convert.ToString(k1));

                if (k1 > 0)
                {
                    max = Convert.ToInt32(command3.ExecuteScalar());
                    //MessageBox.Show("Максимальный номер судьи: " + Convert.ToString(max));

                    foreach (bool item in checkArray)
                    {
                        if (i1 < max)
                        {
                            if (checkArray[i1])
                            {
                                Judge judge_new = new Judge();

                                command1 = new OleDbCommand("SELECT ФИО FROM judges WHERE Номер = @id", myConnection);                 //NSP
                                command1.Parameters.AddWithValue("id", i1 + 1);
                                command2 = new OleDbCommand("SELECT Категория_Судейства FROM judges WHERE Номер = @id", myConnection); //JudjeClass
                                command2.Parameters.AddWithValue("id", i1 + 1);

                                judge_new.ToJudge(command1.ExecuteScalar().ToString());
                                judge_new.JudgeClass = command2.ExecuteScalar().ToString();
                                judge_new.Number     = (ushort)(i1 + 1);
                                judge_new.judgeChar  = (char)(64 + judge_new.Number);
                                RetTournir.judges.Add(judge_new);
                                //MessageBox.Show(RetTournir.judges[i1 - counter].ToNSP() + " " + RetTournir.judges[i1 - counter].JudgeClass);
                            }
                            else
                            {
                                counter++;
                            }
                        }
                        i1++;
                    }
                }
                else
                {
                    //MessageBox.Show($"Не зарегистрировано ниодного судьи!");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Упс, что-то пошло не так при определении списка судей\nError: " + ex.Message);
            } //заполнение судей

            myConnection.Close();
            RetTournir.Show();

            return(RetTournir);
        }
Example #12
0
        private void Create_button_Click(object sender, EventArgs e)
        {
            if (Name_textBox.Text != "" && Path_textBox.Text != "" && DayOfTournir_comboBox.SelectedIndex != -1 && MounthOfTournir_comboBox.SelectedIndex != -1 &&
                HourTournirStart_comboBox.SelectedIndex != -1 && MinutesTournirStart_comboBox.SelectedIndex != -1 && CityOfTournir_textBox.Text != "" && OrganisationOfTournir_textBox.Text != "")
            {
                folderName  = "";
                folderName  = Path_textBox.Text;
                dbName      = Name_textBox.Text;
                folderName += '\\';
                folderName += dbName;

                try
                {
                    ADOX.Catalog BD = new ADOX.Catalog();
                    BD.Create($"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={folderName}.mdb;Jet OLEDB:Engine Type=5");

                    OleDbConnection cn = new OleDbConnection($"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={folderName}.mdb");
                    cn.Open();
                    OleDbCommand com = new OleDbCommand();

                    //Создание Таблицы Турнира
                    com = new OleDbCommand("CREATE TABLE tournir(ID COUNTER, Название CHAR(50), Дата_Проведения CHAR(10),  Время_Проведения CHAR(5),  Место_Проведения CHAR(150), Организация CHAR(50), ФИО_Секретаря CHAR(100), ФИО_Регистратора CHAR(100), CONSTRAINT tournir_pk PRIMARY KEY (Название))", cn);
                    com.ExecuteNonQuery();

                    //Создание Таблицы Групп
                    com = new OleDbCommand("CREATE TABLE groups(Номер_Группы COUNTER, Название_Турнира CHAR(50), Время CHAR(5), Категория CHAR(50), Категории CHAR(50), Танцы CHAR(50), Судьи CHAR(50), CONSTRAINT groups_pk PRIMARY KEY (Номер_Группы), CONSTRAINT fk_groups FOREIGN KEY (Название_Турнира) REFERENCES tournir(Название))", cn);
                    com.ExecuteNonQuery();

                    //Создание Таблицы Категорий
                    com = new OleDbCommand("CREATE TABLE categories(Номер INT, Номер_Группы INT, Категория CHAR(6), CONSTRAINT fk_categories FOREIGN KEY (Номер_Группы) REFERENCES groups(Номер_Группы))", cn);
                    com.ExecuteNonQuery();

                    //Создание Таблицы Танцев
                    com = new OleDbCommand("CREATE TABLE dances(Номер COUNTER, Номер_Группы INT, Танец CHAR(5), CONSTRAINT fk_dances FOREIGN KEY (Номер_Группы) REFERENCES groups(Номер_Группы))", cn);
                    com.ExecuteNonQuery();

                    //Создание Таблицы Судей
                    com = new OleDbCommand("CREATE TABLE judges(Номер COUNTER, Название_Турнира CHAR(50), ФИО CHAR(100), Категория_Судейства CHAR(20), CONSTRAINT judges_pk PRIMARY KEY (Номер), CONSTRAINT fk_judges FOREIGN KEY (Название_Турнира) REFERENCES tournir(Название))", cn);
                    com.ExecuteNonQuery();

                    //Создание Таблицы Участников
                    //com = new OleDbCommand("CREATE TABLE participants(Номер COUNTER DEFAULT 0, Номер_Книжки INT, Фамилия CHAR(50), Имя CHAR(50), Отчество CHAR(50), Категория CHAR(5), Номер_Группы INT, Счет INT DEFAULT 0)", cn);
                    com = new OleDbCommand("CREATE TABLE participants(Номер COUNTER DEFAULT 0, Фамилия CHAR(50), Имя CHAR(50), Отчество CHAR(50), Категория CHAR(5), Номер_Группы INT, Счет INT DEFAULT 0)", cn);
                    com.ExecuteNonQuery();

                    com = new OleDbCommand("CREATE TABLE duets(Номер INT, Номер_Группы INT DEFAULT 0, Номер_Захода INT, ФИО1 CHAR(100), ФИО2 CHAR(100), Тип CHAR(4))", cn);
                    com.ExecuteNonQuery();
                    //Создание Таблицы Заходов
                    ///доработка связей///com = new OleDbCommand("CREATE TABLE sets(Номер_Захода INT DEFAULT 0, Номер_Группы INT DEFAULT 0, Категория CHAR(5), CONSTRAINT sets_uq UNIQUE(Номер_Захода, Номер_Группы), CONSTRAINT sets_pk PRIMARY KEY (Номер_Захода, Номер_Группы), CONSTRAINT fk_sets FOREIGN KEY (Номер_Группы) REFERENCES groups(Номер_Группы))", cn);
                    //com = new OleDbCommand("CREATE TABLE sets(Номер_Захода INT DEFAULT 0, Номер_Группы INT DEFAULT 0, Категория CHAR(5), CONSTRAINT sets_pk PRIMARY KEY (Номер_Захода, Номер_Группы))", cn);
                    //com.ExecuteNonQuery();

                    //Создание Таблицы Танцев
                    //com = new OleDbCommand("CREATE TABLE dances(Номер_Книжки INT, Номер_Группы INT DEFAULT 0, Название CHAR(20), CONSTRAINT dance_pk PRIMARY KEY (Номер_Книжки, Название, Номер_Группы))", cn);
                    //com.ExecuteNonQuery();

                    //Создание Таблицы Пар
                    ///доработка связей///com = new OleDbCommand("CREATE TABLE duets(Номер_Пары COUNTER, Номер_Захода INT, CONSTRAINT duets_uq UNIQUE(Номер_Пары, Номер_Захода), CONSTRAINT duets_pk PRIMARY KEY (Номер_Пары), CONSTRAINT fk_duets FOREIGN KEY (Номер_Захода) REFERENCES sets(Номер_Захода))", cn);
                    //com = new OleDbCommand("CREATE TABLE duets(Номер INT, Номер_Группы INT DEFAULT 0, Номер_Захода INT, Номер_Книжки1 INT, Номер_Книжки2 INT, Тип CHAR(4))", cn);
                    //com.ExecuteNonQuery();

                    TournirClass NewTournir = new TournirClass();

                    NewTournir.name = Name_textBox.Text;
                    NewTournir.date = new MyDate(DayOfTournir_comboBox.SelectedIndex + 1, MounthOfTournir_comboBox.SelectedIndex + 1, Convert.ToInt32(YearOfTournir_textBox.Text));
                    NewTournir.time = new TimeClass(HourTournirStart_comboBox.SelectedIndex, MinutesTournirStart_comboBox.SelectedIndex * 5);
                    //MessageBox.Show(NewTournir.time.ToString());
                    NewTournir.place        = CityOfTournir_textBox.Text;
                    NewTournir.organisation = OrganisationOfTournir_textBox.Text;
                    NewTournir.registrator  = "SNP_registrator";
                    NewTournir.secretary    = "SNP_secretary";

                    com = new OleDbCommand("INSERT INTO tournir(Название, Дата_Проведения,  Время_Проведения,  Место_Проведения, Организация, ФИО_Секретаря, ФИО_Регистратора)" + "VALUES (@name,@date,@time,@plase,@organisation,@secretary,@registrator)", cn);
                    com.Parameters.AddWithValue("name", NewTournir.name);
                    com.Parameters.AddWithValue("date", NewTournir.date.ToString());
                    com.Parameters.AddWithValue("time", NewTournir.time.ToString());
                    com.Parameters.AddWithValue("place", NewTournir.place);
                    com.Parameters.AddWithValue("organisation", NewTournir.organisation);
                    com.Parameters.AddWithValue("secretary", NewTournir.secretary);
                    com.Parameters.AddWithValue("registrator", NewTournir.registrator);

                    try
                    {
                        com.ExecuteNonQuery();
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show($"Возникло непредвиденное исключение:\n{ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    cn.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }

                this.previousForm.Path_textBox.Text = folderName + ".mdb";
            }
            else
            {
                MessageBox.Show("Заполните все необходимые поля и повторите попытку!");
            }
        }