Example #1
0
        protected override bool Save()
        {
            base.Save();
            try
            {
                ArrayList alQueries = new ArrayList();

                using (PriemEntities context = new PriemEntities())
                {
                    using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.RequiresNew))
                    {
                        try
                        {
                            //меняет тип конкурса
                            foreach (DataGridViewRow r in dgvLeft.Rows)
                            {
                                SortedList slVals = new SortedList();
                                Guid?      abitId = new Guid(r.Cells["Id"].Value.ToString());


                                int?compNew = (from ab in context.extAbit
                                               where ab.Id == abitId
                                               select ab.OtherCompetitionId).FirstOrDefault();
                                if (compNew == null)
                                {
                                    compNew = 4;
                                }
                                if (compNew < 1 || compNew > 7)
                                {
                                    compNew = 4;
                                }

                                context.Abiturient_UpdateCompetititon(compNew, null, false, abitId);
                            }

                            transaction.Complete();
                        }
                        catch (Exception exc)
                        {
                            throw new Exception("Ошибка при сохранении данных: " + exc.Message);
                        }
                    }
                }
                return(true);
            }

            catch (Exception ex)
            {
                MessageBox.Show("Ошибка при изменении типа конкурса: " + ex.Message);
                return(false);
            }
        }
Example #2
0
        protected override bool Save()
        {
            if (!base.Save())
            {
                MessageBox.Show("Не удалось сохранить протокол.\nИзменения не сохранены");
                return(false);
            }
            try
            {
                ArrayList alQueries = new ArrayList();

                using (PriemEntities context = new PriemEntities())
                {
                    using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.RequiresNew))
                    {
                        try
                        {
                            //меняет тип конкурса + снимает отметку
                            foreach (DataGridViewRow r in dgvLeft.Rows)
                            {
                                SortedList slVals  = new SortedList();
                                Guid?      abitId  = new Guid(r.Cells["Id"].Value.ToString());
                                int?       compNew = 4;

                                context.Abiturient_UpdateCompetititon(compNew, null, false, abitId);
                                context.Abiturient_UpdateHasOriginals(false, abitId);//оригиналы больше "не поданы"
                            }

                            transaction.Complete();
                        }
                        catch (Exception exc)
                        {
                            throw new Exception("Ошибка при сохранении данных: " + exc.Message);
                        }
                    }
                }
                return(true);
            }

            catch (Exception ex)
            {
                MessageBox.Show("Ошибка при изменении типа конкурса: " + ex.Message);
                return(false);
            }
        }
Example #3
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            DialogResult res = MessageBox.Show("Подтвердить зачет олимпиад у выбранных заявлений как тип конкурса б/э? (необходимо будет создать новый протокол о допуске для всех выбранных абитуриентов!)", "Зачет олимпиад", MessageBoxButtons.YesNoCancel);

            if (res == DialogResult.Yes)
            {
                try
                {
                    using (PriemEntities context = new PriemEntities())
                    {
                        using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.RequiresNew))
                        {
                            foreach (DataGridViewRow row in dgvAbitList.Rows)
                            {
                                if (row.Cells["Изменить тип конкурса"].Value.ToString() == "True")
                                {
                                    Guid abId = new Guid(row.Cells["Id"].Value.ToString());

                                    context.Abiturient_UpdateCompetititon(1, null, true, abId);
                                    context.Abiturient_UpdateChecked(false, abId);

                                    //исключаем из предыдущего протокола о допуске
                                    Guid?protId = (from pr in context.qProtocolHistory
                                                   where pr.AbiturientId == abId && !pr.Excluded && !pr.IsOld
                                                   select pr.ProtocolId).FirstOrDefault();

                                    if (protId != null)
                                    {
                                        context.ProtocolHistory_UpdateExcluded(abId, protId, true, null);
                                    }
                                }
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    WinFormsServ.Error("Ошибка при сохранении перезачета оценок. Оценки перезачтены не будут. " + ex.Message);
                }

                UpdateDataGrid();
            }
        }