duheng
2024-07-05 5aba1bf12cd27faa797e7f3d15e0f960bdc2a4b2
WinFrmUI/HStation.WinFrmUI.Xhs.Project/05-CatlogManage/CatlogManageCtrl.cs
@@ -1,4 +1,5 @@
using HStation.WinFrmUI.Xhs.Project;
using ISupply.WinFrmUI;
using Yw.DAL.Basic;
namespace HStation.WinFrmUI.Xhs
@@ -8,27 +9,25 @@
        public CatalogManageCtrl()
        {
            InitializeComponent();
            this.typeTreeListCtrl2.FocusedChangedEvent += TypeTreeListCtrl2_FocusedChangedEvent;
        }
        private List<CatlogViewModel> _allBindingList = new List<CatlogViewModel>();
        private List<CatlogViewModel> _allBindingList = null;
        private Yw.BLL.SysCatalog _bll = null;
        public override void InitialDataSource()
        {
            SetBindingData();
            this.typeTreeListCtrl2.SetBindingData();
        }
        //聚焦切换
        private async void ModuleTreeListCtrl1_FocusedChangedEvent(long moduleid)
        private async void TypeTreeListCtrl2_FocusedChangedEvent(long typeID)
        {
            _allBindingList.Clear();
        }
        private async void SetBindingData()
        {
            _allBindingList = new List<CatlogViewModel>();
            _bll = new Yw.BLL.SysCatalog();
            var alllist = await _bll.GetAll();
            var alllist = await _bll.GetByTypeID(typeID);
            _allBindingList.Clear();
            foreach (var item in alllist)
            {
                _allBindingList.Add(new CatlogViewModel(item));
@@ -40,73 +39,89 @@
        //添加
        private void BtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            /*    var dlg = new AddCatlogDlg();
                var vm = this.gridView1.GetCurrentViewModel(_allBindingList);
                if (vm == null)
                {
                    MessageBoxHelper.ShowWarning("请选择数据行");
                    return;
                }
                dlg.SetBindingData(0, vm.ID);
                dlg.ReloadDataEvent += async (rhs) =>
            var dlg = new AddCatlogDlg();
            var typeID = this.typeTreeListCtrl2.GetCurrentID();
            dlg.SetBindingData(typeID);
            dlg.ReloadDataEvent += async (rhs) =>
           {
               var id = await _bll.Insert(rhs);
               if (id > 0)
               {
                   var id = await _bll.Insert(rhs);
                   if (id > 0)
                   {
                       var model = await _bll.GetByID(id);
                       _allBindingList.Add(new CatlogViewModel(model));
                        return true;
                   }
                   return false;
               };
                dlg.ShowDialog();*/
                   var model = await _bll.GetByID(id);
                   _allBindingList.Add(new CatlogViewModel(model));
                   return true;
               }
               return false;
           };
            dlg.ShowDialog();
        }
        //添加子项
        private void BtnAddChild_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var dlg = new AddCatlogDlg();
            var vm = this.treeList1.GetCurrentViewModel(_allBindingList);
            var typeID = this.typeTreeListCtrl2.GetCurrentID();
            dlg.SetBindingData(typeID, vm.ID);
            dlg.ReloadDataEvent += async (rhs) =>
            {
                var id = await _bll.Insert(rhs);
                if (id > 0)
                {
                    var model = await _bll.GetByID(id);
                    _allBindingList.Add(new CatlogViewModel(model));
                    return true;
                }
                return false;
            };
            dlg.ShowDialog();
        }
        //编辑
        private void barBtnEditPumpCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            /*    var dlg = new EditTypeDlg();
                var vm = this.gridView1.GetCurrentViewModel(_allBindingList);
                if (vm == null)
            var dlg = new EditCatlogDlg();
            var vm = this.treeList1.GetCurrentViewModel(_allBindingList);
            if (vm == null)
            {
                MessageBoxHelper.ShowWarning("请选择数据行!");
                return;
            }
            dlg.SetBindingData(vm.ID);
            dlg.ReloadDataEvent += async (rhs) =>
            {
                if (await _bll.Update(rhs))
                {
                    MessageBoxHelper.ShowWarning("请选择数据行!");
                    return;
                    vm.Reset(rhs);
                    return true;
                }
                dlg.SetBindingData(vm.ID);
                dlg.ReloadDataEvent += async (rhs) =>
                {
                    if (await _bll.Update(rhs))
                    {
                        vm.Reset(rhs);
                        return true;
                    }
                    return false;
                };
                dlg.ShowDialog();*/
                return false;
            };
            dlg.ShowDialog();
        }
        //删除
        private async void BtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            /*    var currentVm = this.gridView1.GetCurrentViewModel(_allBindingList);
                if (currentVm == null)
                {
                    MessageBoxHelper.ShowWarning("请选择数据行!");
                    return;
                }
                if (MessageBoxHelper.IsClickOk($"确认删除数据行?", "提示"))
                    return;
                var result = await _bll.DeleteByID(currentVm.ID);
                if (result)
                {
                    _allBindingList.Remove(currentVm);
                    MessageBoxHelper.ShowSuccess($"删除成功!");
                }
                else
                {
                    MessageBoxHelper.ShowError($"删除失败!");
                    return;
                }*/
            var currentVm = this.treeList1.GetCurrentViewModel(_allBindingList);
            if (currentVm == null)
            {
                MessageBoxHelper.ShowWarning("请选择数据行!");
                return;
            }
            if (MessageBoxHelper.IsClickOk($"确认删除数据行?", "提示"))
                return;
            var result = await _bll.DeleteByID(currentVm.ID);
            if (result)
            {
                _allBindingList.Remove(currentVm);
                MessageBoxHelper.ShowSuccess($"删除成功!");
            }
            else
            {
                MessageBoxHelper.ShowError($"删除失败!");
                return;
            }
        }
    }
}