duheng
2024-12-07 1e387f457092df846ec04e2c6792b83244aae04e
Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0
已删除1个文件
已重命名4个文件
已修改17个文件
336 ■■■■■ 文件已修改
Application/HStation.Application.Xhs.Core/00-core/Mapper.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Application/HStation.Application.Xhs.Core/01-project/XhsProject_ExtensionsController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BLL/HStation.BLL.Xhs.Core/00-core/Mapper.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BLL/HStation.BLL.Xhs.Core/03-localclient/01-project/XhsProjectExtensions.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BLL/HStation.BLL.Xhs.Core/04-bll/01-project/XhsProjectExtensions_Instance.cs 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/01-project/AddXhsProjectInput.cs 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/01-project/UpdateXhsProjectInput.cs 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/01-project/XhsProjectDto.cs 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/01-project/XhsProjectStdDto.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/02-extensions/AddXhsProjectExtensionsInput.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/01-project/02-extensions/AddXhsProjectSiteExtensionsInput.cs 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Dto/HStation.Dto.Xhs.Core/02-project-site/AddXhsProjectSiteInput.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Hydro/Yw.EPAnet.Calcu.Core/03-calcu/NetworkEnergyAnalyseExtensions.cs 76 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Hydro/Yw.EPAnet.Calcu.Core/04-Inp/InpInteropHelper.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/03-calcu/02-label/SimulationCalcuResultLabelHelper.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/05-function/SimulationFunctionCtrl.cs 71 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/04-junction/HydroJunctionListCtrl.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/07-threelink/HydroThreelinkListCtrl.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/15-translation/HydroTranslationListCtrl.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Application/HStation.Application.Xhs.Core/00-core/Mapper.cs
@@ -45,11 +45,6 @@
                .Map(dest => dest.Flags, src => src.Flags)
                .Map(dest => dest.UseStatus, src => Yw.Model.eUseStatus.Enable);
            config.ForType<AddXhsProjectSiteExtensionsInput, Model.XhsProjectSite>()
               .Map(dest => dest.Paras, src => src.Paras)
               .Map(dest => dest.Flags, src => src.Flags)
               .Map(dest => dest.UseStatus, src => Yw.Model.eUseStatus.Enable);
            config.ForType<UpdateXhsProjectSiteInput, Model.XhsProjectSite>()
              .Map(dest => dest.Paras, src => src.Paras)
              .Map(dest => dest.Flags, src => src.Flags);
Application/HStation.Application.Xhs.Core/01-project/XhsProject_ExtensionsController.cs
@@ -102,7 +102,7 @@
            var project = input.Adapt<AddXhsProjectInput, Model.XhsProject>();
            project.SortCode = _service.GetMaxSortCode(0) + 1;
            var siteList = input.SiteList?.Select(x => x.Adapt<AddXhsProjectSiteExtensionsInput, Model.XhsProjectSite>()).ToList();
            var siteList = input.SiteList?.Select(x => x.Adapt<AddXhsProjectSiteInput, Model.XhsProjectSite>()).ToList();
            var id = _service.InsertEx(project, siteList);
            return id;
        }
BLL/HStation.BLL.Xhs.Core/00-core/Mapper.cs
@@ -42,11 +42,6 @@
                .Map(dest => dest.Flags, src => src.Flags)
                .Map(dest => dest.UseStatus, src => Yw.Model.eUseStatus.Enable);
            config.ForType<AddXhsProjectSiteExtensionsInput, Model.XhsProjectSite>()
               .Map(dest => dest.Paras, src => src.Paras)
               .Map(dest => dest.Flags, src => src.Flags)
               .Map(dest => dest.UseStatus, src => Yw.Model.eUseStatus.Enable);
            config.ForType<UpdateXhsProjectSiteInput, Model.XhsProjectSite>()
              .Map(dest => dest.Paras, src => src.Paras)
              .Map(dest => dest.Flags, src => src.Flags);
BLL/HStation.BLL.Xhs.Core/03-localclient/01-project/XhsProjectExtensions.cs
@@ -163,7 +163,7 @@
                var project = input.Adapt<AddXhsProjectInput, Model.XhsProject>();
                project.SortCode = _service.GetMaxSortCode(0) + 1;
                var siteList = input.SiteList?.Select(x => x.Adapt<AddXhsProjectSiteExtensionsInput, Model.XhsProjectSite>()).ToList();
                var siteList = input.SiteList?.Select(x => x.Adapt<AddXhsProjectSiteInput, Model.XhsProjectSite>()).ToList();
                var id = _service.InsertEx(project, siteList);
                return id;
            });
BLL/HStation.BLL.Xhs.Core/04-bll/01-project/XhsProjectExtensions_Instance.cs
@@ -38,7 +38,7 @@
                return default;
            }
            var mapper = new MapperConfiguration(cfg => cfg.CreateMap<HStation.Vmo.XhsProjectExtensionsVmo, HStation.Dto.AddXhsProjectExtensionsInput>()
            .ForMember(d => d.SiteList, opt => opt.MapFrom(src => Vmo2AddDtos(src.SiteList)))
            .ForMember(d => d.SiteList, opt => opt.MapFrom(src => XhsProjectSite.Vmo2AddDtos(src.SiteList)))
            ).CreateMapper();
            var dto = mapper.Map<HStation.Vmo.XhsProjectExtensionsVmo, HStation.Dto.AddXhsProjectExtensionsInput>(vmo);
            return dto;
@@ -52,22 +52,9 @@
                return default;
            }
            var mapper = new MapperConfiguration(cfg => cfg.CreateMap<HStation.Vmo.XhsProjectExtensionsVmo, HStation.Dto.AddXhsProjectExtensionsInput>()
            .ForMember(d => d.SiteList, opt => opt.MapFrom(src => Vmo2AddDtos(src.SiteList)))
            .ForMember(d => d.SiteList, opt => opt.MapFrom(src => XhsProjectSite.Vmo2AddDtos(src.SiteList)))
            ).CreateMapper();
            var dtoList = mapper.Map<List<HStation.Vmo.XhsProjectExtensionsVmo>, List<HStation.Dto.AddXhsProjectExtensionsInput>>(vmoList);
            return dtoList;
        }
        //vmo to add dtos
        internal static List<HStation.Dto.AddXhsProjectSiteExtensionsInput> Vmo2AddDtos(List<HStation.Vmo.XhsProjectSiteVmo> vmoList)
        {
            if (vmoList == null || vmoList.Count < 1)
            {
                return default;
            }
            var mapper = new MapperConfiguration(cfg => cfg.CreateMap<HStation.Vmo.XhsProjectSiteVmo, HStation.Dto.AddXhsProjectSiteExtensionsInput>()
            ).CreateMapper();
            var dtoList = mapper.Map<List<HStation.Vmo.XhsProjectSiteVmo>, List<HStation.Dto.AddXhsProjectSiteExtensionsInput>>(vmoList);
            return dtoList;
        }
Dto/HStation.Dto.Xhs.Core/01-project/01-project/AddXhsProjectInput.cs
Dto/HStation.Dto.Xhs.Core/01-project/01-project/UpdateXhsProjectInput.cs
Dto/HStation.Dto.Xhs.Core/01-project/01-project/XhsProjectDto.cs
Dto/HStation.Dto.Xhs.Core/01-project/01-project/XhsProjectStdDto.cs
ÎļþÃû´Ó Dto/HStation.Dto.Xhs.Core/01-project/01-normal/XhsProjectStdDto.cs ÐÞ¸Ä
@@ -48,7 +48,6 @@
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// è¯¦ç»†åœ°å€
        /// </summary>
Dto/HStation.Dto.Xhs.Core/01-project/02-extensions/AddXhsProjectExtensionsInput.cs
@@ -8,6 +8,6 @@
        /// <summary>
        /// ç«™ç‚¹åˆ—表
        /// </summary>
        public List<AddXhsProjectSiteExtensionsInput> SiteList { get; set; }
        public List<AddXhsProjectSiteInput> SiteList { get; set; }
    }
}
Dto/HStation.Dto.Xhs.Core/01-project/02-extensions/AddXhsProjectSiteExtensionsInput.cs
ÎļþÒÑɾ³ý
Dto/HStation.Dto.Xhs.Core/02-project-site/AddXhsProjectSiteInput.cs
@@ -3,11 +3,9 @@
    public class AddXhsProjectSiteInput
    {
        /// <summary>
        /// é¡¹ç›®id
        /// </summary>
        [Required, Range(1, long.MaxValue, ErrorMessage = "ProjectID å¿…须大于0")]
        public long ProjectID { get; set; }
        /// <summary>
Hydro/Yw.EPAnet.Calcu.Core/03-calcu/NetworkEnergyAnalyseExtensions.cs
@@ -27,26 +27,6 @@
                return false;
            }).ToList();
            //计算这些节点的势能,势能计算公式为:势能=需水量*节点水头
            foreach (var node in negativeDemandNodes)
            {
                if (node is Node n)
                {
                    double energyInW = GetEnergyPowerByQH(Math.Abs(dictNodes[n.Id].Demand), dictNodes[n.Id].Head);
                    var energyPoint = new EnergyPoint
                    {
                        Id = n.Id,
                        EnergyType = eEnergyType.Input,
                        EnergyPower = energyInW,
                    };
                    points.Add(energyPoint);
                    result.InputEnergy.Add(n.Id,new List<EnergyPoint> { energyPoint });
                    result.InputTotalEnerge += energyInW;
                }
            }
            //找到管网中需水量为正的节点
            var positiveDemandNodes = network.GetAllNodes().Where(n =>
            {
@@ -57,13 +37,67 @@
                return false;
            }).ToList();
            double minElev = 99999999;
            List<Node> DemandNodes=new List<Node>();
            DemandNodes.AddRange(negativeDemandNodes);
            DemandNodes.AddRange(positiveDemandNodes);
            foreach (var node in DemandNodes)
            {
                if (node is Junction n)
                {
                    if (n.Elev < minElev)
                    {
                        minElev = n.Elev;
                    }
                }
                else if (node is Tank t)
                {
                    if (t.PoolElev < minElev)
                    {
                        minElev = t.PoolElev;
                    }
                }
                else if (node is Reservoir r)
                {
                    var elev = r.PoolElev == null ? 0 : (double)r.PoolElev;
                    if (elev < minElev)
                    {
                        minElev = elev;
                    }
                }
            }
            //计算这些节点的势能,势能计算公式为:势能=需水量*节点水头
            foreach (var node in negativeDemandNodes)
            {
                if (node is Node n)
                {
                    double energyInW = GetEnergyPowerByQH(Math.Abs(dictNodes[n.Id].Demand), dictNodes[n.Id].Head- minElev);
                    var energyPoint = new EnergyPoint
                    {
                        Id = n.Id,
                        EnergyType = eEnergyType.Input,
                        EnergyPower = energyInW,
                    };
                    points.Add(energyPoint);
                    result.InputEnergy.Add(n.Id, new List<EnergyPoint> { energyPoint });
                    result.InputTotalEnerge += energyInW;
                }
            }
            foreach (var node in positiveDemandNodes)
            {
                if (node is Node n)
                {
                    double energyInW =  GetEnergyPowerByQH(Math.Abs(dictNodes[n.Id].Demand), dictNodes[n.Id].Head);
                    double energyInW =  GetEnergyPowerByQH(Math.Abs(dictNodes[n.Id].Demand), dictNodes[n.Id].Head- minElev);
                    var energyPoint = new EnergyPoint
                    {
                        Id = n.Id,
Hydro/Yw.EPAnet.Calcu.Core/04-Inp/InpInteropHelper.cs
@@ -141,7 +141,8 @@
                    x.Roughness = 110;
                }
                string statusString = x.LinkStatus == PipeStatus.Closed ? "CLOSED" : "";
                pipeSb.AppendLine($"{x.Id}\t{x.StartNode.Id}\t{x.EndNode.Id}\t{x.Length}\t{x.Diameter}\t{x.Roughness}\t{x.MinorLoss}\t{statusString}\t;\t");// + $"{p.Level}");
                double minorLoss = x.MinorLoss + x.EndMinorloss + x.StartMinorloss;
                pipeSb.AppendLine($"{x.Id}\t{x.StartNode.Id}\t{x.EndNode.Id}\t{x.Length}\t{x.Diameter}\t{x.Roughness}\t{minorLoss}\t{statusString}\t;\t");// + $"{p.Level}");
                if (x.LinkStatus != PipeStatus.Open)
                {
                    statusSb.AppendLine(x.Id + "\t" + statusString);
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/03-calcu/02-label/SimulationCalcuResultLabelHelper.cs
@@ -43,11 +43,11 @@
                var labels = GetLabels();
                if (labels != null && labels.Count > 0)
                {
                    _views.ForEach(x => x.SetLogicCalcuCustomLabels(labels));
                    _views.ForEach(async x => await x.SetLogicCalcuCustomLabels(labels));
                    return;
                }
            }
            _views.ForEach(x => x.ClearLogicCalcuCustomLabels());
            _views.ForEach(async x => await x.ClearLogicCalcuCustomLabels());
        }
        //获取计算标签
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/05-function/SimulationFunctionCtrl.cs
@@ -474,6 +474,7 @@
            elementWorking.HeaderControl = ckEdit;
            elementWorking.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item;
            elementWorking.Text = working.Name;
            elementWorking.Hint = working.Description;
            elementWorking.Tag = working;
            elementWorking.Click += async (sender, e) =>
            {
@@ -485,6 +486,7 @@
        /// <summary>
        /// æ›´æ–°æ–¹æ¡ˆå·¥å†µ
        /// æ›´æ–°ï¼Œä¼šè§¦å‘更新事件
        /// </summary>
        public void UpdateSchemeWorking(XhsSchemeVmo scheme, Yw.Vmo.HydroWorkingVmo working)
        {
@@ -504,31 +506,21 @@
            {
                return;
            }
            var elementScheme = this.elementSchemeList.Elements.FirstOrDefault(x => x.Tag is XhsSchemeVmo && (x.Tag as XhsSchemeVmo).ID == scheme.ID);
            var elementScheme = this.elementSchemeList.Elements.FirstOrDefault(x => (x.Tag is XhsSchemeVmo) && (x.Tag as XhsSchemeVmo).ID == scheme.ID);
            if (elementScheme == null)
            {
                return;
            }
            elementScheme.Style = DevExpress.XtraBars.Navigation.ElementStyle.Group;
            var ckEdit = new CheckEdit();
            ckEdit.Properties.AutoWidth = true;
            ckEdit.Properties.Caption = string.Empty;
            ckEdit.CheckedChanged += (sender, e) =>
            var element = elementScheme.Elements.
                Where(x => (x.Tag is HydroWorkingVmo) && (x.Tag as HydroWorkingVmo).ID == working.ID).FirstOrDefault();
            if (element == null)
            {
                this.ProjectSiteSchemeWorkingCheckedEvent?.Invoke(scheme, working, ckEdit.Checked);
            };
            this.accordionControl1.Controls.Add(ckEdit);
            var elementWorking = new DevExpress.XtraBars.Navigation.AccordionControlElement();
            elementWorking.HeaderControl = ckEdit;
            elementWorking.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item;
            elementWorking.Text = working.Name;
            elementWorking.Tag = working;
            elementWorking.Click += async (sender, e) =>
            {
                var hydroInfo = await GetSchemeHydroInfo(scheme, true);
                this.ShowProjectSiteSchemeWorkingEvent?.Invoke(_project, _projectSite, scheme, hydroInfo, working, this.svgImg32[4]);
            };
            elementScheme.Elements.Add(elementWorking);
                return;
            }
            element.Tag = working;
            element.Text = working.Name;
            element.Hint = working.Description;
            this.ProjectSiteSchemeWorkingUpdateEvent?.Invoke(scheme, working);
        }
        /// <summary>
@@ -536,9 +528,46 @@
        /// </summary>
        public void RemoveSchemeWorking(XhsSchemeVmo scheme, Yw.Vmo.HydroWorkingVmo working)
        {
            if (_project == null)
            {
                return;
            }
            if (_projectSite == null)
            {
                return;
            }
            if (scheme == null)
            {
                return;
            }
            if (working == null)
            {
                return;
            }
            var elementScheme = this.elementSchemeList.Elements.FirstOrDefault(x => (x.Tag is XhsSchemeVmo) && (x.Tag as XhsSchemeVmo).ID == scheme.ID);
            if (elementScheme == null)
            {
                return;
            }
            var element = elementScheme.Elements.
                Where(x => (x.Tag is HydroWorkingVmo) && (x.Tag as HydroWorkingVmo).ID == working.ID).FirstOrDefault();
            if (element == null)
            {
                return;
            }
            if (element.HeaderControl != null)
            {
                this.accordionControl1.Controls.Remove(element.HeaderControl);
            }
            elementScheme.Elements.Remove(element);
            if (elementScheme.Elements.Count < 1)
            {
                elementScheme.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item;
            }
            this.ProjectSiteSchemeWorkingRemoveEvent?.Invoke(scheme, working);
        }
        #endregion
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -278,6 +278,7 @@
            var visualVmListHelper = GetVisualVmListHelper();
            var vm = visualVmListHelper.GetVisual(visual);
            _propertyCtrl.SelectedObject = vm;
            _propertyCtrl.UpdateRows();
        }
        //更新属性控件
@@ -2144,6 +2145,13 @@
                #endregion
                #region é¢œè‰²åˆ†çº§
                var gradingHelper = await GetGradingHelper();
                gradingHelper.Set();
                #endregion
                #region è®¡ç®—标签
                var calcuResultLabelHelper = await GetCalcuResultLabelHelper();
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs
@@ -24,11 +24,13 @@
            this.simulationFunctionMgrCtrl1.CreateProjectSiteSchemeEvent += XhsProjectSimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent;
            this.simulationFunctionMgrCtrl1.ShowProjectSiteSchemeEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeEvent;
            this.simulationFunctionMgrCtrl1.ShowProjectSiteSchemeWorkingEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeWorkingEvent;
            this.simulationFunctionMgrCtrl1.ProjectSiteSchemeWorkingCheckedEvent += SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingCheckedEvent;
            this.simulationFunctionMgrCtrl1.ProjectSiteSchemeWorkingUpdateEvent += SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingUpdateEvent;
            this.simulationFunctionMgrCtrl1.ProjectSiteSchemeWorkingRemoveEvent += SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingRemoveEvent;
        }
        private XhsProjectVmo _project = null;//项目
        private object _locker = new object();//锁定对象
        /// <summary>
        /// åˆå§‹åŒ–数据源
@@ -278,12 +280,90 @@
                {
                    var page = new XhsProjectSimulationWorkingPage();
                    page.PageTitle.HeaderSvgImage = svgImage;
                    page.UpdateWorkingEvent += (rhs) =>
                    {
                        this.simulationFunctionMgrCtrl1.UpdateSchemeWorking(scheme, rhs);
                    };
                    page.RemoveWorkingEvent += (rhs) =>
                    {
                        this.simulationFunctionMgrCtrl1.RemoveSchemeWorking(scheme, rhs);
                    };
                    page.SetBindingData(project, projectSite, scheme, hydroInfo, working);
                    CreatePage(page, guid);
                }
            }
        }
        //项目站方案工况选择改变事件
        private void SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingCheckedEvent(XhsSchemeVmo scheme, HydroWorkingVmo working, bool hasChecked)
        {
            var guid = new PageGuid()
            {
                Modular = this.PageGuid.Modular,
                MoudingType = eMoudingType.Tab,
                Function = SimulationFunctionHelper.Scheme,
                TagName = scheme.ID.ToString()
            };
            var page = FindPage(guid);
            if (page == null)
            {
                return;
            }
            var ctrl = page as XhsProjectSimulationSchemePage;
            if (ctrl == null)
            {
                return;
            }
            ctrl.UpdateWorkingCheckedList(working, hasChecked);
        }
        //项目站方案工况更新事件
        private void SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingUpdateEvent(XhsSchemeVmo scheme, HydroWorkingVmo working)
        {
            var guid = new PageGuid()
            {
                Modular = this.PageGuid.Modular,
                MoudingType = eMoudingType.Tab,
                Function = SimulationFunctionHelper.Scheme,
                TagName = scheme.ID.ToString()
            };
            var page = FindPage(guid);
            if (page == null)
            {
                return;
            }
            var ctrl = page as XhsProjectSimulationSchemePage;
            if (ctrl == null)
            {
                return;
            }
        }
        //项目站方案工况移除事件
        private void SimulationFunctionMgrCtrl1_ProjectSiteSchemeWorkingRemoveEvent(XhsSchemeVmo scheme, HydroWorkingVmo working)
        {
            var guid = new PageGuid()
            {
                Modular = this.PageGuid.Modular,
                MoudingType = eMoudingType.Tab,
                Function = SimulationFunctionHelper.Scheme,
                TagName = scheme.ID.ToString()
            };
            var page = FindPage(guid);
            if (page == null)
            {
                return;
            }
            var ctrl = page as XhsProjectSimulationSchemePage;
            if (ctrl == null)
            {
                return;
            }
        }
        #endregion
        #region TabbedView ç›¸å…³äº‹ä»¶å¤„理程序
WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs
@@ -85,6 +85,7 @@
                    }
                }
                this.propertyGridControl1.SelectedObject = value;
                this.propertyGridControl1.UpdateRows();
            }
        }
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/04-junction/HydroJunctionListCtrl.cs
@@ -297,11 +297,12 @@
            this.colModelType.Visible = true;
            this.colElev.Visible = false;
            this.colMinorLoss.Visible = false;
            this.colCalcuPress.Visible = false;
            this.colCalcuHead.Visible = false;
            this.colHasDb.Visible = false;
            this.colFlags.Visible = true;
            this.colDescription.Visible = true;
            this.colCalcuDemand.Visible = false;
            this.colCalcuHead.Visible = false;
            this.colCalcuPress.Visible = false;
            this.colSet.Visible = false;
        }
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/07-threelink/HydroThreelinkListCtrl.cs
@@ -316,15 +316,16 @@
            this.colModelType.Visible = true;
            this.colMaterial.Visible = true;
            this.colCaliber.Visible = true;
            this.colRunningThroughLoss.Visible = false;
            this.colBranchThroughLoss.Visible = false;
            this.colElev.Visible = false;
            this.colMinorLoss.Visible = false;
            this.colCalcuPress.Visible = false;
            this.colCalcuHead.Visible = false;
            this.colRunningThroughLoss.Visible = false;
            this.colBranchThroughLoss.Visible = false;
            this.colHasDb.Visible = false;
            this.colFlags.Visible = true;
            this.colDescription.Visible = true;
            this.colCalcuDemand.Visible = false;
            this.colCalcuHead.Visible = false;
            this.colCalcuPress.Visible = false;
            this.colSet.Visible = false;
        }
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/15-translation/HydroTranslationListCtrl.cs
@@ -298,15 +298,17 @@
            this.colModelType.Visible = true;
            this.colMaterial.Visible = true;
            this.colDiameter.Visible = true;
            this.colLength.Visible = false;
            this.colLength.Visible = true;
            this.colRoughness.Visible = false;
            this.colMinorLoss.Visible = false;
            this.colCalcuFlow.Visible = false;
            this.colCalcuVelocity.Visible = false;
            this.colCalcuHeadLoss.Visible = false;
            this.colHasDb.Visible = false;
            this.colFlags.Visible = true;
            this.colDescription.Visible = true;
            this.colCalcuFrictionLoss.Visible = false;
            this.colCalcuMinorLoss.Visible = false;
            this.colCalcuHeadLoss.Visible = false;
            this.colCalcuVelocity.Visible = false;
            this.colCalcuFlow.Visible = false;
            this.colSet.Visible = false;
        }