From ef5f0ac9ab83f89dbca90627c0b57c4af8b163d7 Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期一, 10 二月 2025 17:24:08 +0800 Subject: [PATCH] 权限修改 --- WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs | 256 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 236 insertions(+), 20 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs b/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs index e430afe..b3d2c98 100644 --- a/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/PumpProductMainPage.cs @@ -1,5 +1,6 @@ -锘縰sing HStation.WinFrmUI.Assets; -using HStation.WinFrmUI.PhartRelation; +锘縰sing DevExpress.Utils.DragDrop; +using HStation.WinFrmUI.Assets; +using Yw; namespace HStation.WinFrmUI.Xhs.PumpProduct { @@ -16,10 +17,9 @@ this.AssetsPumpSeriesTreeListCtrl1.FocusedChangedEvent += AssetsPumpSeriesTreeListCtrl1_FocusedChangedEvent; this.AssetsPumpSeriesTreeListCtrl1.AddAssetsPumpMain += BtnAdd_ItemClickAsync; this.dockManager1.Style = DevExpress.XtraBars.Docking2010.Views.DockingViewStyle.Light; - } - private readonly List<AssetsPumpMainViewModel> _allBindingList = new(); + private List<AssetsPumpMainViewModel> _allBindingList = new(); private BLL.AssetsPumpMain _bll = null; @@ -50,9 +50,12 @@ { var alllist = await _bll.GetByPumpSeriesID(obj); _allBindingList.Clear(); - foreach (var item in alllist) + if (alllist != null) { - _allBindingList.Add(new AssetsPumpMainViewModel(item)); + foreach (var item in alllist) + { + _allBindingList.Add(new AssetsPumpMainViewModel(item)); + } } } else @@ -76,7 +79,7 @@ { var dlg = new AddPumpProductMainDlg(); //绯诲垪ID - var id = this.AssetsPumpSeriesTreeListCtrl1.GetCurrentID(); + var id = this.AssetsPumpSeriesTreeListCtrl1.GetCurrentSeriesID(); if (id <= 0) { return; @@ -168,10 +171,6 @@ MessageBoxHelper.ShowWarning("璇烽�夋嫨鏁版嵁琛岋紒"); return; } - //var dlg=new HStation.WinFrmUI.PhartRelation.SelXhsAssetsPumpMainPhartDlg(); - //dlg.SetBandingData(currentVm.ID); - //dlg.ShowDialog(); - var guid = new PageGuid() { Function = "娉靛瀷鍙锋洸绾�", @@ -186,11 +185,11 @@ MessageBoxHelper.ShowWarning($"{currentVm.Name}:AssetsPumpMainDto is null锛�"); return; } - //var page = new HStation.WinFrmUI.PhartRelation.XhsPumpMainPhartPanel(); - //page.InitialDataSource(currentVm.ID); - //page.PageTitle.Caption = guid.Function; - //page.PageGuid = guid; - //CreatePage(page, guid); + var page = new PumpChartMainPage(); + page.SetBindingData(currentVm.Model); + page.PageTitle.Caption = guid.Function; + page.PageGuid = guid; + CreatePage(page, guid); } } @@ -244,12 +243,229 @@ } } - private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + //鎵归噺瀵煎叆 + private void BtnImportEx_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - var model = this.gridView1.GetCurrentViewModel(_allBindingList); - var dlg = new SelXhsPumpMainPhartDlg(); - dlg.SetBandingData(model.ID); + //鏍戣仛鐒D + var seriesId = this.AssetsPumpSeriesTreeListCtrl1.GetFocusID(out bool isGroup); + if (seriesId <= 0) + { + return; + } + var dlg = new ImportPumpExcel(); + dlg.SetBindingData(seriesId); + dlg.ReloadDataEvent += () => + { + AssetsPumpSeriesTreeListCtrl1_FocusedChangedEvent(seriesId, isGroup); + }; dlg.ShowDialog(); } + + private void barCkDrag_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + SetDragEnable(this.barCkDrag.Checked); + } + + //璁剧疆鎷栨嫿鍙敤鎬� + private void SetDragEnable(bool allowArag) + { + var be = this.behaviorManager1.GetBehavior<DevExpress.Utils.DragDrop.DragDropBehavior>(this.gridView1); + be.Properties.AllowDrag = allowArag; + } + + //鎷栨嫿 + private async void dragDropEvents1_DragDrop(object sender, DevExpress.Utils.DragDrop.DragDropEventArgs e) + { + var indexs = e.Data as int[]; + if (indexs == null || indexs.Length < 1) + { + e.Handled = true; + return; + } + var sourceIndex = indexs[0]; + var sourceObj = this.gridView1.GetRow(sourceIndex) as AssetsPumpMainViewModel; + if (sourceObj == null) + { + e.Handled = true; + return; + } + + var destIndex = this.gridView1.GetRowHandleByCP(e.Location); + if (destIndex < 0) + { + e.Handled = true; + return; + } + + var destObj = this.gridView1.GetRow(destIndex) as AssetsPumpMainViewModel; + if (destObj == null) + { + e.Handled = true; + return; + } + + var sorters = new List<Yw.Vmo.Sorter>(); + + if (e.InsertType == InsertType.Before) + { + sorters.Add(new Yw.Vmo.Sorter() { ID = sourceObj.ID, SortCode = destObj.SortCode }); + _allBindingList.ForEach(x => + { + if (x.SortCode >= destObj.SortCode) + { + if (x != sourceObj) + { + sorters.Add(new Yw.Vmo.Sorter() { ID = x.ID, SortCode = x.SortCode + 1 }); + } + } + }); + } + else if (e.InsertType == InsertType.After) + { + sorters.Add(new Yw.Vmo.Sorter() { ID = sourceObj.ID, SortCode = destObj.SortCode + 1 }); + _allBindingList.ForEach(x => + { + if (x.SortCode > destObj.SortCode) + { + if (x != sourceObj) + { + sorters.Add(new Yw.Vmo.Sorter() { ID = x.ID, SortCode = x.SortCode + 1 }); + } + } + }); + } + else + { + e.Handled = true; + return; + } + + var bll = BLLFactory<HStation.BLL.AssetsPumpMain>.Instance; + var bol = await bll.UpdateSorter(sorters); + if (!bol) + { + e.Handled = true; + return; + } + + _allBindingList.ForEach(x => + { + var sorter = sorters.Find(t => t.ID == x.ID); + if (sorter != null) + { + x.SortCode = sorter.SortCode; + } + }); + } + + //涓婄Щ + private void barBtnUp_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + Up(); + } + + //涓嬬Щ + private void barBtnDown_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + Down(); + } + + //涓婄Щ + private async void Up() + { + var vm = this.gridView1.GetCurrentViewModel(_allBindingList); + if (vm == null) + { + return; + } + var rowHandle = this.gridView1.FocusedRowHandle; + if (rowHandle == 0) + { + TipFormHelper.ShowWarn("涓婄Щ澶辫触锛�"); + return; + } + var current = this.gridView1.GetRow(rowHandle) as AssetsPumpMainViewModel; + if (current == null) + { + return; + } + var prevHandle = rowHandle - 1; + var prev = this.gridView1.GetRow(prevHandle) as AssetsPumpMainViewModel; + if (prev == null) + { + return; + } + var sorters = new List<Yw.Vmo.Sorter>(); + sorters.Add(new Yw.Vmo.Sorter() { ID = current.ID, SortCode = prev.SortCode }); + sorters.Add(new Yw.Vmo.Sorter() { ID = prev.ID, SortCode = current.SortCode }); + var bol = await BLLFactory<HStation.BLL.AssetsPumpMain>.Instance.UpdateSorter(sorters); + if (!bol) + { + TipFormHelper.ShowError("涓婄Щ澶辫触锛�"); + return; + } + var sortCode = current.SortCode; + current.SortCode = prev.SortCode; + prev.SortCode = sortCode; + _allBindingList = _allBindingList.OrderBy(x => x.SortCode).ToList(); + this.currentViewModelBindingSource.DataSource = _allBindingList; + this.currentViewModelBindingSource.ResetBindings(false); + this.gridView1.FocusedRowHandle = prevHandle; + } + + //涓嬬Щ + private async void Down() + { + var vm = this.gridView1.GetCurrentViewModel(_allBindingList); + if (vm == null) + { + return; + } + var rowHandle = this.gridView1.FocusedRowHandle; + if (rowHandle == _allBindingList.Count - 1) + { + TipFormHelper.ShowWarn("涓嬬Щ澶辫触锛�"); + return; + } + var current = this.gridView1.GetRow(rowHandle) as AssetsPumpMainViewModel; + if (current == null) + { + return; + } + var nextHandle = rowHandle + 1; + var next = this.gridView1.GetRow(nextHandle) as AssetsPumpMainViewModel; + if (next == null) + { + return; + } + var sorters = new List<Yw.Vmo.Sorter>(); + sorters.Add(new Yw.Vmo.Sorter() { ID = current.ID, SortCode = next.SortCode }); + sorters.Add(new Yw.Vmo.Sorter() { ID = next.ID, SortCode = current.SortCode }); + var bol = await BLLFactory<HStation.BLL.AssetsPumpMain>.Instance.UpdateSorter(sorters); + if (!bol) + { + TipFormHelper.ShowError("涓嬬Щ澶辫触锛�"); + return; + } + var sortCode = current.SortCode; + current.SortCode = next.SortCode; + next.SortCode = sortCode; + _allBindingList = _allBindingList.OrderBy(x => x.SortCode).ToList(); + this.currentViewModelBindingSource.DataSource = _allBindingList; + this.currentViewModelBindingSource.ResetBindings(false); + this.gridView1.FocusedRowHandle = nextHandle; + } + + private void barBtnSearch_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + this.gridView1.OptionsFind.AlwaysVisible = !this.gridView1.OptionsFind.AlwaysVisible; + } + + //鍒锋柊 + private void barBtnRefresh_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + var seriesId = this.AssetsPumpSeriesTreeListCtrl1.GetFocusID(out bool isGroup); + AssetsPumpSeriesTreeListCtrl1_FocusedChangedEvent(seriesId, isGroup); + } } } \ No newline at end of file -- Gitblit v1.9.3