private void ctrlDelete_Click(object sender, EventArgs e)
        {
            Cl_Category cat = null;

            if (ctrlCategoriesTab.SelectedTab == ctrlTabTotal)
            {
                cat = (Cl_Category)ctrlCategoriesTotal.SelectedRows[0].DataBoundItem;
            }
            else if (ctrlCategoriesTab.SelectedTab == ctrlTabClinik)
            {
                cat = (Cl_Category)ctrlCategoriesClinik.SelectedRows[0].DataBoundItem;
            }
            if (cat != null)
            {
                if (MessageBox.Show($"Удалить категорию \"{cat.p_Name}\"?", "Удаление категории", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
                {
                    return;
                }
                using (var transaction = Cl_App.m_DataContext.Database.BeginTransaction())
                {
                    try
                    {
                        if (ctrlCategoriesTab.SelectedTab == ctrlTabTotal)
                        {
                            if (ctrlCategoriesTotal.SelectedRows.Count == 1)
                            {
                                if (cat != null)
                                {
                                    Cl_App.m_DataContext.p_Categories.Remove(cat);
                                    Cl_App.m_DataContext.SaveChanges();
                                    transaction.Commit();
                                    f_RefreshTotal();
                                }
                            }
                        }
                        else if (ctrlCategoriesTab.SelectedTab == ctrlTabClinik)
                        {
                            if (ctrlCategoriesClinik.SelectedRows.Count == 1)
                            {
                                if (cat != null)
                                {
                                    Cl_App.m_DataContext.p_Categories.Remove(cat);
                                    Cl_App.m_DataContext.SaveChanges();
                                    transaction.Commit();
                                    f_RefreshClinik();
                                }
                            }
                        }
                    }
                    catch
                    {
                        transaction.Rollback();
                        MonitoringStub.Error("Error_Tree", "Нельзя удалить категорию", null, null, null);
                    }
                }
            }
        }
        private void ctrlEdit_Click(object sender, EventArgs e)
        {
            var wEdit = new F_CategoryEdit();

            try
            {
                if (ctrlCategoriesTab.SelectedTab == ctrlTabTotal)
                {
                    if (ctrlCategoriesTotal.SelectedRows.Count == 1)
                    {
                        var cat = (Cl_Category)ctrlCategoriesTotal.SelectedRows[0].DataBoundItem;
                        if (cat != null)
                        {
                            wEdit.Text = string.Format("Изменение категории \"{0}\"", cat.p_Name);
                            wEdit.ctrlCategoryType.Text = "Общая категория";
                            wEdit.ctrlCategotyName.Text = cat.p_Name;
                            if (wEdit.ShowDialog() == DialogResult.OK)
                            {
                                cat.p_Name = wEdit.ctrlCategotyName.Text;
                                Cl_App.m_DataContext.SaveChanges();
                                m_SelectedTotal = cat;
                                f_RefreshTotal();
                            }
                        }
                    }
                }
                else if (ctrlCategoriesTab.SelectedTab == ctrlTabClinik)
                {
                    if (ctrlCategoriesClinik.SelectedRows.Count == 1)
                    {
                        var cat = (Cl_Category)ctrlCategoriesClinik.SelectedRows[0].DataBoundItem;
                        if (cat != null)
                        {
                            wEdit.Text = string.Format("Изменение категории \"{0}\"", cat.p_Name);
                            wEdit.ctrlCategoryType.Text = "Клиническая категория";
                            wEdit.ctrlCategotyName.Text = cat.p_Name;
                            if (wEdit.ShowDialog() == DialogResult.OK)
                            {
                                cat.p_Name = wEdit.ctrlCategotyName.Text;
                                Cl_App.m_DataContext.SaveChanges();
                                m_SelectedClinik = cat;
                                f_RefreshClinik();
                            }
                        }
                    }
                }
            }
            catch (Exception er)
            {
                MonitoringStub.Error("Error_Editor", "Не удалось отредактировать категорию", er, null, null);
            }
        }
Exemplo n.º 3
0
 /// <summary>Добавление новой категории</summary>
 public Cl_Category f_AddCategory(Cl_Category.E_CategoriesTypes a_CategoryType, string a_CategoryName)
 {
     if (m_IsInit)
     {
         var cat = new Cl_Category()
         {
             p_Type = a_CategoryType, p_Name = a_CategoryName
         };
         m_DataContextMegaTemplate.p_Categories.Add(cat);
         m_DataContextMegaTemplate.SaveChanges();
         return(cat);
     }
     else
     {
         return(null);
     }
 }
        private void ctrlAdd_Click(object sender, EventArgs e)
        {
            var wEdit = new F_CategoryEdit();

            wEdit.Text = "Добавление новой категории";
            try
            {
                if (ctrlCategoriesTab.SelectedTab == ctrlTabTotal)
                {
                    wEdit.ctrlCategoryType.Text = "Общая категория";
                    if (wEdit.ShowDialog() == DialogResult.OK)
                    {
                        var cat = new Cl_Category();
                        cat.p_Type = Cl_Category.E_CategoriesTypes.Total;
                        cat.p_Name = wEdit.ctrlCategotyName.Text;
                        Cl_App.m_DataContext.p_Categories.Add(cat);
                        Cl_App.m_DataContext.SaveChanges();
                        m_SelectedTotal = cat;
                        f_RefreshTotal();
                    }
                }
                else if (ctrlCategoriesTab.SelectedTab == ctrlTabClinik)
                {
                    wEdit.ctrlCategoryType.Text = "Клиническая категория";
                    if (wEdit.ShowDialog() == DialogResult.OK)
                    {
                        var cat = new Cl_Category();
                        cat.p_Type = Cl_Category.E_CategoriesTypes.Clinic;
                        cat.p_Name = wEdit.ctrlCategotyName.Text;
                        Cl_App.m_DataContext.p_Categories.Add(cat);
                        Cl_App.m_DataContext.SaveChanges();
                        m_SelectedClinik = cat;
                        f_RefreshClinik();
                    }
                }
            }
            catch (Exception er)
            {
                MonitoringStub.Error("Error_Editor", "Не удалось добавить новую категорию", er, null, null);
            }
        }