Example #1
0
        private void EditTab_Click(object sender, EventArgs e)
        {
            using TabSettings tab = new TabSettings("Изменить вкладку", TabMarks.TabPages[TabMarks.SelectedIndex].Text, tables[TabMarks.SelectedIndex].type);

            tab.ShowDialog();

            if (tab.nameTab != "")
            {
                TabMarks.TabPages[TabMarks.SelectedIndex].Text = tab.nameTab;

                if (tab.type != tables[TabMarks.SelectedIndex].type)
                {
                    DialogResult quest = DialogResult.No;

                    if (tables[TabMarks.SelectedIndex].startEdit)
                    {
                        quest = MessageBox.Show("Вы сменили тип среднего балла, сохранить текущую таблицу?", "Сохранить?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    }

                    if (quest == DialogResult.Yes)
                    {
                        saveFile.PerformClick();
                    }

                    tables[TabMarks.SelectedIndex].type = tab.type;

                    ResetClass rst = new ResetClass(tables[TabMarks.SelectedIndex], tables[TabMarks.SelectedIndex].marks);

                    tables[TabMarks.SelectedIndex] = rst.Reset(tab.type);
                }
            }
        }
Example #2
0
        private void ClearTable_Click(object sender, EventArgs e)
        {
            DialogResult resultDial = MessageBox.Show("Вы уверены что хотите очистить таблицу?", "Очистить таблицу?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (resultDial == DialogResult.Yes)
            {
                ResetClass rst = new ResetClass(tables[TabMarks.SelectedIndex], tables[TabMarks.SelectedIndex].marks);

                tables[TabMarks.SelectedIndex] = rst.Reset(tables[TabMarks.SelectedIndex].type);
            }
        }
Example #3
0
        private void AddTabFunc(bool type = true, bool newTab = false)
        {
            if (!newTab)
            {
                using TabSettings tab = (tables == null ? null : new TabSettings("Создать вкладку", "Пример 1", type));

                if (tables != null)
                {
                    tab.ShowDialog();
                }

                tables ??= new List <MarksTable>();

                TabMarks.TabPages.Add(tab == null ? "Вкладка 1" : tab.nameTab);
                TabMarks.SelectedIndex = TabMarks.TabCount - 1;
                tables.Add(new MarksTable());

                DataGridView grid = new DataGridView
                {
                    Dock             = DockStyle.Fill,
                    ReadOnly         = false,
                    ContextMenuStrip = TableMenu,
                    AllowDrop        = true
                };

                grid.DragDrop    += DropFile;
                grid.DragEnter   += DragEnter;
                grid.CellEndEdit += (obj, ev) => CellFormating(obj, ev);


                TabMarks.TabPages[TabMarks.SelectedIndex].Controls.Add(grid);

                ResetClass rst = new ResetClass(tables[TabMarks.SelectedIndex], grid);

                tables[TabMarks.SelectedIndex] = rst.Reset(tab == null ? type : tab.type);
            }
            else
            {
                using TabSettings tab = new TabSettings("Создать вкладку", "Пример 1", type);

                TabMarks.TabPages.Add("Пример 1");
                TabMarks.SelectedIndex = TabMarks.TabCount - 1;
                tables.Add(new MarksTable());

                DataGridView grid = new DataGridView
                {
                    Dock             = DockStyle.Fill,
                    ReadOnly         = false,
                    ContextMenuStrip = TableMenu,
                    AllowDrop        = true
                };

                grid.DragDrop    += DropFile;
                grid.DragEnter   += DragEnter;
                grid.CellEndEdit += (obj, ev) => CellFormating(obj, ev);


                TabMarks.TabPages[TabMarks.SelectedIndex].Controls.Add(grid);

                ResetClass rst = new ResetClass(tables[TabMarks.SelectedIndex], grid);

                tables[TabMarks.SelectedIndex] = rst.Reset(type);
            }
        }
Example #4
0
        private void AddMarksFromDnevnik_Click(object sender, EventArgs e)
        {
            LoginReturn login         = CheckLoginInDnevnik();
            bool        closedSuccess = login.closedSuccess;
            string      keyAccess     = login.keyAccess;

            if (closedSuccess)
            //try
            {
                DnevnikWork workDnevnik = new DnevnikWork((keyAccess == "" ? Properties.Settings.Default.keyAccess : keyAccess));

                if (tables[TabMarks.SelectedIndex].startEdit == true)
                {
                    DialogResult rsl = MessageBox.Show("Сохранить таблицу в файл?\nТекущая таблица будет очищена перед вставкой оценок из ЭЖ.", "Сохранить?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                    if (rsl == DialogResult.Yes)
                    {
                        saveFile.PerformClick();
                    }
                }

                ResetClass rst = new ResetClass(tables[TabMarks.SelectedIndex], tables[TabMarks.SelectedIndex].marks);
                ApiDiary   api = new ApiDiary(keyAccess == "" ? Properties.Settings.Default.keyAccess : keyAccess);

                long personId = ((JObject)JsonConvert.DeserializeObject(api.GetContext()))["personId"].Value <long>();
                var  groups   = workDnevnik.GetAllGroups(workDnevnik.GetMembers());

                using SelectDataChildren criteriaForm = new SelectDataChildren(workDnevnik.GetMembers(groups, Properties.Settings.Default.marksClassmates), workDnevnik.GetMembers(), groups);
                criteriaForm.ShowDialog();

                if (criteriaForm.closeWindow)
                {
                    Status.Visible = true;

                    loadBar.Value = 20;
                    loadBar.Style = ProgressBarStyle.Marquee;
                    loadBar.MarqueeAnimationSpeed = 45;
                    TabMarks.Enabled = false;
                    LabelLoad.Text   = "Ожидайте пока программа вставит все оценки.";
                    Tools.Enabled    = false;
                    tables[TabMarks.SelectedIndex].marks.Enabled = false;

                    int indexTab = TabMarks.SelectedIndex;

                    var test = workDnevnik.GetAllGroups(workDnevnik.GetMembers());

                    SelectChildren children = new SelectChildren()
                    {
                        table     = tables[indexTab],
                        Reset     = rst,
                        EndDate   = criteriaForm.EndDate.Value,
                        StartDate = criteriaForm.StartDate.Value,
                        Member    = workDnevnik.GetMembers(workDnevnik.GetAllGroups(workDnevnik.GetMembers()), Properties.Settings.Default.marksClassmates)[criteriaForm.indexGroup][criteriaForm.indexChild],
                        group     = workDnevnik.GetAllGroups(workDnevnik.GetMembers())[criteriaForm.indexChildGroup][criteriaForm.indexGroup]
                    };

                    WorkBack                     = new BackgroundWorker(); //WorkBack.DoWork += (obj, ea) =>
                    WorkBack.DoWork             += (obj, ea) => workDnevnik.GetMarksDiary(children);
                    WorkBack.RunWorkerCompleted += (obj, ea) => WorkBack_RunWorkerCompleted(workDnevnik);
                    WorkBack.RunWorkerAsync();
                }
            }
            //catch (Exception ex) { MessageBox.Show("Непредвиденная ошибка!\nПопробуйте повторить попытку, поменять параметры или перезапустить программу!"); Clipboard.SetText(ex.Message); }
        }