duheng
2024-11-14 60908c00556f4f53d82f5588ae3013f80c443590
WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingInfoCtrl.cs
@@ -17,7 +17,7 @@
        public event Action<Yw.Model.HydroParterInfo> HydroViewEvent;
        private Yw.Model.HydroModelInfo _hydroInfo = null;//水力信息
        private Dictionary<Yw.Model.HydroParterInfo, ISetHydroParterWorkingInfoCtrl> _parterWorkingInfoDict = null;//组件与组件工况映射字典
        private Dictionary<Yw.Model.HydroParterInfo, ISetHydroVisualWorkingInfoCtrl> _parterWorkingInfoDict = null;//组件与组件工况映射字典
        /// <summary>
        /// 绑定数据
@@ -29,12 +29,12 @@
            {
                return;
            }
            _parterWorkingInfoDict = new Dictionary<Model.HydroParterInfo, ISetHydroParterWorkingInfoCtrl>();
            _parterWorkingInfoDict = new Dictionary<Model.HydroParterInfo, ISetHydroVisualWorkingInfoCtrl>();
            //水箱
            if (hydroInfo.Waterboxs != null && hydroInfo.Waterboxs.Count > 0)
            {
                var group = this.layoutControl1.AddGroup();
                group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Waterbox);
                group.Text = HydroParterCatalogHelper.GetName(Yw.Hydro.ParterCatalog.Waterbox);
                group.ExpandButtonVisible = true;
                group.Expanded = true;
                group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
@@ -62,7 +62,7 @@
            if (hydroInfo.Pumps != null && hydroInfo.Pumps.Count > 0)
            {
                var group = this.layoutControl1.AddGroup();
                group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Pump);
                group.Text = HydroParterCatalogHelper.GetName(Yw.Hydro.ParterCatalog.Pump);
                group.ExpandButtonVisible = true;
                group.Expanded = true;
                group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
@@ -87,89 +87,89 @@
            }
            //阀门
            if (hydroInfo.Valves != null && hydroInfo.Valves.Count > 0)
            {
                var group = this.layoutControl1.AddGroup();
                group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Valve);
                group.ExpandButtonVisible = true;
                group.Expanded = false;
                group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
                group.ExpandOnDoubleClick = true;
                foreach (var parter in hydroInfo.Valves)
                {
                    var workingInfoCtrl = new SetHydroValveWorkingInfoCtrl();
                    workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
                    workingInfoCtrl.SetBindingData(parter);
                    var item = group.AddItem(parter.Name, workingInfoCtrl);
                    item.TextVisible = false;
                    _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
                }
                group.BestFit();
                group.LayoutMode = LayoutMode.Flow;
                group.AllowBorderColorBlending = true;
                group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
                foreach (LayoutControlItem item in group.Items)
                {
                    item.Size = new Size(200, 100);
                }
            }
            //if (hydroInfo.Valves != null && hydroInfo.Valves.Count > 0)
            //{
            //    var group = this.layoutControl1.AddGroup();
            //    group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Valve);
            //    group.ExpandButtonVisible = true;
            //    group.Expanded = false;
            //    group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
            //    group.ExpandOnDoubleClick = true;
            //    foreach (var parter in hydroInfo.Valves)
            //    {
            //        var workingInfoCtrl = new SetHydroValveWorkingInfoCtrl();
            //        workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
            //        workingInfoCtrl.SetBindingData(parter);
            //        var item = group.AddItem(parter.Name, workingInfoCtrl);
            //        item.TextVisible = false;
            //        _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
            //    }
            //    group.BestFit();
            //    group.LayoutMode = LayoutMode.Flow;
            //    group.AllowBorderColorBlending = true;
            //    group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
            //    foreach (LayoutControlItem item in group.Items)
            //    {
            //        item.Size = new Size(200, 100);
            //    }
            //}
            ///流量计
            if (hydroInfo.Flowmeters != null && hydroInfo.Flowmeters.Count > 0)
            {
                var group = this.layoutControl1.AddGroup();
                group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Flowmeter);
                group.ExpandButtonVisible = true;
                group.Expanded = false;
                group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
                group.ExpandOnDoubleClick = true;
                foreach (var parter in hydroInfo.Flowmeters)
                {
                    var workingInfoCtrl = new SetHydroFlowmeterWorkingInfoCtrl();
                    workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
                    workingInfoCtrl.SetBindingData(parter);
                    var item = group.AddItem(parter.Name, workingInfoCtrl);
                    item.TextVisible = false;
                    _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
                }
                group.BestFit();
                group.LayoutMode = LayoutMode.Flow;
                group.AllowBorderColorBlending = true;
                group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
                foreach (LayoutControlItem item in group.Items)
                {
                    item.Size = new Size(200, 80);
                }
            //if (hydroInfo.Flowmeters != null && hydroInfo.Flowmeters.Count > 0)
            //{
            //    var group = this.layoutControl1.AddGroup();
            //    group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Flowmeter);
            //    group.ExpandButtonVisible = true;
            //    group.Expanded = false;
            //    group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
            //    group.ExpandOnDoubleClick = true;
            //    foreach (var parter in hydroInfo.Flowmeters)
            //    {
            //        var workingInfoCtrl = new SetHydroFlowmeterWorkingInfoCtrl();
            //        workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
            //        workingInfoCtrl.SetBindingData(parter);
            //        var item = group.AddItem(parter.Name, workingInfoCtrl);
            //        item.TextVisible = false;
            //        _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
            //    }
            //    group.BestFit();
            //    group.LayoutMode = LayoutMode.Flow;
            //    group.AllowBorderColorBlending = true;
            //    group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
            //    foreach (LayoutControlItem item in group.Items)
            //    {
            //        item.Size = new Size(200, 80);
            //    }
            }
            //}
            //压力表
            if (hydroInfo.Pressmeters != null && hydroInfo.Pressmeters.Count > 0)
            {
                var group = this.layoutControl1.AddGroup();
                group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Pressmeter);
                group.ExpandButtonVisible = true;
                group.Expanded = false;
                group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
                group.ExpandOnDoubleClick = true;
                foreach (var parter in hydroInfo.Pressmeters)
                {
                    var workingInfoCtrl = new SetHydroPressmeterWorkingInfoCtrl();
                    workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
                    workingInfoCtrl.SetBindingData(parter);
                    var item = group.AddItem(parter.Name, workingInfoCtrl);
                    item.TextVisible = false;
                    _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
                }
                group.BestFit();
                group.LayoutMode = LayoutMode.Flow;
                group.AllowBorderColorBlending = true;
                group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
                foreach (LayoutControlItem item in group.Items)
                {
                    item.Size = new Size(200, 80);
                }
            }
            //if (hydroInfo.Pressmeters != null && hydroInfo.Pressmeters.Count > 0)
            //{
            //    var group = this.layoutControl1.AddGroup();
            //    group.Text = HydroParterCatalogHelper.GetCatalogName(Yw.Hydro.ParterCatalog.Pressmeter);
            //    group.ExpandButtonVisible = true;
            //    group.Expanded = false;
            //    group.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
            //    group.ExpandOnDoubleClick = true;
            //    foreach (var parter in hydroInfo.Pressmeters)
            //    {
            //        var workingInfoCtrl = new SetHydroPressmeterWorkingInfoCtrl();
            //        workingInfoCtrl.HydroViewEvent += (x) => this.HydroViewEvent?.Invoke(x);
            //        workingInfoCtrl.SetBindingData(parter);
            //        var item = group.AddItem(parter.Name, workingInfoCtrl);
            //        item.TextVisible = false;
            //        _parterWorkingInfoDict.Add(parter, workingInfoCtrl);
            //    }
            //    group.BestFit();
            //    group.LayoutMode = LayoutMode.Flow;
            //    group.AllowBorderColorBlending = true;
            //    group.AppearanceGroup.BorderColor = Color.FromArgb(0, 122, 204);
            //    foreach (LayoutControlItem item in group.Items)
            //    {
            //        item.Size = new Size(200, 80);
            //    }
            //}
        }
        /// <summary>
@@ -189,7 +189,7 @@
            {
                return;
            }
            var all = workingInfo.GetAllParterWorkingInfoList();
            var all = workingInfo.GetAllVisualWorkingInfoList();
            if (all == null || all.Count < 1)
            {
                return;
@@ -232,7 +232,7 @@
                    var singleWorkingInfo = parterWorkingInfoCtrl.GetWorkingInfo();
                    if (singleWorkingInfo != null)
                    {
                        workingInfo.AppendParterWorkingInfo(singleWorkingInfo);
                        workingInfo.AppendVisualWorkingInfo(singleWorkingInfo);
                    }
                }
            }