Shuxia Ning
2024-12-20 1bf6b7a300e21e9b8996f9ebeeb55a1eccda7a02
WinFrmUI/HStation.WinFrmUI.Assets.Core/20-exchanger/04-curveql/AssetsExchangerCurveQLMgrPage.cs
@@ -24,9 +24,8 @@
            this.phartDiagramRelationListCtrl1.SelectedChangedEvent += PhartDiagramRelationListCtrl1_SelectedChangedEvent;
        }
        private AssetsExchangerMainVmo _vmo = null;
        private List<PhartDiagramRelationVmo> _allBindingList = null;
        private PhartDiagramRelationVmo _relation = null;
        /// <summary>
@@ -40,46 +39,142 @@
            }
            _vmo = vmo;
            this.PageTitle.Caption = $"{vmo.Name}\r\n水头损失曲线";
            var allRelationList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance
                .GetByObjectTypeAndObjectID(HStation.Assets.DataType.ExchangerMain, vmo.ID);
            this.phartDiagramRelationListCtrl1.SetBindingData(allRelationList);
            _allBindingList = new List<PhartDiagramRelationVmo>();
            var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance
               .GetByObjectTypeAndObjectID(HStation.Assets.DataType.ExchangerMain, vmo.ID);
            allList?.ForEach(x => _allBindingList.Add(x));
            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
        }
        //excel
        private void Excel()
        {
            if (_vmo == null)
            {
                return;
            }
            var dlg = new ImportAssetsExchangerCurveQLByExcelDlg();
            dlg.SetBindingData();
            dlg.ReloadDataEvent += (rhs) =>
            {
                _allBindingList.Add(rhs);
                this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
            };
            dlg.SetBindingData(_vmo);
            dlg.ShowDialog();
        }
        //图片
        private void Picture()
        {
            if (_vmo == null)
            {
                return;
            }
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var dlg = new ImportAssetsExchangerCurveQLByPictureDlg();
            dlg.SetBindingData();
            dlg.ReloadDataEvent += (rhs) =>
            {
                _allBindingList.Add(rhs);
                this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
            };
            dlg.SetBindingData(_vmo);
            dlg.ShowDialog();
        }
        //基本信息
        private void Info()
        {
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var dlg = new EditPhartDiagramRelationDlg();
            dlg.ReloadDataEvent += (rhs) =>
            {
                var item = _allBindingList?.Find(x => x.ID == rhs.ID);
                if (item == null)
                {
                    return;
                }
                item.Reset(rhs);
                this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
            };
            dlg.SetBindingData(vm);
            dlg.ShowDialog();
        }
        //曲线
        private void Curve()
        private async void Curve()
        {
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(vm.DiagramID);
            var dlg = new EditAssetsExchangerCurveQLDlg();
            dlg.SetBindingData(null);
            dlg.ReloadDataEvent += (rhs) =>
            {
                this.universalChartViewCtrl1.SetBindingData(rhs);
            };
            dlg.SetBindingData(vmo);
            dlg.ShowDialog();
        }
        //删除
        private void Delete()
        private async void Delete()
        {
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            var result = XtraMessageBox.Show("请问确认删除当前数据吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes;
            if (!result)
            {
                return;
            }
            var bol = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.DeleteByID(vm.ID);
            if (!bol)
            {
                TipFormHelper.ShowError("删除失败!");
                return;
            }
            _allBindingList.Remove(vm);
            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
            TipFormHelper.ShowSucceed("删除成功!");
        }
        #region 当前
        //获取当前
        private PhartDiagramRelationVmo GetCurrentViewModel()
        {
            if (_allBindingList == null)
            {
                TipFormHelper.ShowError("数据初始化错误!");
                return null;
            }
            if (_allBindingList.Count < 1)
            {
                TipFormHelper.ShowInfo("无数据!");
                return null;
            }
            if (_relation == null)
            {
                TipFormHelper.ShowWarn("请选择数据行!");
                return null;
            }
            return _relation;
        }
        #endregion
        //Excel导入
        private void barBtnImportByExcel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
@@ -115,8 +210,10 @@
        private void PhartDiagramRelationListCtrl1_SelectedChangedEvent(PhartDiagramRelationVmo obj)
        {
            _relation = obj;
            LoadPhart(_relation);
        }
        //加载图表
        private async void LoadPhart(PhartDiagramRelationVmo relation)
        {
            if (relation == null)
@@ -125,7 +222,7 @@
                return;
            }
            var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(relation.DiagramID);
            //this.universalChartViewCtrl1.SetBindingData(vmo);
            this.universalChartViewCtrl1.SetBindingData(vmo);
        }
    }