From 74dba39c95f8120bb31a64739c872cb43790935c Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 20 十一月 2024 10:14:38 +0800 Subject: [PATCH] 核心界面修改 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.resx | 54 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.Designer.cs | 96 WinFrmUI/Yw.WinFrmUI.Hydro.Core/GlobalUsings.cs | 1 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/00-core/HydroCurvePointViewModel.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/11-flowmeter/HydroFlowmeterMatchingViewModel.cs | 96 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeViewModel.cs | 52 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/00-core/HydroCalcuLinkResult.cs | 10 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.resx | 0 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/01-viewmodel/ValveMatchingViewModel.cs | 4 WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/01-const/HydroElbow.cs | 25 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/08-hydrant/HydroHydrantMatchingViewModel.cs | 128 + WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs | 423 +-- WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs | 25 WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.resx | 115 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.resx | 239 ++ WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedCtrl.cs | 18 WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyDescriptionCtrl.cs | 13 WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.resx | 0 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs | 893 +++--- WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.Designer.cs | 44 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eValveType.cs | 50 WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eAlgorithmType.cs | 27 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.cs | 2 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs | 208 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/12-pressmeter/HydroFlowmeterMatchingViewModel.cs | 96 WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj.user | 14 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.Designer.cs | 302 ++ WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/07-blunthead/HydroBluntheadMatchingViewModel.cs | 117 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/01-flowmeter/HydroCalcuFlowmeterResult.cs | 5 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.Designer.cs | 164 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingHelper.cs | 1312 +++++++++++ WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/01-pump/HydroPumpMatchingViewModel.cs | 188 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/10-meter/HydroMeterMatchingViewModel.cs | 96 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/02-visual/HydroCalcuVisualResult.cs | 7 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/00-core/HydroCalcuNodeResult.cs | 12 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingViewModel.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/14-exchanger/HydroExchangerMatchingViewModel.cs | 133 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/09-nozzle/HydroNozzleMatchingViewModel.cs | 128 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.cs | 0 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/02-bimface/XhsProjectSimulationBimfaceCtrl.cs | 36 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/01-pump/HydroCalcuPumpResult.cs | 5 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.cs | 148 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs | 156 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/06-fourlink/HydroFourlinkMatchingViewModel.cs | 117 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.Designer.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.cs | 12 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/04-elbow/HydroElbowMatchingViewModel.cs | 145 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/03-pipe/HydroPipeMatchingViewModel.cs | 134 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.resx | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eElbowType.cs | 29 WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/13-translation/HydroTranslationMatchingViewModel.cs | 156 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.cs | 0 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/XhsProjectSimulationSchemeMgrPage.cs | 102 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.cs | 50 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingViewModel.cs | 9 WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj | 20 WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-transfer/HydroL2dTransferHelper.cs | 2 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/02-valve/HydroValveMatchingViewModel.cs | 169 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedViewModel.cs | 9 /dev/null | 55 WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.cs | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/15-compressor/HydroCompressorMatchingViewModel.cs | 133 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/02-pressmeter/HydroCalcuPressmeterResult.cs | 5 WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/16-tank/HydroTankMatchingViewModel.cs | 155 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/05-threelink/HydroThreelinkMatchingViewModel.cs | 138 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingViewModel.cs | 93 84 files changed, 5,938 insertions(+), 1,037 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/00-core/AssetsMatchingHelper-Bak.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/00-core/AssetsMatchingHelper-Bak.cs deleted file mode 100644 index 94cad1b..0000000 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/00-core/AssetsMatchingHelper-Bak.cs +++ /dev/null @@ -1,712 +0,0 @@ -锘縰sing HStation.Vmo; -using HStation.WinFrmUI.PhartRelation; -using System.Windows.Input; - -namespace HStation.WinFrmUI -{ - public class AssetsMatchingHelper - { - private readonly Lazy<BLL.XhsPumpMainPhartMappingExtensions> _bll_ex = new(); - private const double _caliberTolerance = 10.0; - private const double _speedTolerance = 100; - private const double _flowTolerance = 10; - private const double _headTolerance = 5; - private const double _powerTolerance = 0.05; - - private const double _valveLift = 10;//闃�闂ㄥ紑搴﹁寖鍥� - private const int _angle = 1;//瑙掑害鑼冨洿 - - //璧勪骇鑷姩鍖归厤 - public static bool Matching(AssetsMatchingViewModel assetsAutoMatchingView, out string Error) - { - Error = string.Empty; - bool IsMaching = false; - var AssetsPumpMain = new BLL.AssetsPumpMain(); - var adaptingManage = new BLL.AdaptingManage(); - var pipeLineManage = new BLL.AssetsPipeMain(); - var AssetsValveMain = new BLL.AssetsValveMain(); - var AssetsElbowMain = new BLL.AssetsElbowMain(); - var AssetsThreelinkMain = new BLL.AssetsThreelinkMain(); - var AssetsFourlinkMain = new BLL.AssetsFourlinkMain(); - try - { - var allPump = Task.Run(async () => await AssetsPumpMain.GetAll()).Result; - var allAdapting = Task.Run(async () => await adaptingManage.GetAll()).Result; - var allPipeLine = Task.Run(async () => await pipeLineManage.GetAll()).Result; - var allValve = Task.Run(async () => await AssetsValveMain.GetAll()).Result; - var allElbow = Task.Run(async () => await AssetsElbowMain.GetAll()).Result; - var allThreeLink = Task.Run(async () => await AssetsThreelinkMain.GetAll()).Result; - var allFourLink = Task.Run(async () => await AssetsFourlinkMain.GetAll()).Result; - //娉靛尮閰� - foreach (var item in assetsAutoMatchingView.PumpMatchingList) - { - if (MatchingPumps(item, allPump)) - { - IsMaching = true; - } - } - //涓夐�氬尮閰� - foreach (var item in assetsAutoMatchingView.ThreelinkMatchingList) - { - if (MatchingThreelink(item, allThreeLink)) - { - IsMaching = true; - } - } - //鍥涢�氬尮閰� - foreach (var item in assetsAutoMatchingView.FourlinkMatchingList) - { - if (MatchingFourlink(item, allFourLink)) - { - IsMaching = true; - } - } - //绠¢亾鍖归厤 - foreach (var item in assetsAutoMatchingView.PipeMatchingList) - { - if (MatchingPipe(item, allPipeLine)) - { - IsMaching = true; - } - } - //闃�闂ㄥ尮閰� - foreach (var item in assetsAutoMatchingView.ValveMatchingList) - { - if (MatchingValve(item, allValve)) - { - IsMaching = true; - } - } - //寮ご鍖归厤 - foreach (var item in assetsAutoMatchingView.ElbowMatchingList) - { - if (MatchingElbow(item, allElbow)) - { - IsMaching = true; - } - } - } - catch (Exception ex) - { - Error = ex.Message; - return false; - } - return IsMaching; - } - - //娉靛尮閰� - public static bool MatchingPumps(PumpMatchingViewModel InputModel, List<Vmo.AssetsPumpMainVmo> AssetsPumpMainVmos) - { - if (AssetsPumpMainVmos == null) - { - return true; - } - Vmo.AssetsPumpMainVmo vmo = null; - int startCount = 0; - // 灏濊瘯缁濆鍖归厤 - var absoluteMatch = AssetsPumpMainVmos.Where(item => - (InputModel.RatedN == null || InputModel.RatedN == item.RatedSpeed) && - (InputModel.RatedQ == null || InputModel.RatedQ == item.RatedFlow) && - (InputModel.RatedH == null || InputModel.RatedH == item.RatedHead) && - (InputModel.RatedP == item.RatedPower)).ToList(); - if (absoluteMatch != null && absoluteMatch.Count != 0) - { - foreach (var item in absoluteMatch) - { - int commonCount = GetIntersect(InputModel.ModelType, item.Name); - if (commonCount > startCount) - { - vmo = item; - startCount = commonCount; - } - } - } - else - { - // 灏濊瘯鍖洪棿鍖归厤 - var rangeMatch = AssetsPumpMainVmos.Where(item => - (InputModel.RatedN.HasValue ? Math.Abs(InputModel.RatedN.Value - item.RatedSpeed) <= _speedTolerance : true) && - (InputModel.RatedQ.HasValue ? Math.Abs(InputModel.RatedQ.Value - item.RatedFlow) <= _flowTolerance : true) && - (InputModel.RatedH.HasValue ? Math.Abs(InputModel.RatedH.Value - item.RatedHead) <= _headTolerance : true) && - (Math.Abs(InputModel.RatedP - item.RatedPower) <= _powerTolerance)).ToList(); - if (rangeMatch != null && rangeMatch.Count != 0) - { - foreach (var item in rangeMatch) - { - int commonCount = GetIntersect(InputModel.ModelType, item.Name); - if (commonCount > startCount) - { - vmo = item; - startCount = commonCount; - } - } - } - } - // - if (vmo == null) - { - foreach (var item in AssetsPumpMainVmos) - { - int commonCount = GetIntersect(InputModel.ModelType, item.Name); - if (commonCount > startCount) - { - vmo = item; - startCount = commonCount; - } - } - } - if (vmo != null) - { - InputModel.MatchingRatedH = vmo.RatedHead; - InputModel.MatchingRatedN = vmo.RatedSpeed; - InputModel.MatchingRatedQ = vmo.RatedFlow; - InputModel.MatchingRatedP = vmo.RatedPower; - InputModel.MatchingDbId = vmo.ID.ToString(); - InputModel.MatchingModelType = vmo.Name; - var list = Task.Run(async () => await new BLL.XhsPumpMainPhartMappingExtensions().GetByPumpMainID(vmo.ID)).Result; - if (list != null && list.Count > 0) - { - InputModel.MatchingCurveDbId = list.First().ID.ToString(); - var graph_qh = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQH); - var graph_qe = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQE); - var graph_qp = list.First().Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQP); - if (graph_qh != null) - { - var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_qh.GraphType, graph_qh.GeometryInfo, 100, null); - InputModel.MatchingCurveQH = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qh) - { - InputModel.MatchingCurveQH.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - if (graph_qe != null) - { - var points_qe = PhartPerformCurveHelper.GetFeatPointList(graph_qe.GraphType, graph_qe.GeometryInfo, 100, null); - InputModel.MatchingCurveQE = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qe) - { - InputModel.MatchingCurveQE.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - if (graph_qp != null) - { - var points_qp = PhartPerformCurveHelper.GetFeatPointList(graph_qp.GraphType, graph_qp.GeometryInfo, 100, null); - InputModel.MatchingCurveQP = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qp) - { - InputModel.MatchingCurveQP.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - } - return true; - } - return false; - } - - //闃�闂ㄥ尮閰� - public static bool MatchingValve(ValveMatchingViewModel input, List<Vmo.AssetsValveMainVmo> adaptingManageVmos) - { - if (adaptingManageVmos == null) - { - return true; - } - HStation.Vmo.AssetsValveMainVmo vmo = null; - int firstCount = 0; - //鍙e緞鏈�灏忓樊鍊� - // 缁濆鍖归厤 - adaptingManageVmos = adaptingManageVmos.Where(x => x.Type.ToString() == input.ValveType).ToList(); - var absoluteMatch = adaptingManageVmos.Where(i => - ((i.Caliber == null) || i.Caliber == input.Diameter) && - ((input.Material == null && i.MaterialName == null) || i.MaterialName == input.Material)).ToList(); - if (absoluteMatch.Count > 1) - { - var allMatchingList = absoluteMatch - .Where(x => GetIntersect(x.KeyWord == string.Empty - ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - else if (absoluteMatch.Count == 1) - { - vmo = absoluteMatch.First(); - } - else - { - //鍖洪棿鍖归厤 - var rangeMatch = adaptingManageVmos - .Where(item => - item.Caliber == null || - Math.Abs(Convert.ToInt64(item.Caliber) - Convert.ToInt64(input.Diameter)) <= _caliberTolerance - || Math.Abs(Convert.ToInt64(item.ValveLift) - Convert.ToInt64(input.ValveLift)) <= _valveLift) - .ToList(); - if (rangeMatch != null && rangeMatch.Count > 0) - { - var materialList = new List<Vmo.AssetsValveMainVmo>(); - foreach (var range in rangeMatch) - { - //浠ユ潗鏂欎负鏉′欢寮�濮嬪尮閰� - if (range.MaterialName == null) - { - materialList.Add(range); - } - else - { - int commonCount = GetIntersect(input.Material, range.MaterialName); - if (commonCount > firstCount) - { - materialList.Add(range); - firstCount = commonCount; - } - } - } - //鐢ㄥ凡缁忕瓫閫夊畬鎴愮殑鍒楄〃涓互鍚嶇О绛涢�� - firstCount = 0; - if (materialList.Count < 1) - return false; - var allMatchingList = materialList - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - } - //鍙e緞鍜屾潗鏂欓兘娌℃湁鍖归厤涓�,灏辩敤鍨嬪彿鍚嶅尮閰� - firstCount = 0; - if (vmo != null) - { - input.MatchingMinorLoss = vmo.Coefficient; - input.MatchingDbId = vmo.ID.ToString(); - input.MatchingDiameter = vmo.Caliber; - input.MatchingMaterial = vmo.MaterialName; - input.MatchingModelType = vmo.Name; - // input.MatchingValveSetting = - input.MatchingValveLift = vmo.ValveLift; - input.MatchingValveType = vmo.Type.ToString(); - return true; - } - return false; - } - - //绠¢亾鍖归厤 - public static bool MatchingPipe(PipeMatchingViewModel input, List<Vmo.AssetsPipeMainVmo> pipeLineManageVmos) - { - if (pipeLineManageVmos == null) - { - return true; - } - Vmo.AssetsPipeMainVmo vmo = null; - int firstCount = 0; - //鍙e緞鏈�灏忓樊鍊� - // 缁濆鍖归厤 - var absoluteMatch = pipeLineManageVmos.Where(i => - ((i.Caliber == null) || i.Caliber == input.Diameter) && - ((input.Material == null) || i.MaterialName == input.Material)).ToList(); - if (absoluteMatch.Count > 1) - { - } - else if (absoluteMatch.Count == 1) - { - vmo = absoluteMatch.First(); - } - else - { - //鍖洪棿鍖归厤 - var rangeMatch = pipeLineManageVmos - .Where(item => - item.Caliber == null || - Math.Abs(Convert.ToInt64(item.Caliber) - Convert.ToInt64(input.Diameter)) <= _caliberTolerance) - .ToList(); - if (rangeMatch != null) - { - var materialList = new List<Vmo.AssetsPipeMainVmo>(); - foreach (var range in rangeMatch) - { - //浠ユ潗鏂欎负鏉′欢寮�濮嬪尮閰� - if (range.MaterialName == null) - { - materialList.Add(range); - } - else - { - int commonCount = GetIntersect(input.Material, range.MaterialName); - if (commonCount > firstCount) - { - materialList.Add(range); - firstCount = commonCount; - } - } - } - firstCount = 0; - if (materialList.Count < 1) - return false; - var allMatchingList = materialList - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - } - //鍙e緞鍜屾潗鏂欓兘娌℃湁鍖归厤涓�,灏辩敤鍨嬪彿鍚嶅尮閰� - if (vmo != null) - { - switch (input.eAlgorithmType) - { - case HStation.Assets.eAlgorithmType.Hazen: - input.MatchingRoughness = vmo.Hazen; - break; - - case HStation.Assets.eAlgorithmType.Manning: - input.MatchingRoughness = vmo.Manning; - break; - - case HStation.Assets.eAlgorithmType.Darcy: - input.MatchingRoughness = vmo.Darcy; - break; - - default: - input.MatchingRoughness = vmo.Hazen; - break; - } - input.MatchingDbId = vmo.ID.ToString(); - input.MatchingMaterial = vmo.MaterialName; - input.MatchingModelType = vmo.Name; - input.MatchingMinorLoss = vmo.Coefficient; - return true; - } - return false; - } - - //寮ご鍖归厤 - public static bool MatchingElbow(ElbowMatchingViewModel input, List<Vmo.AssetsElbowMainVmo> adaptingManageVmos) - { - if (adaptingManageVmos == null) - { - return true; - } - Vmo.AssetsElbowMainVmo vmo = null; - int firstCount = 0; - // 缁濆鍖归厤 - var absoluteMatch = adaptingManageVmos.Where(i => - ((input.Caliber == null && i.Caliber == null) || i.Caliber == input.Caliber) && - ((input.Material == null) || i.MaterialName == input.Material)).ToList(); - if (absoluteMatch.Count > 1) - { - var allMatchingList = absoluteMatch - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - else if (absoluteMatch.Count == 1) - { - vmo = absoluteMatch.First(); - } - else - { - //鍖洪棿鍖归厤 - var rangeMatch = adaptingManageVmos - .Where(item => - (input.Caliber == null && input.Caliber == null) - || (item.Caliber.HasValue && input.Caliber.HasValue) && //瀛樺湪鍊�,鍒欒繘琛屼笅闈㈠樊鍊煎垽鏂� - Math.Abs(Convert.ToInt64(item.Caliber) - Convert.ToInt64(input.Caliber)) <= _caliberTolerance - || item.ConnectionLength == input.ConnectionLength - || (item.Angle.HasValue && input.Angle.HasValue) && //瀛樺湪鍊�,鍒欒繘琛屼笅闈㈠樊鍊煎垽鏂� - Math.Abs(Convert.ToInt64(item.Angle) - Convert.ToInt64(input.Angle)) <= _angle) - .ToList(); - if (rangeMatch != null && rangeMatch.Count > 0) - { - var materialList = new List<Vmo.AssetsElbowMainVmo>(); - foreach (var range in rangeMatch) - { - //浠ユ潗鏂欎负鏉′欢寮�濮嬪尮閰� - if (range.MaterialName == null) - { - materialList.Add(range); - } - else - { - int commonCount = GetIntersect(input.Material, range.MaterialName); - if (commonCount > firstCount) - { - materialList.Add(range); - firstCount = commonCount; - } - } - } - //鐢ㄥ凡缁忕瓫閫夊畬鎴愮殑鍒楄〃涓互鍚嶇О绛涢�� - firstCount = 0; - if (materialList.Count < 1) - return false; - var allMatchingList = materialList - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - } - //绮剧‘鍖归厤鍜岀矖绯欏尮閰嶉兘娌℃湁鍖归厤鍒板氨杩斿洖閿欒 - firstCount = 0; - if (vmo != null) - { - input.MatchingMinorLoss = vmo.Coefficient; - input.MatchingDbId = vmo.ID.ToString(); - input.MatchingMaterial = vmo.MaterialName; - input.MatchingModelType = vmo.Name; - input.MatchingConnectionLength = vmo.ConnectionLength; - input.MatchingAngle = vmo.Angle; - return true; - } - return false; - } - - //涓夐�氬尮閰� - public static bool MatchingThreelink(ThreelinkMatchingViewModel input, List<Vmo.AssetsThreelinkMainVmo> adaptingManageVmos) - { - if (adaptingManageVmos == null) - { - return true; - } - Vmo.AssetsThreelinkMainVmo vmo = null; - int firstCount = 0; - // 缁濆鍖归厤 - var absoluteMatch = adaptingManageVmos.Where(i => - ((input.Caliber == null && i.Caliber == null) || i.Caliber == input.Caliber) && - ((input.Material == null) || i.MaterialName == input.Material)).ToList(); - if (absoluteMatch.Count > 1) - { - var allMatchingList = absoluteMatch - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - else if (absoluteMatch.Count == 1) - { - vmo = absoluteMatch.First(); - } - else - { - //鍖洪棿鍖归厤 - var rangeMatch = adaptingManageVmos - .Where(item => - input.Caliber == null || - item.Caliber == null || - Math.Abs(Convert.ToInt64(item.Caliber) - Convert.ToInt64(input.Caliber)) <= _caliberTolerance) - .ToList(); - if (rangeMatch != null && rangeMatch.Count > 0) - { - var materialList = new List<Vmo.AssetsThreelinkMainVmo>(); - foreach (var range in rangeMatch) - { - //浠ユ潗鏂欎负鏉′欢寮�濮嬪尮閰� - if (range.MaterialName == null) - { - materialList.Add(range); - } - else - { - int commonCount = GetIntersect(input.Material, range.MaterialName); - if (commonCount > firstCount) - { - materialList.Add(range); - firstCount = commonCount; - } - } - } - //鐢ㄥ凡缁忕瓫閫夊畬鎴愮殑鍒楄〃涓互鍚嶇О绛涢�� - firstCount = 0; - if (materialList.Count < 1) - return false; - var allMatchingList = materialList - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - } - //绮剧‘鍖归厤鍜岀矖绯欏尮閰嶉兘娌℃湁鍖归厤鍒板氨杩斿洖閿欒 - firstCount = 0; - if (vmo != null) - { - input.MatchingMinorLoss = vmo.Coefficient; - input.MatchingDbId = vmo.ID.ToString(); - input.MatchingMaterial = vmo.MaterialName; - input.MatchingModelType = vmo.Name; - input.MatchingRunThroughCoefficient = vmo.RunThroughCoefficient; - input.MatchingBranchThroughCoefficient = vmo.BranchThroughCoefficient; - return true; - } - return false; - } - - //鍥涢�氬尮閰� - public static bool MatchingFourlink(FourlinkMatchingViewModel input, List<Vmo.AssetsFourlinkMainVmo> adaptingManageVmos) - { - if (adaptingManageVmos == null) - { - return true; - } - Vmo.AssetsFourlinkMainVmo vmo = null; - int firstCount = 0; - // 缁濆鍖归厤 - var absoluteMatch = adaptingManageVmos.Where(i => - ((input.Caliber == null && i.Caliber == null) || i.Caliber == input.Caliber) && - ((input.Material == null) || i.MaterialName == input.Material)).ToList(); - if (absoluteMatch.Count > 1) - { - var allMatchingList = absoluteMatch - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - else if (absoluteMatch.Count == 1) - { - vmo = absoluteMatch.First(); - } - else - { - //鍖洪棿鍖归厤 - var rangeMatch = adaptingManageVmos - .Where(item => - input.Caliber == null || - item.Caliber == null || - Math.Abs(Convert.ToInt64(item.Caliber) - Convert.ToInt64(input.Caliber)) <= _caliberTolerance) - .ToList(); - if (rangeMatch != null && rangeMatch.Count > 0) - { - var materialList = new List<Vmo.AssetsFourlinkMainVmo>(); - foreach (var range in rangeMatch) - { - //浠ユ潗鏂欎负鏉′欢寮�濮嬪尮閰� - if (range.MaterialName == null) - { - materialList.Add(range); - } - else - { - int commonCount = GetIntersect(input.Material, range.MaterialName); - if (commonCount > firstCount) - { - materialList.Add(range); - firstCount = commonCount; - } - } - } - //鐢ㄥ凡缁忕瓫閫夊畬鎴愮殑鍒楄〃涓互鍚嶇О绛涢�� - firstCount = 0; - if (materialList.Count < 1) - return false; - var allMatchingList = materialList - .Where(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType) >= 2) - .OrderByDescending(x => GetIntersect(x.KeyWord == string.Empty ? x.Name : x.KeyWord, input.ModelType)) - .ToList();//鎵惧嚭鐩稿悓瀛楃鍦�2浠ヤ笂骞朵笖杩涜鎺掑簭 - if (allMatchingList.Count < 1) - return false;//閫氳繃鍨嬪彿鍚嶆病鏈夋壘鍒�,鍒欒涓烘病鏈夊尮閰嶅埌 - foreach (var item in allMatchingList) - { - if (item.IsDefault) - { - vmo = item; - } - } - vmo = allMatchingList.First();//濡傛灉娌℃湁璁剧疆榛樿鍊�,鍒欓粯璁よ繑鍥炲尮閰嶅瓧绗︽渶澶氱殑涓�鏉℃暟鎹� - } - } - //绮剧‘鍖归厤鍜岀矖绯欏尮閰嶉兘娌℃湁鍖归厤鍒板氨杩斿洖閿欒 - firstCount = 0; - if (vmo != null) - { - input.MatchingMinorLoss = vmo.Coefficient; - input.MatchingDbId = vmo.ID.ToString(); - input.MatchingMaterial = vmo.MaterialName; - input.MatchingModelType = vmo.Name; - return true; - } - return false; - } - - /// <summary> - /// 鑾峰彇涓や釜瀛楃涓茬殑鎵�鏈変氦闆� - /// </summary> - public static int GetIntersect(string str1, string str2) - { - if (str1 == null || str2 == null) return 0; - - return string.Join("", str1.Intersect(str2)).Count(); - } - } -} \ No newline at end of file diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs index b02805d..38a4fb0 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs @@ -11,85 +11,75 @@ public XhsProjectSimulationPropertyCtrl() { InitializeComponent(); - this.hydroVisualPropertyCtrl1.MatchingDbEvent += HydroParterPropertyCtrl1_MatchingDbEvent; - this.hydroVisualPropertyCtrl1.SetCurveEvent += HydroParterPropertyCtrl1_SetCurveEvent; - this.hydroVisualPropertyCtrl1.SetPatternEvent += HydroParterPropertyCtrl1_SetPatternEvent; - this.hydroVisualPropertyCtrl1.BlinkLinkParterEvent += HydroParterPropertyCtrl1_BlinkLinkParterEvent; - this.hydroVisualPropertyCtrl1.HydroViewEvent += HydroParterPropertyCtrl1_ViewParterEvent; + this.hydroVisualPropertyCtrl1.MatchingDbEvent += HydroVisualPropertyCtrl1_MatchingDbEvent; + this.hydroVisualPropertyCtrl1.SetCurveEvent += HydroVisualPropertyCtrl1_SetCurveEvent; + this.hydroVisualPropertyCtrl1.SetPatternEvent += HydroVisualPropertyCtrl1_SetPatternEvent; - this.hydroVisualPropertyCtrl1.PropertyValueChangedEvent += HydroParterPropertyCtrl1_PropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.MarkPropertyValueChangedEvent += HydroParterPropertyCtrl1_MarkPropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.GradingPropertyValueChangedEvent += HydroParterPropertyCtrl1_GradingPropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.FlowDirectionPropertyValueChangedEvent += HydroParterPropertyCtrl1_FlowDirectionPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.HydroViewEvent += HydroVisualPropertyCtrl1_HydroViewEvent; + this.hydroVisualPropertyCtrl1.BlinkLinkNodeEvent += HydroVisualPropertyCtrl1_BlinkLinkNodeEvent; + this.hydroVisualPropertyCtrl1.PropertyValueChangedEvent += HydroVisualPropertyCtrl1_PropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.MarkPropertyValueChangedEvent += HydroVisualPropertyCtrl1_MarkPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.GradingPropertyValueChangedEvent += HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.FlowEffectPropertyValueChangedEvent += HydroVisualPropertyCtrl1_FlowEffectPropertyValueChangedEvent; } + #region 浜嬩欢闆� - - - + /// <summary> + /// 鏋勪欢鏌ョ湅浜嬩欢 + /// </summary> + public event Action<HydroVisualViewModel> HydroViewEvent; /// <summary> /// 寮鸿皟杩炴帴缁勪欢浜嬩欢 - /// 绗竴涓弬鏁颁负缁勪欢Code - /// 绗簩涓弬鏁颁负杩炴帴缁勪欢Code + /// 绗竴涓弬鏁颁负缁勪欢 + /// 绗簩涓弬鏁颁负杩炴帴鑺傜偣Code /// </summary> - public event Action<string, string> BlinkLinkParterEvent; + public event Action<HydroLinkViewModel, string> BlinkLinkNodeEvent; /// <summary> /// 灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> PropertyValueChangedEvent; + public event Action<HydroVisualViewModel> PropertyValueChangedEvent; /// <summary> /// 鏍囨敞灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> MarkPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> MarkPropertyValueChangedEvent; /// <summary> /// 鍒嗙骇灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> GradingPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> GradingPropertyValueChangedEvent; /// <summary> - /// 娴佸悜灞炴�у�兼敼鍙樹簨浠� + /// 姘存祦鍔ㄧ敾灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> FlowDirectionPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> FlowEffectPropertyValueChangedEvent; + + #endregion + + #region 灞炴�ц祴鍊� /// <summary> - /// 鏌ョ湅鏋勪欢浜嬩欢 + /// 閫夋嫨瀵硅薄 /// </summary> - public event Action<Yw.Model.HydroVisualInfo> ViewParterEvent; - - //姘村姏淇℃伅鏂规硶 - private Func<Yw.Model.HydroModelInfo> _hydroInfoFunc = null; - private Func<List<HydroCalcuVisualResult>> _allHydroCalcuResultListFunc = null; - - /// <summary> - /// 鍒濆鍖栨暟鎹� - /// </summary> - public void InitialData(Func<Yw.Model.HydroModelInfo> hydroInfoFunc, Func<List<HydroCalcuVisualResult>> allHydroCalcuResultListFunc) - { - _hydroInfoFunc = hydroInfoFunc; - _allHydroCalcuResultListFunc = allHydroCalcuResultListFunc; - } - - //鑾峰彇姘村姏淇℃伅 - private Yw.Model.HydroModelInfo GetHydroInfo() - { - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) - { - this.hydroVisualPropertyCtrl1.SelectedObject = null; - return default; - } - return hydroInfo; - } - - public HydroVisualViewModel SelectedObject { get { return this.hydroVisualPropertyCtrl1.SelectedObject; } set { this.hydroVisualPropertyCtrl1.SelectedObject = value; } + } + + #endregion + + #region 灞炴�ф洿鏂� + + /// <summary> + /// 閲嶆柊杞藉叆鏁版嵁 + /// </summary> + public void UpdateData() + { + this.hydroVisualPropertyCtrl1?.UpdateData(); } /// <summary> @@ -98,14 +88,6 @@ public void UpdateRows() { this.hydroVisualPropertyCtrl1?.UpdateRows(); - } - - /// <summary> - /// 閲嶆柊杞藉叆鏁版嵁 - /// </summary> - public void UpdateData() - { - this.hydroVisualPropertyCtrl1?.UpdateData(); } /// <summary> @@ -122,186 +104,38 @@ this.hydroVisualPropertyCtrl1.UpdateRows(); } - /// <summary> - /// 鏇存柊璁$畻灞炴�� - /// </summary> - public void UpdateCalcuProperty(Yw.WinFrmUI.HydroCalcuVisualResult calcuResult) - { - if (calcuResult == null) - { - return; - } - var vm = this.hydroVisualPropertyCtrl1.SelectedObject; - if (vm == null) - { - return; - } - vm.UpdateCalcuProperty(calcuResult); - this.hydroVisualPropertyCtrl1.UpdateRows(); - } + #endregion - //閫夋嫨鏇茬嚎 - private bool HydroParterPropertyCtrl1_SetCurveEvent(HydroParterViewModel propViewModel, string curveType) + #region 浜嬩欢瀹炵幇 + + //鍖归厤Db + private bool HydroVisualPropertyCtrl1_MatchingDbEvent(HydroVisualViewModel vm) { - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) + if (vm == null) { return false; } - switch (curveType) - { - case Yw.WinFrmUI.HydroCurve.Pump: - { - var pumpInfo = hydroInfo.Pumps?.Find(x => x.Code == propViewModel.Code); - if (pumpInfo == null) - { - break; - } - var input = AssetsMatchingParasHelper.Create(hydroInfo, pumpInfo, _allHydroCalcuResultListFunc?.Invoke()); - var dlg = new SinglePumpAnalyDlg(); - dlg.SetBindindData(input); - dlg.ReloadDataEvent += (output) => - { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); - if (bol) - { - propViewModel.UpdateProperty(); - this.hydroVisualPropertyCtrl1.UpdateRows(); - } - return bol; - }; - dlg.ShowDialog(); - return true; - } - case Yw.WinFrmUI.HydroCurve.PumpQH: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.PumpQP: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.PumpQE: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.Valve: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.ValveQL: - { - return false; - } - default: break; - } - return false; - } - - //閫夋嫨妯″紡 - private bool HydroParterPropertyCtrl1_SetPatternEvent(HydroParterViewModel propViewModel, string patternType) - { - switch (patternType) - { - case Yw.WinFrmUI.HydroPattern.Demand: - { - } - break; - - case Yw.WinFrmUI.HydroPattern.Head: - { - } - break; - - default: break; - } - return true; - } - - //灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_PropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.PropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //鏍囨敞灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_MarkPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //鍒嗙骇灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_GradingPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.GradingPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //娴佸悜灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_FlowDirectionPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.FlowDirectionPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - - - - - - //灞炴�ф鍦ㄥ彂鐢熸敼鍙� - private bool HydroParterPropertyCtrl1_PropertyValueChangingEvent(HydroParterViewModel arg) - { - return false; - } - - //鍖归厤Db - private bool HydroParterPropertyCtrl1_MatchingDbEvent(HydroParterViewModel propertyViewModel) - { var bol = false; - if (propertyViewModel == null) - { - return bol; - } - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) - { - return bol; - } - var catalog = Yw.WinFrmUI.HydroParterCatalogHelper.GetCode(propertyViewModel.Catalog); + var catalog = HydroParterCatalogHelper.GetCode(vm.Catalog); switch (catalog) { case Yw.Hydro.ParterCatalog.Pump://姘存车 { - var pumpInfo = hydroInfo.Pumps?.Find(x => x.Code == propertyViewModel.Code); + var pumpInfo = vm.HydroInfo.Pumps?.Find(x => x.Code == vm.Code); if (pumpInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, pumpInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, pumpInfo, null); var dlg = new PumpSingleMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (output) => { - bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); } }; dlg.ShowDialog(); @@ -309,20 +143,20 @@ break; case Yw.Hydro.ParterCatalog.Valve://闃�闂� { - var valveInfo = hydroInfo.Valves?.Find(x => x.Code == propertyViewModel.Code); + var valveInfo = vm.HydroInfo.Valves?.Find(x => x.Code == vm.Code); if (valveInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, valveInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, valveInfo, null); var dlg = new ValveSingleMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (rhs) => { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, rhs); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, rhs); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); this.hydroVisualPropertyCtrl1.UpdateRows(); } }; @@ -335,20 +169,20 @@ break; case Yw.Hydro.ParterCatalog.Elbow://寮ご { - var elbowInfo = hydroInfo.Elbows?.Find(x => x.Code == propertyViewModel.Code); + var elbowInfo = vm.HydroInfo.Elbows?.Find(x => x.Code == vm.Code); if (elbowInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, elbowInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, elbowInfo, null); var dlg = new ElbowSingMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (output) => { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); this.hydroVisualPropertyCtrl1.UpdateRows(); } }; @@ -368,30 +202,151 @@ return bol; } - //寮鸿皟杩炴帴缁勪欢 - private void HydroParterPropertyCtrl1_BlinkLinkParterEvent(string code, string linkCode) + //閫夋嫨鏇茬嚎 + private bool HydroVisualPropertyCtrl1_SetCurveEvent(HydroVisualViewModel vm, string curveType) { - if (string.IsNullOrEmpty(code)) + if (vm == null) { - return; + return false; } - if (string.IsNullOrEmpty(linkCode)) + switch (curveType) { - return; + case HydroCurve.Pump: + { + var pumpInfo = vm.HydroInfo.Pumps?.Find(x => x.Code == vm.Code); + if (pumpInfo == null) + { + break; + } + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, pumpInfo, null); + var dlg = new SinglePumpAnalyDlg(); + dlg.SetBindindData(input); + dlg.ReloadDataEvent += (output) => + { + var bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); + if (bol) + { + vm.UpdateProperty(); + this.hydroVisualPropertyCtrl1.UpdateRows(); + } + return bol; + }; + dlg.ShowDialog(); + return true; + } + case HydroCurve.PumpQH: + { + return false; + } + case HydroCurve.PumpQP: + { + return false; + } + case HydroCurve.PumpQE: + { + return false; + } + case HydroCurve.Valve: + { + return false; + } + case HydroCurve.ValveQL: + { + return false; + } + default: break; } - this.BlinkLinkParterEvent?.Invoke(code, linkCode); + return false; } - //鏌ョ湅鏋勪欢 - private void HydroParterPropertyCtrl1_ViewParterEvent(HydroVisualViewModel vm) + //閫夋嫨妯″紡 + private bool HydroVisualPropertyCtrl1_SetPatternEvent(HydroVisualViewModel vm, string patternType) + { + switch (patternType) + { + case HydroPattern.Head: + { + return false; + } + case HydroPattern.Demand: + { + return false; + } + default: break; + } + return false; + } + + #endregion + + #region 浜嬩欢绌块�� + + //鏋勪欢鏌ョ湅浜嬩欢 + private void HydroVisualPropertyCtrl1_HydroViewEvent(HydroVisualViewModel vm) { if (vm == null) { return; } - this.ViewParterEvent?.Invoke(vm.Vmo); + this.HydroViewEvent?.Invoke(vm); } + //寮鸿皟杩炴帴鑺傜偣 + private void HydroVisualPropertyCtrl1_BlinkLinkNodeEvent(HydroLinkViewModel vm, string linkNodeCode) + { + if (vm == null) + { + return; + } + if (string.IsNullOrEmpty(linkNodeCode)) + { + return; + } + this.BlinkLinkNodeEvent?.Invoke(vm, linkNodeCode); + } + + //灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_PropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.PropertyValueChangedEvent?.Invoke(vm); + } + + //鏍囨敞灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_MarkPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.MarkPropertyValueChangedEvent?.Invoke(vm); + } + + //鍒嗙骇灞炴�у彂鐢熸敼鍙� + private void HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.GradingPropertyValueChangedEvent?.Invoke(vm); + } + + //姘存祦鍔ㄧ敾灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_FlowEffectPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.FlowEffectPropertyValueChangedEvent?.Invoke(vm); + } + + #endregion + } } \ No newline at end of file diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/02-bimface/XhsProjectSimulationBimfaceCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/02-bimface/XhsProjectSimulationBimfaceCtrl.cs index b1d455f..c016336 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/02-bimface/XhsProjectSimulationBimfaceCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/02-bimface/XhsProjectSimulationBimfaceCtrl.cs @@ -343,17 +343,25 @@ /// <summary> /// 璁剧疆寮鸿皟鏋勪欢 /// </summary> - public async Task SetBlinkComponents(List<string> elementIds, string color, double transparency) + public async Task SetBlinkComponents(string elementId, string color = _blinkColor, double transparency = _blinkTransparency) { - await _bimfaceInteropContainer?.SetBlinkComponents(elementIds, color, transparency); + if (string.IsNullOrEmpty(elementId)) + { + return; + } + await _bimfaceInteropContainer?.SetBlinkComponents(new List<string>() { elementId }, color, transparency); } /// <summary> /// 璁剧疆寮鸿皟鏋勪欢 /// </summary> - public async Task SetBlinkComponents(List<string> elementIds) + public async Task SetBlinkComponents(List<string> elementIds, string color = _blinkColor, double transparency = _blinkTransparency) { - await _bimfaceInteropContainer?.SetBlinkComponents(elementIds, _blinkColor, _blinkTransparency); + if (elementIds == null || elementIds.Count < 1) + { + return; + } + await _bimfaceInteropContainer?.SetBlinkComponents(elementIds, color, transparency); } /// <summary> @@ -415,7 +423,7 @@ /// <summary> /// 鏄剧ず涓氬姟璁$畻鑷畾涔夋爣绛� /// </summary> - public async Task SetLogicCalcuCustomLabels(CalcuResult calcuResult) + public async Task SetLogicCalcuCustomLabelsCalcuResult(HydroCalcuResult calcuResult) { var hydroInfo = _hydroInfoFunc?.Invoke(); if (hydroInfo == null) @@ -438,9 +446,9 @@ if (x is Yw.Model.HydroPumpInfo pump) { var hz = Math.Round(pump.RatedHz * pump.SpeedRatio); - var calcuPump = calcuResult.LinkList.Find(x => x.Id == pump.Code); - var calcuPumpStart = calcuResult.NodeList.Find(x => x.Id == pump.StartCode); - var calcuPumpEnd = calcuResult.NodeList.Find(x => x.Id == pump.EndCode); + var calcuPump = calcuResult.LinkList.Find(x => x.Code == pump.Code); + var calcuPumpStart = calcuResult.NodeList.Find(x => x.Code == pump.StartCode); + var calcuPumpEnd = calcuResult.NodeList.Find(x => x.Code == pump.EndCode); var pumpCustomLabel = new LogicCalcuCustomLabel(); pumpCustomLabel.Id = pump.Code; pumpCustomLabel.Distance = 10000; @@ -448,22 +456,22 @@ { new LogicCalcuCustomLabelItem(){ Name="鐘舵��",Value=HydroLinkStatusHelper.GetStatusName(pump.LinkStatus),Unit=string.Empty}, new LogicCalcuCustomLabelItem(){ Name="棰戠巼",Value=hz.ToString(),Unit=string.Empty}, - new LogicCalcuCustomLabelItem(){ Name="娴侀噺",Value=Math.Round(calcuPump.Flow,1).ToString(),Unit="m鲁/h"}, - new LogicCalcuCustomLabelItem(){ Name="杩涘彛鍘嬪姏",Value=Math.Round(calcuPumpStart.Head,4).ToString(),Unit="m"}, - new LogicCalcuCustomLabelItem(){ Name="鍑哄彛鍘嬪姏",Value=Math.Round(calcuPumpEnd.Head,4).ToString(),Unit="m"}, + new LogicCalcuCustomLabelItem(){ Name="娴侀噺",Value=Math.Round(calcuPump.CalcuFlow.Value,1).ToString(),Unit="m鲁/h"}, + new LogicCalcuCustomLabelItem(){ Name="杩涘彛鍘嬪姏",Value=Math.Round(calcuPumpStart.CalcuHead.Value,4).ToString(),Unit="m"}, + new LogicCalcuCustomLabelItem(){ Name="鍑哄彛鍘嬪姏",Value=Math.Round(calcuPumpEnd.CalcuHead.Value,4).ToString(),Unit="m"}, }; obj.Add(pumpCustomLabel); } else if (x is Yw.Model.HydroEmitterInfo emitter) { - var calcuEmitter = calcuResult.NodeList.Find(x => x.Id == emitter.Code); + var calcuEmitter = calcuResult.NodeList.Find(x => x.Code == emitter.Code); var emitterCustomLabel = new LogicCalcuCustomLabel(); emitterCustomLabel.Id = emitter.Code; emitterCustomLabel.Distance = 10000; emitterCustomLabel.Data = new List<LogicCalcuCustomLabelItem>() { - new LogicCalcuCustomLabelItem(){ Name="娴侀噺",Value=Math.Round(calcuEmitter.Demand,1).ToString(),Unit="m鲁/h"}, - new LogicCalcuCustomLabelItem(){ Name="鍘嬪姏",Value=Math.Round(calcuEmitter.Head,4).ToString(),Unit="m"} + new LogicCalcuCustomLabelItem(){ Name="娴侀噺",Value=Math.Round(calcuEmitter.CalcuDemand.Value,1).ToString(),Unit="m鲁/h"}, + new LogicCalcuCustomLabelItem(){ Name="鍘嬪姏",Value=Math.Round(calcuEmitter.CalcuDemand.Value,4).ToString(),Unit="m"} }; obj.Add(emitterCustomLabel); } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/XhsProjectSimulationSchemeMgrPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/XhsProjectSimulationSchemeMgrPage.cs index ca539a6..d6479f6 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/XhsProjectSimulationSchemeMgrPage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/XhsProjectSimulationSchemeMgrPage.cs @@ -179,57 +179,57 @@ { _propertyCtrl = new XhsProjectSimulationPropertyCtrl(); _propertyCtrl.Dock = DockStyle.Fill; - _propertyCtrl.InitialData(() => _hydroInfo, () => GetCalcuResultList()); - _propertyCtrl.BlinkLinkParterEvent += async (code, linkCode) => - { //寮鸿皟杩炴帴缁勪欢 - if (string.IsNullOrEmpty(code)) - { - return; - } - if (string.IsNullOrEmpty(linkCode)) - { - return; - } - if (_hydroInfo == null) - { - return; - } - var allVisualList = _hydroInfo.GetAllVisuals(); - if (allVisualList == null || allVisualList.Count < 1) - { - return; - } - var linkParter = allVisualList.Find(x => x.Code == linkCode); - if (linkParter == null) - { - return; - } - var blinkCodes = new List<string>(); - if (linkParter.GetType() == typeof(Yw.Model.HydroJunctionInfo)) - { - var allLinkList = _hydroInfo.GetAllLinks(); - if (allLinkList == null || allLinkList.Count < 1) - { - return; - } - var linkList = allLinkList.Where(x => (x.StartCode == linkParter.Code || x.EndCode == linkParter.Code) && x.Code != code).ToList(); - if (linkList == null || linkList.Count < 1) - { - return; - } - blinkCodes.AddRange(linkList.Select(x => x.Code)); - } - else - { - blinkCodes.Add(linkCode); - } + //_propertyCtrl.InitialData(() => _hydroInfo, () => GetCalcuResultList()); + //_propertyCtrl.BlinkLinkNodeEvent += async (code, linkCode) => + //{ //寮鸿皟杩炴帴缁勪欢 + // if (string.IsNullOrEmpty(code)) + // { + // return; + // } + // if (string.IsNullOrEmpty(linkCode)) + // { + // return; + // } + // if (_hydroInfo == null) + // { + // return; + // } + // var allVisualList = _hydroInfo.GetAllVisuals(); + // if (allVisualList == null || allVisualList.Count < 1) + // { + // return; + // } + // var linkParter = allVisualList.Find(x => x.Code == linkCode); + // if (linkParter == null) + // { + // return; + // } + // var blinkCodes = new List<string>(); + // if (linkParter.GetType() == typeof(Yw.Model.HydroJunctionInfo)) + // { + // var allLinkList = _hydroInfo.GetAllLinks(); + // if (allLinkList == null || allLinkList.Count < 1) + // { + // return; + // } + // var linkList = allLinkList.Where(x => (x.StartCode == linkParter.Code || x.EndCode == linkParter.Code) && x.Code != code).ToList(); + // if (linkList == null || linkList.Count < 1) + // { + // return; + // } + // blinkCodes.AddRange(linkList.Select(x => x.Code)); + // } + // else + // { + // blinkCodes.Add(linkCode); + // } - await _bimfaceCtrl?.SetBlinkComponents(blinkCodes); - await Task.Delay(5000); - await _bimfaceCtrl?.ClearBlinkComponents(); - }; + // await _bimfaceCtrl?.SetBlinkComponents(blinkCodes); + // await Task.Delay(5000); + // await _bimfaceCtrl?.ClearBlinkComponents(); + //}; - _propertyCtrl.ViewParterEvent += (parter) => + _propertyCtrl.HydroViewEvent += (parter) => { if (parter == null) { @@ -256,11 +256,11 @@ //鍒嗙骇灞炴�у彂鐢熸敼鍙� //鍒ゆ柇褰撳墠鏄惁鏈夊垎绾у睍绀猴紝鑻ユ湁鍒欐洿鏂板垎绾э紝鏈�濂芥槸鏇存柊鍗曚釜鍒嗙骇 }; - _propertyCtrl.FlowDirectionPropertyValueChangedEvent += async (parter) => + _propertyCtrl.FlowEffectPropertyValueChangedEvent += async (parter) => { //娴佸悜灞炴�у彂鐢熸敼鍙� //鍒ゆ柇娴佸悜鏄惁鍔犺浇锛屽鏋滃姞杞藉垯鏇存柊娴佸悜锛屾渶濂芥槸鏇存柊鍗曚釜娴佸悜 - UpdateFlowEffect(parter); + //UpdateFlowEffect(parter); //await _bimfaceCtrl?.UnloadFlowEffectById(parter.Code); }; diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/01-viewmodel/ValveMatchingViewModel.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/01-viewmodel/ValveMatchingViewModel.cs index dbd593d..fc84601 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/01-viewmodel/ValveMatchingViewModel.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/01-viewmodel/ValveMatchingViewModel.cs @@ -118,7 +118,7 @@ /// </summary> [DisplayName("闃�闂ㄧ被鍨�")] [Browsable(true)] - public eValveType ValveType { get; set; } + public HStation.Assets.eValveType ValveType { get; set; } /// <summary> /// 闃�闂ㄨ缃� @@ -174,7 +174,7 @@ /// </summary> [DisplayName("鍖归厤闃�闂ㄧ被鍨�")] [Browsable(true)] - public eValveType? MatchingValveType { get; set; } + public HStation.Assets.eValveType? MatchingValveType { get; set; } /// <summary> /// 鍖归厤闃�闂ㄨ缃� diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs index 3fca934..060adc4 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.Designer.cs @@ -32,8 +32,8 @@ { components = new Container(); ComponentResourceManager resources = new ComponentResourceManager(typeof(XhsProjectSimulationCorePage)); - DevExpress.Utils.SuperToolTip superToolTip1 = new DevExpress.Utils.SuperToolTip(); - DevExpress.Utils.ToolTipItem toolTipItem1 = new DevExpress.Utils.ToolTipItem(); + DevExpress.Utils.SuperToolTip superToolTip2 = new DevExpress.Utils.SuperToolTip(); + DevExpress.Utils.ToolTipItem toolTipItem2 = new DevExpress.Utils.ToolTipItem(); ribbonControl1 = new DevExpress.XtraBars.Ribbon.RibbonControl(); barBtnCheck = new DevExpress.XtraBars.BarButtonItem(); barBtnWorkingCalcu = new DevExpress.XtraBars.BarButtonItem(); @@ -53,7 +53,7 @@ barBtnSetTranslationList = new DevExpress.XtraBars.BarButtonItem(); barBtnSetExchangerList = new DevExpress.XtraBars.BarButtonItem(); barBtnSetJunctionList = new DevExpress.XtraBars.BarButtonItem(); - barBtnParallelAnaly = new DevExpress.XtraBars.BarButtonItem(); + barBtnCurrentWorkingParallelAnalysis = new DevExpress.XtraBars.BarButtonItem(); barBtnSearch = new DevExpress.XtraBars.BarButtonItem(); barBtnGradingSet = new DevExpress.XtraBars.BarButtonItem(); barBtnGradingApply = new DevExpress.XtraBars.BarButtonItem(); @@ -74,17 +74,17 @@ barCkMonitor = new DevExpress.XtraBars.BarCheckItem(); barEditCurrentWorking = new DevExpress.XtraBars.BarEditItem(); repositoryItemImageComboBox1 = new DevExpress.XtraEditors.Repository.RepositoryItemImageComboBox(); - barBtnWorkingCompare = new DevExpress.XtraBars.BarButtonItem(); barCkMark = new DevExpress.XtraBars.BarCheckItem(); barCkFlowEffect = new DevExpress.XtraBars.BarCheckItem(); barCkGrading = new DevExpress.XtraBars.BarCheckItem(); - barCkCalcuResult = new DevExpress.XtraBars.BarCheckItem(); - barBtnWorkingLossCurve = new DevExpress.XtraBars.BarButtonItem(); - barBtnWorkingLossScale = new DevExpress.XtraBars.BarButtonItem(); - barBtnWorkingPowerAnalysis = new DevExpress.XtraBars.BarButtonItem(); - barBtnWorkingMulti = new DevExpress.XtraBars.BarButtonItem(); + barCkCurrentWorkingCalcuResult = new DevExpress.XtraBars.BarCheckItem(); + barBtnCurrentWorkingLossCurve = new DevExpress.XtraBars.BarButtonItem(); + barBtnCurrentWorkingLossScale = new DevExpress.XtraBars.BarButtonItem(); + barBtnCurrentWorkingPowerAnalysis = new DevExpress.XtraBars.BarButtonItem(); + barBtnCurrentWorkingMultiAnalysis = new DevExpress.XtraBars.BarButtonItem(); barBtnParallel = new DevExpress.XtraBars.BarButtonItem(); barBtnRepair = new DevExpress.XtraBars.BarButtonItem(); + barBtnWorkingList = new DevExpress.XtraBars.BarButtonItem(); ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage(); pageGroupMatching = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); pageGroupModel = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); @@ -105,6 +105,9 @@ controlContainerBottom = new DevExpress.XtraBars.Docking.ControlContainer(); svgImg32 = new DevExpress.Utils.SvgImageCollection(components); rmSet = new DevExpress.XtraBars.Ribbon.RadialMenu(components); + docPnlWorking = new DevExpress.XtraBars.Docking.DockPanel(); + dockPanel2 = new DevExpress.XtraBars.Docking.DockPanel(); + dockPanel1 = new DevExpress.XtraBars.Docking.DockPanel(); ((ISupportInitialize)ribbonControl1).BeginInit(); ((ISupportInitialize)repositoryItemImageComboBox1).BeginInit(); ((ISupportInitialize)tabPane1).BeginInit(); @@ -114,15 +117,16 @@ docPnlBottom.SuspendLayout(); ((ISupportInitialize)svgImg32).BeginInit(); ((ISupportInitialize)rmSet).BeginInit(); + dockPanel1.SuspendLayout(); SuspendLayout(); // // ribbonControl1 // ribbonControl1.ExpandCollapseItem.Id = 0; ribbonControl1.ItemPanelStyle = DevExpress.XtraBars.Ribbon.RibbonItemPanelStyle.Classic; - ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnCheck, barBtnWorkingCalcu, barBtnExportInp, barBtnSave, barBtnHydroVisualList, barBtnFastShowHidden, barBtnMatchingList, barBtnUnMatchingList, barBtnSetList, barBtnSetPumpList, barBtnSetValveList, barBtnSetPipeList, barBtnSetElbowsList, barBtnSetThreelinkList, barBtnSetFourlinkList, barBtnSetTranslationList, barBtnSetExchangerList, barBtnSetJunctionList, barBtnParallelAnaly, barBtnSearch, barBtnGradingSet, barBtnGradingApply, barBtnRefresh, barBtnSetMark, barBtnSetReservoirList, barBtnSetTankList, barBtnSetWaterboxList, barBtnSetBluntheadList, barBtnSetNozzleList, barBtnSetHydrantList, barBtnSetMeterList, barBtnSetCompressorList, barBtnSetFlowmeterList, barBtnSetPressmeterList, barBtnSetMonitor, barBtnSetMonitorValue, barCkMonitor, barEditCurrentWorking, barBtnWorkingCompare, barCkMark, barCkFlowEffect, barCkGrading, barCkCalcuResult, barBtnWorkingLossCurve, barBtnWorkingLossScale, barBtnWorkingPowerAnalysis, barBtnWorkingMulti, barBtnParallel, barBtnRepair }); + ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnCheck, barBtnWorkingCalcu, barBtnExportInp, barBtnSave, barBtnHydroVisualList, barBtnFastShowHidden, barBtnMatchingList, barBtnUnMatchingList, barBtnSetList, barBtnSetPumpList, barBtnSetValveList, barBtnSetPipeList, barBtnSetElbowsList, barBtnSetThreelinkList, barBtnSetFourlinkList, barBtnSetTranslationList, barBtnSetExchangerList, barBtnSetJunctionList, barBtnCurrentWorkingParallelAnalysis, barBtnSearch, barBtnGradingSet, barBtnGradingApply, barBtnRefresh, barBtnSetMark, barBtnSetReservoirList, barBtnSetTankList, barBtnSetWaterboxList, barBtnSetBluntheadList, barBtnSetNozzleList, barBtnSetHydrantList, barBtnSetMeterList, barBtnSetCompressorList, barBtnSetFlowmeterList, barBtnSetPressmeterList, barBtnSetMonitor, barBtnSetMonitorValue, barCkMonitor, barEditCurrentWorking, barCkMark, barCkFlowEffect, barCkGrading, barCkCurrentWorkingCalcuResult, barBtnCurrentWorkingLossCurve, barBtnCurrentWorkingLossScale, barBtnCurrentWorkingPowerAnalysis, barBtnCurrentWorkingMultiAnalysis, barBtnParallel, barBtnRepair, barBtnWorkingList }); ribbonControl1.Location = new Point(0, 0); - ribbonControl1.MaxItemId = 75; + ribbonControl1.MaxItemId = 76; ribbonControl1.Name = "ribbonControl1"; ribbonControl1.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] { ribbonPage1 }); ribbonControl1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] { repositoryItemImageComboBox1 }); @@ -274,14 +278,14 @@ barBtnSetJunctionList.Id = 30; barBtnSetJunctionList.Name = "barBtnSetJunctionList"; // - // barBtnParallelAnaly + // barBtnCurrentWorkingParallelAnalysis // - barBtnParallelAnaly.Caption = "骞惰仈鍒嗘瀽"; - barBtnParallelAnaly.Id = 31; - barBtnParallelAnaly.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnParallelAnaly.ImageOptions.SvgImage"); - barBtnParallelAnaly.Name = "barBtnParallelAnaly"; - barBtnParallelAnaly.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; - barBtnParallelAnaly.ItemClick += barBtnAnaly_ItemClick; + barBtnCurrentWorkingParallelAnalysis.Caption = "骞惰仈鍒嗘瀽"; + barBtnCurrentWorkingParallelAnalysis.Id = 31; + barBtnCurrentWorkingParallelAnalysis.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCurrentWorkingParallelAnalysis.ImageOptions.SvgImage"); + barBtnCurrentWorkingParallelAnalysis.Name = "barBtnCurrentWorkingParallelAnalysis"; + barBtnCurrentWorkingParallelAnalysis.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnCurrentWorkingParallelAnalysis.ItemClick += barBtnAnaly_ItemClick; // // barBtnSearch // @@ -422,24 +426,17 @@ // // barEditCurrentWorking // - barEditCurrentWorking.Caption = "宸ュ喌"; + barEditCurrentWorking.Caption = "褰撳墠宸ュ喌"; barEditCurrentWorking.Edit = repositoryItemImageComboBox1; barEditCurrentWorking.Id = 63; barEditCurrentWorking.Name = "barEditCurrentWorking"; + barEditCurrentWorking.EditValueChanged += barEditCurrentWorking_EditValueChanged; // // repositoryItemImageComboBox1 // repositoryItemImageComboBox1.AutoHeight = false; repositoryItemImageComboBox1.Buttons.AddRange(new EditorButton[] { new EditorButton(ButtonPredefines.Combo) }); repositoryItemImageComboBox1.Name = "repositoryItemImageComboBox1"; - // - // barBtnWorkingCompare - // - barBtnWorkingCompare.Caption = "宸ュ喌瀵规瘮"; - barBtnWorkingCompare.Id = 64; - barBtnWorkingCompare.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingCompare.ImageOptions.SvgImage"); - barBtnWorkingCompare.Name = "barBtnWorkingCompare"; - barBtnWorkingCompare.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large; // // barCkMark // @@ -465,48 +462,48 @@ barCkGrading.Name = "barCkGrading"; barCkGrading.CheckedChanged += barCkGrading_CheckedChanged; // - // barCkCalcuResult + // barCkCurrentWorkingCalcuResult // - barCkCalcuResult.Caption = "鏄剧ず"; - barCkCalcuResult.CheckBoxVisibility = DevExpress.XtraBars.CheckBoxVisibility.AfterText; - barCkCalcuResult.Id = 68; - barCkCalcuResult.Name = "barCkCalcuResult"; + barCkCurrentWorkingCalcuResult.Caption = "璁$畻缁撴灉"; + barCkCurrentWorkingCalcuResult.CheckBoxVisibility = DevExpress.XtraBars.CheckBoxVisibility.AfterText; + barCkCurrentWorkingCalcuResult.Id = 68; + barCkCurrentWorkingCalcuResult.Name = "barCkCurrentWorkingCalcuResult"; // - // barBtnWorkingLossCurve + // barBtnCurrentWorkingLossCurve // - barBtnWorkingLossCurve.Caption = "鎹熷け鏇茬嚎"; - barBtnWorkingLossCurve.Id = 69; - barBtnWorkingLossCurve.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingLossCurve.ImageOptions.SvgImage"); - barBtnWorkingLossCurve.Name = "barBtnWorkingLossCurve"; - barBtnWorkingLossCurve.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnCurrentWorkingLossCurve.Caption = "鎹熷け鏇茬嚎"; + barBtnCurrentWorkingLossCurve.Id = 69; + barBtnCurrentWorkingLossCurve.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCurrentWorkingLossCurve.ImageOptions.SvgImage"); + barBtnCurrentWorkingLossCurve.Name = "barBtnCurrentWorkingLossCurve"; + barBtnCurrentWorkingLossCurve.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; // - // barBtnWorkingLossScale + // barBtnCurrentWorkingLossScale // - barBtnWorkingLossScale.Caption = "鎹熷け姣斾緥"; - barBtnWorkingLossScale.Id = 70; - barBtnWorkingLossScale.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingLossScale.ImageOptions.SvgImage"); - barBtnWorkingLossScale.Name = "barBtnWorkingLossScale"; - barBtnWorkingLossScale.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnCurrentWorkingLossScale.Caption = "鎹熷け姣斾緥"; + barBtnCurrentWorkingLossScale.Id = 70; + barBtnCurrentWorkingLossScale.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCurrentWorkingLossScale.ImageOptions.SvgImage"); + barBtnCurrentWorkingLossScale.Name = "barBtnCurrentWorkingLossScale"; + barBtnCurrentWorkingLossScale.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; // - // barBtnWorkingPowerAnalysis + // barBtnCurrentWorkingPowerAnalysis // - barBtnWorkingPowerAnalysis.Caption = "鑳芥晥鍒嗘瀽"; - barBtnWorkingPowerAnalysis.Id = 71; - barBtnWorkingPowerAnalysis.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingPowerAnalysis.ImageOptions.SvgImage"); - barBtnWorkingPowerAnalysis.Name = "barBtnWorkingPowerAnalysis"; - barBtnWorkingPowerAnalysis.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnCurrentWorkingPowerAnalysis.Caption = "鑳芥晥鍒嗘瀽"; + barBtnCurrentWorkingPowerAnalysis.Id = 71; + barBtnCurrentWorkingPowerAnalysis.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCurrentWorkingPowerAnalysis.ImageOptions.SvgImage"); + barBtnCurrentWorkingPowerAnalysis.Name = "barBtnCurrentWorkingPowerAnalysis"; + barBtnCurrentWorkingPowerAnalysis.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; // - // barBtnWorkingMulti + // barBtnCurrentWorkingMultiAnalysis // - barBtnWorkingMulti.Caption = "缁煎悎鍒嗘瀽"; - barBtnWorkingMulti.Id = 72; - barBtnWorkingMulti.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingMulti.ImageOptions.SvgImage"); - barBtnWorkingMulti.Name = "barBtnWorkingMulti"; - barBtnWorkingMulti.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large; + barBtnCurrentWorkingMultiAnalysis.Caption = "缁煎悎鍒嗘瀽"; + barBtnCurrentWorkingMultiAnalysis.Id = 72; + barBtnCurrentWorkingMultiAnalysis.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCurrentWorkingMultiAnalysis.ImageOptions.SvgImage"); + barBtnCurrentWorkingMultiAnalysis.Name = "barBtnCurrentWorkingMultiAnalysis"; + barBtnCurrentWorkingMultiAnalysis.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large; // // barBtnParallel // - barBtnParallel.Caption = "骞惰仈鍒嗘瀽"; + barBtnParallel.Caption = "骞惰仈璁$畻"; barBtnParallel.Id = 73; barBtnParallel.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnParallel.ImageOptions.SvgImage"); barBtnParallel.Name = "barBtnParallel"; @@ -520,10 +517,17 @@ barBtnRepair.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnRepair.ImageOptions.SvgImage"); barBtnRepair.Name = "barBtnRepair"; barBtnRepair.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; - toolTipItem1.Text = "閫氳繃璇曠畻锛岃皟鏁寸娈典笂涓嬫父"; - superToolTip1.Items.Add(toolTipItem1); - barBtnRepair.SuperTip = superToolTip1; + toolTipItem2.Text = "閫氳繃璇曠畻锛岃皟鏁寸娈典笂涓嬫父"; + superToolTip2.Items.Add(toolTipItem2); + barBtnRepair.SuperTip = superToolTip2; barBtnRepair.ItemClick += barBtnRepair_ItemClick; + // + // barBtnWorkingList + // + barBtnWorkingList.Caption = "宸ュ喌鍒楄〃"; + barBtnWorkingList.Id = 75; + barBtnWorkingList.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingList.ImageOptions.SvgImage"); + barBtnWorkingList.Name = "barBtnWorkingList"; // // ribbonPage1 // @@ -584,13 +588,13 @@ // ribbonPageGroup9 // ribbonPageGroup9.ItemLinks.Add(barEditCurrentWorking); - ribbonPageGroup9.ItemLinks.Add(barCkCalcuResult); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingLossCurve); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingLossScale); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingPowerAnalysis); - ribbonPageGroup9.ItemLinks.Add(barBtnParallelAnaly); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingMulti); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingCompare); + ribbonPageGroup9.ItemLinks.Add(barCkCurrentWorkingCalcuResult); + ribbonPageGroup9.ItemLinks.Add(barBtnCurrentWorkingParallelAnalysis); + ribbonPageGroup9.ItemLinks.Add(barBtnCurrentWorkingLossCurve); + ribbonPageGroup9.ItemLinks.Add(barBtnCurrentWorkingLossScale); + ribbonPageGroup9.ItemLinks.Add(barBtnCurrentWorkingPowerAnalysis); + ribbonPageGroup9.ItemLinks.Add(barBtnCurrentWorkingMultiAnalysis); + ribbonPageGroup9.ItemLinks.Add(barBtnWorkingList); ribbonPageGroup9.Name = "ribbonPageGroup9"; ribbonPageGroup9.Text = "宸ュ喌鍒嗘瀽"; // @@ -635,25 +639,26 @@ // dockManager1 // dockManager1.Form = this; - dockManager1.RootPanels.AddRange(new DevExpress.XtraBars.Docking.DockPanel[] { docPnlRight, docPnlBottom }); + dockManager1.RootPanels.AddRange(new DevExpress.XtraBars.Docking.DockPanel[] { dockPanel1, docPnlBottom }); dockManager1.TopZIndexControls.AddRange(new string[] { "DevExpress.XtraBars.BarDockControl", "DevExpress.XtraBars.StandaloneBarDockControl", "System.Windows.Forms.MenuStrip", "System.Windows.Forms.StatusStrip", "System.Windows.Forms.StatusBar", "DevExpress.XtraBars.Ribbon.RibbonStatusBar", "DevExpress.XtraBars.Ribbon.RibbonControl", "DevExpress.XtraBars.Navigation.OfficeNavigationBar", "DevExpress.XtraBars.Navigation.TileNavPane", "DevExpress.XtraBars.TabFormControl", "DevExpress.XtraBars.FluentDesignSystem.FluentDesignFormControl", "DevExpress.XtraBars.ToolbarForm.ToolbarFormControl" }); // // docPnlRight // docPnlRight.Controls.Add(controlContainerRight); - docPnlRight.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right; + docPnlRight.Dock = DevExpress.XtraBars.Docking.DockingStyle.Fill; + docPnlRight.FloatVertical = true; docPnlRight.ID = new Guid("cffe2560-3445-4488-83cf-b9e4b936ff18"); - docPnlRight.Location = new Point(1666, 128); + docPnlRight.Location = new Point(4, 26); docPnlRight.Name = "docPnlRight"; - docPnlRight.OriginalSize = new Size(275, 200); - docPnlRight.Size = new Size(275, 572); + docPnlRight.OriginalSize = new Size(200, 200); + docPnlRight.Size = new Size(268, 516); docPnlRight.Text = "灞炴��"; // // controlContainerRight // - controlContainerRight.Location = new Point(4, 26); + controlContainerRight.Location = new Point(0, 0); controlContainerRight.Name = "controlContainerRight"; - controlContainerRight.Size = new Size(268, 543); + controlContainerRight.Size = new Size(268, 516); controlContainerRight.TabIndex = 0; // // docPnlBottom @@ -706,6 +711,41 @@ rmSet.Ribbon = ribbonControl1; rmSet.BeforePopup += rmSet_BeforePopup; // + // docPnlWorking + // + docPnlWorking.Dock = DevExpress.XtraBars.Docking.DockingStyle.Fill; + docPnlWorking.ID = new Guid("6a12321b-176a-43ac-b64f-fbaa0f6806ce"); + docPnlWorking.Location = new Point(4, 26); + docPnlWorking.Name = "docPnlWorking"; + docPnlWorking.OriginalSize = new Size(200, 200); + docPnlWorking.Size = new Size(268, 516); + docPnlWorking.Text = "宸ュ喌"; + // + // dockPanel2 + // + dockPanel2.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right; + dockPanel2.ID = new Guid("9e1401bf-eba9-4e65-8e3e-50e08d389108"); + dockPanel2.Location = new Point(1666, 128); + dockPanel2.Name = "dockPanel2"; + dockPanel2.OriginalSize = new Size(275, 200); + dockPanel2.Size = new Size(275, 572); + dockPanel2.Tabbed = true; + dockPanel2.Text = "panelContainer1"; + // + // dockPanel1 + // + dockPanel1.ActiveChild = docPnlRight; + dockPanel1.Controls.Add(docPnlRight); + dockPanel1.Controls.Add(docPnlWorking); + dockPanel1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right; + dockPanel1.ID = new Guid("9c1c1fcf-0dc2-460f-ad97-7c25e496b4ae"); + dockPanel1.Location = new Point(1666, 128); + dockPanel1.Name = "dockPanel1"; + dockPanel1.OriginalSize = new Size(275, 200); + dockPanel1.Size = new Size(275, 572); + dockPanel1.Tabbed = true; + dockPanel1.Text = "panelContainer1"; + // // XhsProjectSimulationCorePage // Appearance.BackColor = SystemColors.Control; @@ -714,7 +754,7 @@ AutoScaleMode = AutoScaleMode.Font; Controls.Add(tabPane1); Controls.Add(docPnlBottom); - Controls.Add(docPnlRight); + Controls.Add(dockPanel1); Controls.Add(ribbonControl1); Margin = new Padding(2); Name = "XhsProjectSimulationCorePage"; @@ -728,6 +768,7 @@ docPnlBottom.ResumeLayout(false); ((ISupportInitialize)svgImg32).EndInit(); ((ISupportInitialize)rmSet).EndInit(); + dockPanel1.ResumeLayout(false); ResumeLayout(false); PerformLayout(); } @@ -765,7 +806,7 @@ private DevExpress.XtraBars.BarButtonItem barBtnSetTranslationList; private DevExpress.XtraBars.BarButtonItem barBtnSetExchangerList; private DevExpress.XtraBars.BarButtonItem barBtnSetJunctionList; - private DevExpress.XtraBars.BarButtonItem barBtnParallelAnaly; + private DevExpress.XtraBars.BarButtonItem barBtnCurrentWorkingParallelAnalysis; private DevExpress.XtraBars.BarButtonItem barBtnSearch; private DevExpress.XtraBars.Ribbon.RibbonPageGroup pageGroupModel; private DevExpress.XtraBars.Docking.DockPanel docPnlBottom; @@ -793,17 +834,20 @@ private DevExpress.XtraBars.BarCheckItem barCkMonitor; private DevExpress.XtraBars.BarEditItem barEditCurrentWorking; private DevExpress.XtraEditors.Repository.RepositoryItemImageComboBox repositoryItemImageComboBox1; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingCompare; private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup9; private DevExpress.XtraBars.BarCheckItem barCkMark; private DevExpress.XtraBars.BarCheckItem barCkFlowEffect; private DevExpress.XtraBars.BarCheckItem barCkGrading; - private DevExpress.XtraBars.BarCheckItem barCkCalcuResult; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingLossCurve; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingLossScale; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingPowerAnalysis; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingMulti; + private DevExpress.XtraBars.BarCheckItem barCkCurrentWorkingCalcuResult; + private DevExpress.XtraBars.BarButtonItem barBtnCurrentWorkingLossCurve; + private DevExpress.XtraBars.BarButtonItem barBtnCurrentWorkingLossScale; + private DevExpress.XtraBars.BarButtonItem barBtnCurrentWorkingPowerAnalysis; + private DevExpress.XtraBars.BarButtonItem barBtnCurrentWorkingMultiAnalysis; private DevExpress.XtraBars.BarButtonItem barBtnParallel; private DevExpress.XtraBars.BarButtonItem barBtnRepair; + private DevExpress.XtraBars.BarButtonItem barBtnWorkingList; + private DevExpress.XtraBars.Docking.DockPanel dockPanel2; + private DevExpress.XtraBars.Docking.DockPanel docPnlWorking; + private DevExpress.XtraBars.Docking.DockPanel dockPanel1; } } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs index 0b09759..4c1ea9a 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs @@ -1,4 +1,5 @@ 锘縢lobal using Yw.EPAnet; +using DevExpress.CodeParser; using DevExpress.Mvvm.Native; using DevExpress.Office.Utils; using DevExpress.Utils.Extensions; @@ -7,10 +8,12 @@ using DevExpress.XtraRichEdit.Layout; using DevExpress.XtraSpreadsheet.Commands; using HStation.WinFrmUI.PhartRelation; +using NPOI.SS.Formula.Functions; using System.Diagnostics; using System.Windows.Media; using System.Windows.Media.Media3D; using Yw.Hydro; +using Yw.Model; using Yw.Pump; using Yw.Vmo; using Yw.WinFrmUI.Bimface; @@ -167,6 +170,314 @@ #endregion + #region 鍙鍒楄〃 + + //鎵�鏈夊彲瑙嗗瓧鍏� + private Dictionary<string, HydroVisualInfo> _allVisualDict = null; + + //鑾峰彇鍙瀛楀吀 + private Dictionary<string, HydroVisualInfo> GetVisualDict() + { + if (_hydroInfo == null) + { + return default; + } + if (_allVisualDict == null) + { + _allVisualDict = new Dictionary<string, HydroVisualInfo>(); + var allVisualList = _hydroInfo.GetAllVisuals(); + allVisualList?.ForEach(x => _allVisualDict.Add(x.Code, x)); + } + return _allVisualDict; + } + + //鑾峰彇鍙鍒楄〃 + private List<HydroVisualInfo> GetVisualList() + { + var allVisualDict = GetVisualDict(); + return allVisualDict?.Values.ToList(); + } + + //鑾峰彇鑺傜偣鍒楄〃 + private List<HydroNodeInfo> GetNodeList() + { + if (_hydroInfo == null) + { + return default; + } + return _hydroInfo.GetAllNodes(); + } + + //鑾峰彇绠℃鍒楄〃 + private List<HydroLinkInfo> GetLinkList() + { + if (_hydroInfo == null) + { + return default; + } + return _hydroInfo.GetAllLinks(); + } + + //鑾峰彇鍙鏋勪欢 + private HydroVisualInfo GetVisual(string code) + { + var allVisualDict = GetVisualDict(); + if (allVisualDict == null) + { + return default; + } + if (allVisualDict.ContainsKey(code)) + { + return allVisualDict[code]; + } + return default; + } + + #endregion + + #region 璁$畻缁撴灉 + + //璁$畻缁撴灉 + private HydroCalcuResult _calcuResult = null; + + //鑾峰彇璁$畻缁撴灉 + private HydroCalcuResult GetCalcuResult(string calcuMode, bool needCalcuAgain = false) + { + if (_hydroInfo == null) + { + return default; + } + if (needCalcuAgain) + { + _calcuResult = _hydroInfo.Calcu(calcuMode); + } + if (_calcuResult == null) + { + _calcuResult = _hydroInfo.Calcu(calcuMode); + } + return _calcuResult; + } + + //鑾峰彇鍙缁勪欢璁$畻缁撴灉鍒楄〃 + private List<HydroCalcuVisualResult> GetCalcuVisualResultList(string calcuMode, bool needCalcuAgain = false) + { + var calcuResult = GetCalcuResult(calcuMode, needCalcuAgain); + if (calcuResult == null) + { + return default; + } + if (!calcuResult.Succeed) + { + return default; + } + return calcuResult.GetVisualList(); + } + + //鑾峰彇鑺傜偣璁$畻缁撴灉鍒楄〃 + private List<HydroCalcuNodeResult> GetCalcuNodeResultList(string calcuMode, bool needCalcuAgain = false) + { + var calcuResult = GetCalcuResult(calcuMode, needCalcuAgain); + if (calcuResult == null) + { + return default; + } + if (!calcuResult.Succeed) + { + return default; + } + return calcuResult.NodeList; + } + + //鑾峰彇绠℃璁$畻缁撴灉鍒楄〃 + private List<HydroCalcuLinkResult> GetCalcuLinkResultList(string calcuMode, bool needCalcuAgain = false) + { + var calcuResult = GetCalcuResult(calcuMode, needCalcuAgain); + if (calcuResult == null) + { + return default; + } + if (!calcuResult.Succeed) + { + return default; + } + return calcuResult.LinkList; + } + + //鎵�鏈夊彲瑙佽绠楀瓧鍏� + private Dictionary<string, HydroCalcuVisualResult> _allCalcuVisualDict = null; + + //鑾峰彇鍙璁$畻瀛楀吀 + private Dictionary<string, HydroCalcuVisualResult> GetCalcuVisualDict(string calcuMode, bool needCalcuAgain = false) + { + if (_hydroInfo == null) + { + return default; + } + var allCalcuVisualResultList = GetCalcuVisualResultList(calcuMode, needCalcuAgain); + if (needCalcuAgain) + { + _allCalcuVisualDict = new Dictionary<string, HydroCalcuVisualResult>(); + allCalcuVisualResultList?.ForEach(x => _allCalcuVisualDict.Add(x.Code, x)); + } + if (_allCalcuVisualDict == null) + { + _allCalcuVisualDict = new Dictionary<string, HydroCalcuVisualResult>(); + allCalcuVisualResultList?.ForEach(x => _allCalcuVisualDict.Add(x.Code, x)); + } + return _allCalcuVisualDict; + } + + //鑾峰彇鍙璁$畻缁撴灉 + private HydroCalcuVisualResult GetCalcuVisualResult(string code, string calcuMode = Yw.EPAnet.CalcuMode.MinorLoss, bool needCalcuAgain = false) + { + var allCalcuVisualDict = GetCalcuVisualDict(calcuMode, needCalcuAgain); + if (allCalcuVisualDict == null || allCalcuVisualDict.Count < 1) + { + return default; + } + if (allCalcuVisualDict.ContainsKey(code)) + { + return allCalcuVisualDict[code]; + } + return default; + } + + //鑾峰彇鍙璁$畻缁撴灉 + private HydroCalcuVisualResult GetCalcuVisualResult(Yw.Model.HydroVisualInfo visual, string calcuMode = Yw.EPAnet.CalcuMode.MinorLoss, bool needCalcuAgain = false) + { + return GetCalcuVisualResult(visual?.Code, calcuMode, needCalcuAgain); + } + + #endregion + + #region 鍙瑙嗗浘鍒楄〃 + + //鎵�鏈夊彲瑙佽鍥惧瓧鍏� + private Dictionary<string, HydroVisualViewModel> _allVisualViewModelDict = null; + + //鑾峰彇鍙瑙嗗浘瀛楀吀 + private Dictionary<string, HydroVisualViewModel> GetVisualViewModelDict() + { + if (_hydroInfo == null) + { + return default; + } + if (_allVisualViewModelDict == null) + { + _allVisualViewModelDict = new Dictionary<string, HydroVisualViewModel>(); + var allVisualDict = GetVisualDict(); + if (allVisualDict != null && allVisualDict.Count > 0) + { + foreach (var visualKeyValue in allVisualDict) + { + var vm = HydroVisualViewModelBuilder.CreateVisualViewModel(visualKeyValue.Value, _hydroInfo); + var calcuVisualResult = GetCalcuVisualResult(visualKeyValue.Key); + if (calcuVisualResult != null) + { + vm.UpdateCalcuProperty(calcuVisualResult); + } + _allVisualViewModelDict.Add(visualKeyValue.Key, vm); + } + } + } + return _allVisualViewModelDict; + } + + //鑾峰彇鍙瑙嗗浘鍒楄〃 + private List<HydroVisualViewModel> GetVisualViewModelList() + { + var allVisualViewModelDict = GetVisualViewModelDict(); + return allVisualViewModelDict?.Values.ToList(); + } + + //鏇存柊鍙瑙嗗浘灞炴�� + private void UpdateVisualViewModelProperty() + { + var allVisualViewModelList = GetVisualViewModelList(); + allVisualViewModelList?.ForEach(x => x.UpdateProperty()); + } + + //鏇存柊鍙瑙嗗浘灞炴�� + private void UpdateVisualViewModelProperty(string code) + { + var allVisualViewModelDict = GetVisualViewModelDict(); + if (allVisualViewModelDict != null && allVisualViewModelDict.Count > 0) + { + if (allVisualViewModelDict.ContainsKey(code)) + { + allVisualViewModelDict[code].UpdateProperty(); + } + } + } + + //鏇存柊鍙瑙嗗浘灞炴�� + private void UpdateVisualViewModelProperty(List<string> codes) + { + codes?.ForEach(x => UpdateVisualViewModelProperty(x)); + } + + //鏇存柊鍙瑙嗗浘灞炴�� + private void UpdateVisualViewModelProperty(List<HydroVisualInfo> visualList) + { + visualList?.ForEach(x => UpdateVisualViewModelProperty(x.Code)); + } + + //鏇存柊鍙瑙嗗浘璁$畻灞炴�� + private void UpdateVisualViewModelCalcuProperty() + { + var allVisualViewModelDict = GetVisualViewModelDict(); + if (allVisualViewModelDict != null && allVisualViewModelDict.Count > 0) + { + foreach (var visualViewModelKeyValue in allVisualViewModelDict) + { + var calcuVisualResult = GetCalcuVisualResult(visualViewModelKeyValue.Key); + if (calcuVisualResult != null) + { + visualViewModelKeyValue.Value.UpdateCalcuProperty(calcuVisualResult); + } + } + } + } + + //鑾峰彇鍙瑙嗗浘 + private HydroVisualViewModel GetVisualViewModel(string code) + { + if (string.IsNullOrEmpty(code)) + { + return default; + } + var allVisualViewModelList = GetVisualViewModelList(); + return allVisualViewModelList?.Find(x => x.Code == code); + } + + //鑾峰彇鍙瑙嗗浘 + private HydroVisualViewModel GetVisualViewModel(Yw.Model.HydroVisualInfo visual) + { + return GetVisualViewModel(visual?.Code); + } + + #endregion + + #region 閫夋嫨鏋勪欢 + + //閫夋嫨鏋勪欢 + private Yw.Model.HydroVisualInfo _selectedVisual = null; + + //閫夋嫨鏋勪欢 + private Yw.Model.HydroVisualInfo SelectedVisual + { + get { return _selectedVisual; } + set + { + + _selectedVisual = value; + this.barBtnSetMonitor.Enabled = _selectedVisual != null; + } + } + + + #endregion + #region 灞炴�ф帶浠� //灞炴�ф帶浠� @@ -179,40 +490,42 @@ { _propertyCtrl = new XhsProjectSimulationPropertyCtrl(); _propertyCtrl.Dock = DockStyle.Fill; - _propertyCtrl.InitialData(() => _hydroInfo, () => GetCalcuResultList()); - _propertyCtrl.BlinkLinkParterEvent += async (code, linkCode) => - { //寮鸿皟杩炴帴缁勪欢 - if (string.IsNullOrEmpty(code)) + _propertyCtrl.HydroViewEvent += (visual) => + { + if (visual == null) { return; } - if (string.IsNullOrEmpty(linkCode)) - { - return; - } + _bimfaceCtrl?.ZoomToComponent(visual.Code); + }; + _propertyCtrl.BlinkLinkNodeEvent += async (link, linkNodeCode) => + { //寮鸿皟杩炴帴鑺傜偣 if (_hydroInfo == null) { return; } - var allVisualList = _hydroInfo.GetAllVisuals(); - if (allVisualList == null || allVisualList.Count < 1) + if (link == null) { return; } - var linkParter = allVisualList.Find(x => x.Code == linkCode); - if (linkParter == null) + if (string.IsNullOrEmpty(linkNodeCode)) + { + return; + } + var linkNode = GetVisual(linkNodeCode); + if (linkNode == null) { return; } var blinkCodes = new List<string>(); - if (linkParter.GetType() == typeof(Yw.Model.HydroJunctionInfo)) + if (linkNode.GetType() == typeof(HydroJunctionInfo)) { - var allLinkList = _hydroInfo.GetAllLinks(); + var allLinkList = GetLinkList(); if (allLinkList == null || allLinkList.Count < 1) { return; } - var linkList = allLinkList.Where(x => (x.StartCode == linkParter.Code || x.EndCode == linkParter.Code) && x.Code != code).ToList(); + var linkList = allLinkList.Where(x => (x.StartCode == linkNodeCode || x.EndCode == linkNodeCode) && x.Code != linkNodeCode).ToList(); if (linkList == null || linkList.Count < 1) { return; @@ -221,21 +534,13 @@ } else { - blinkCodes.Add(linkCode); + blinkCodes.Add(linkNodeCode); } + await _bimfaceCtrl?.ClearBlinkComponents(); await _bimfaceCtrl?.SetBlinkComponents(blinkCodes); await Task.Delay(5000); await _bimfaceCtrl?.ClearBlinkComponents(); - }; - - _propertyCtrl.ViewParterEvent += (parter) => - { - if (parter == null) - { - return; - } - _bimfaceCtrl?.ZoomToComponent(parter.Code); }; _propertyCtrl.PropertyValueChangedEvent += (visual) => { @@ -244,24 +549,24 @@ return; } UpdateVisualListCtrl(); - ApplyGradingResultList(visual); + //ApplyGradingResultList(visual); }; _propertyCtrl.MarkPropertyValueChangedEvent += (visual) => { //鏍囨敞灞炴�у彂鐢熸敼鍙� //鍒ゆ柇褰撳墠鏄惁鏈夋爣娉ㄥ睍绀猴紝鑻ユ湁鍒欐洿鏂版爣娉紝鏈�濂芥槸鏇存柊鍗曚釜鏍囨敞 - UpdateMark(visual); + //UpdateMark(visual); }; _propertyCtrl.GradingPropertyValueChangedEvent += (parter) => { //鍒嗙骇灞炴�у彂鐢熸敼鍙� //鍒ゆ柇褰撳墠鏄惁鏈夊垎绾у睍绀猴紝鑻ユ湁鍒欐洿鏂板垎绾э紝鏈�濂芥槸鏇存柊鍗曚釜鍒嗙骇 }; - _propertyCtrl.FlowDirectionPropertyValueChangedEvent += (visual) => + _propertyCtrl.FlowEffectPropertyValueChangedEvent += (visual) => { //娴佸悜灞炴�у彂鐢熸敼鍙� //鍒ゆ柇娴佸悜鏄惁鍔犺浇锛屽鏋滃姞杞藉垯鏇存柊娴佸悜锛屾渶濂芥槸鏇存柊鍗曚釜娴佸悜 - UpdateFlowEffect(visual); + //UpdateFlowEffect(visual); }; } @@ -339,6 +644,27 @@ _propertyCtrl?.UpdateRows(); } + //璁剧疆灞炴�ф帶浠� + private void SetPropertyCtrl(Yw.Model.HydroVisualInfo visual) + { + if (visual == null) + { + + } + } + + //鏇存柊灞炴�ф帶浠� + private void UpdatePropertyCtrl() + { + _propertyCtrl?.UpdateRows(); + } + + #endregion + + #region 宸ュ喌鍒楄〃 + + + #endregion #region 鑷姩鍖归厤 @@ -390,7 +716,7 @@ } this.controlContainerBottom.Controls.Clear(); var matchingListCtrl = GetMatchingListCtrl(); - var input = AssetsMatchingParasHelper.Create(_hydroInfo, GetCalcuResultList()); + var input = AssetsMatchingParasHelper.Create(_hydroInfo, GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false)); matchingListCtrl.SetBindingData(input); this.controlContainerBottom.Controls.Add(matchingListCtrl); this.docPnlBottom.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; @@ -933,7 +1259,7 @@ { return; } - var allCalcuResultList = GetCalcuResultList(); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); var vmList = new List<XhsSinglePumpViewModel>(); foreach (var pump in _hydroInfo.Pumps) { @@ -1381,7 +1707,7 @@ } var allGradingList = await GetGradingList(); var allGradingApplyList = GetGradingApplyList(); - var allCalcuResultList = GetCalcuResultList(); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); if (!useCache) { _allGradingResultList = HydroGradingHelper.GetResultList(_hydroInfo, allGradingList, allGradingApplyList, allCalcuResultList); @@ -1435,7 +1761,7 @@ var allGradingList = await GetGradingList(); var allGradingApplyList = GetGradingApplyList(); var allGradingResultList = await GetGradingResultList(true); - var allCalcuResultList = GetCalcuResultList(true); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); var oldResult = allGradingResultList?.Find(x => x.Code == visual.Code); if (oldResult != null) { @@ -1533,7 +1859,7 @@ if (_allFlowEffectList == null) { _allFlowEffectList = new List<LogicFlowEffect>(); - var allCalcuResultList = GetCalcuResultList(); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); if (_hydroInfo.Pipes != null && _hydroInfo.Pipes.Count > 0) { foreach (var parter in _hydroInfo.Pipes) @@ -1656,7 +1982,7 @@ flowEffect.SpeedY = -0.1; } - var allCalcuResultList = GetCalcuResultList(); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); var calcuResult = allCalcuResultList?.Find(x => x.Code == visual.Code) as HydroCalcuLinkResult; if (calcuResult != null) { @@ -1676,165 +2002,6 @@ { _isFlowEffectVisible = this.barCkFlowEffect.Checked; SetFlowEffect(); - } - - #endregion - - #region 閫夋嫨鏋勪欢 - - //閫夋嫨鏋勪欢 - private Yw.Model.HydroVisualInfo _selectedVisual = null; - - //閫夋嫨鏋勪欢 - private Yw.Model.HydroVisualInfo SelectedVisual - { - get { return _selectedVisual; } - set - { - _selectedVisual = value; - if (_selectedVisual == null) - { - this.barBtnSetMonitor.Enabled = false; - } - else - { - this.barBtnSetMonitor.Enabled = true; - } - } - } - - #endregion - - #region 鏋勪欢鏄庣粏 - - #region 鏋勪欢鍒楄〃 - - //鎵�鏈夋瀯浠惰鍥惧垪琛� - private List<HydroVisualViewModel> _allVisualViewModelList = null; - - //鑾峰彇鏋勪欢瑙嗗浘鍒楄〃 - private List<HydroVisualViewModel> GetVisualViewModelList() - { - if (_hydroInfo == null) - { - return default; - } - if (_allVisualViewModelList == null) - { - _allVisualViewModelList = new List<HydroVisualViewModel>(); - var allVisualList = _hydroInfo.GetAllVisuals(); - if (allVisualList != null && allVisualList.Count > 0) - { - var allCalcuResultList = GetCalcuResultList(); - allVisualList.ForEach(x => - { - var vm = HydroVisualViewModelBuilder.CreateVisualViewModel(x, _hydroInfo); - var calcuResult = allCalcuResultList?.Find(x => x.Code == x.Code); - if (calcuResult != null) - { - vm.UpdateCalcuProperty(calcuResult); - } - _allVisualViewModelList.Add(vm); - }); - } - } - return _allVisualViewModelList; - } - - //鏇存柊鍙瑙嗗浘灞炴�� - private void UpdateVisualViewModelProperty() - { - var allVisualViewModelList = GetVisualViewModelList(); - if (allVisualViewModelList != null && allVisualViewModelList.Count > 0) - { - allVisualViewModelList.ForEach(x => - { - x.UpdateProperty(); - }); - } - } - - //鏇存柊鍙瑙嗗浘灞炴�� - private void UpdateVisualViewModelProperty(List<string> codes) - { - if (codes == null || codes.Count < 1) - { - return; - } - var allVisualViewModelList = GetVisualViewModelList(); - if (allVisualViewModelList != null && allVisualViewModelList.Count > 0) - { - allVisualViewModelList.ForEach(x => - { - if (codes.Contains(x.Code)) - { - x.UpdateProperty(); - } - }); - } - } - - //鏇存柊鍙瑙嗗浘灞炴�� - private void UpdateVisualViewModelProperty(List<Yw.Model.HydroVisualInfo> visualList) - { - if (visualList == null || visualList.Count < 1) - { - return; - } - var allVisualViewModelList = GetVisualViewModelList(); - if (allVisualViewModelList != null && allVisualViewModelList.Count > 0) - { - allVisualViewModelList.ForEach(x => - { - if (visualList.Exists(t => t.Code == x.Code)) - { - x.UpdateProperty(); - } - }); - } - } - - //鏇存柊鍙瑙嗗浘璁$畻灞炴�� - private void UpdateVisualViewModelCalcuProperty() - { - var allVisualViewModelList = GetVisualViewModelList(); - if (allVisualViewModelList != null && allVisualViewModelList.Count > 0) - { - var allCalcuResultList = GetCalcuResultList(); - if (allCalcuResultList != null && allCalcuResultList.Count > 0) - { - allVisualViewModelList.ForEach(x => - { - var calcuResult = allCalcuResultList.Find(t => t.Code == x.Code); - if (calcuResult != null) - { - x.UpdateCalcuProperty(calcuResult); - } - }); - } - } - } - - //鑾峰彇鏋勪欢瑙嗗浘 - private HydroVisualViewModel GetVisualViewModel(string code) - { - if (string.IsNullOrEmpty(code)) - { - return default; - } - var allVisualViewModelList = GetVisualViewModelList(); - return allVisualViewModelList?.Find(x => x.Code == code); - } - - //鑾峰彇鍙瑙嗗浘 - private HydroVisualViewModel GetVisualViewModel(Yw.Model.HydroVisualInfo visual) - { - if (visual == null) - { - return default; - } - var allVisualViewModelList = GetVisualViewModelList(); - return allVisualViewModelList?.Find(x => x.Code == visual.Code); } #endregion @@ -1900,7 +2067,7 @@ var visualListCtrl = GetVisualListCtrl(); var allVisualViewModelList = GetVisualViewModelList(); visualListCtrl.SetBindingData(allVisualViewModelList); - var allCalcuResultList = GetCalcuResultList(); + var allCalcuResultList = GetCalcuVisualResultList(Yw.EPAnet.CalcuMode.MinorLoss, false); if (allCalcuResultList == null || allCalcuResultList.Count < 1) { visualListCtrl.SetNormalView(); @@ -1931,8 +2098,6 @@ { ShowVisualListCtrl(); } - - #endregion #endregion @@ -2175,8 +2340,6 @@ #endregion - #region 姘村姏妫�鏌� - #region 妫�鏌ョ粨鏋� //妫�鏌ョ粨鏋滅紦瀛� @@ -2260,41 +2423,10 @@ this.docPnlBottom.Height = 350; } - #endregion - //妫�鏌� private void barBtnCheck_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { ShowCheckCtrl(true); - } - - #endregion - - #region EPA璁$畻缁撴灉 - - //EPA璁$畻缁撴灉 - private Yw.EPAnet.CalcuResult _epaCalcuResult = null; - - //鑾峰彇EPA璁$畻缁撴灉 - //CalcuMode 鍦� Yw.EPANet.Calcu.Core 涓畾涔� - //NeedCalcuAgain 鏄惁闇�瑕侀噸鏂拌绠� - private Yw.EPAnet.CalcuResult GetEpaCalcuResult(string calcuMode, bool needCalcuAgain = false) - { - if (_hydroInfo == null) - { - return default; - } - if (needCalcuAgain) - { - var network = _hydroInfo.ToNetwork(); - _epaCalcuResult = network.Calcu(calcuMode); - } - if (_epaCalcuResult == null) - { - var network = _hydroInfo.ToNetwork(); - _epaCalcuResult = network.Calcu(calcuMode); - } - return _epaCalcuResult; } #endregion @@ -2316,7 +2448,7 @@ } //鏄剧ず璁$畻澶辫触鎺т欢 - private void ShowCalcuFailedCtrl(Yw.EPAnet.CalcuResult calcuResult) + private void ShowCalcuFailedCtrl(HydroCalcuResult calcuResult) { if (_hydroInfo == null) { @@ -2330,6 +2462,7 @@ { return; } + var calcuFailedCtrl = GetCalcuFailedCtrl(); calcuFailedCtrl.SetBindingData(calcuResult.FailedList); this.controlContainerBottom.Controls.Clear(); @@ -2342,9 +2475,8 @@ //鏄剧ず璁$畻澶辫触鎺т欢 private void ShowCalcuFailedCtrl() { - ShowCalcuFailedCtrl(_epaCalcuResult); + ShowCalcuFailedCtrl(_calcuResult); } - #endregion @@ -2365,32 +2497,39 @@ if (!checkResult.Succeed) { ShowCheckCtrl(false); - TipFormHelper.ShowWarn("妫�鏌ュけ璐ュ鑷存棤娉曡繘琛岃瘯绠楋紝鍋滄淇锛�"); + TipFormHelper.ShowWarn("妫�鏌ュけ璐ュ鑷存棤娉曡繘琛岃瘯绠楋紝鍋滄绠$綉淇锛�"); return; } - var calcuResult = GetEpaCalcuResult(Yw.EPAnet.CalcuMode.Simple, true); - if (calcuResult == null || !calcuResult.Succeed) + var calcuResult = _hydroInfo.Calcu(Yw.EPAnet.CalcuMode.Simple); + if (calcuResult == null) + { + return; + } + if (!calcuResult.Succeed) { ShowCalcuFailedCtrl(calcuResult); - TipFormHelper.ShowWarn("璇曠畻澶辫触锛屽仠姝慨澶嶏紒"); + TipFormHelper.ShowWarn("璇曠畻澶辫触锛屽仠姝㈢缃戜慨澶嶏紒"); return; } - var allLinks = _hydroInfo.GetAllLinks(); if (allLinks != null && allLinks.Count < 1) { - TipFormHelper.ShowError("妯″瀷涓湭鍖呭惈绠℃淇℃伅锛屽仠姝慨澶嶏紒"); + TipFormHelper.ShowError("妯″瀷涓湭鍖呭惈绠℃淇℃伅锛屽仠姝㈢缃戜慨澶嶏紒"); return; } int count = 0; foreach (var link in allLinks) { - var calcuLink = calcuResult.LinkList?.Find(x => x.Id == link.Code); + var calcuLink = calcuResult.LinkList?.Find(x => x.Code == link.Code); if (calcuLink == null) { continue; } - if (calcuLink.Flow < 0) + if (!calcuLink.CalcuFlow.HasValue) + { + continue; + } + if (calcuLink.CalcuFlow.Value < 0) { var tempCode = link.StartCode; link.StartCode = link.EndCode; @@ -2517,20 +2656,8 @@ #region 宸ュ喌璁$畻 - //鎵�鏈夊伐鍐靛垪琛� - private List<HydroWorkingVmo> _allWorkingList = null; - //鎵�鏈夊伐鍐靛厓缁勫垪琛� - private Tuple<HydroWorkingVmo, HydroCheckResult, HydroCalcuResult> _allWorkingTupleList = null; - - - - - - - - #region 宸ュ喌 - + private List<Tuple<HydroWorkingVmo, HydroCheckResult, HydroCalcuResult>> _allWorkingTupleList = new List<Tuple<HydroWorkingVmo, HydroCheckResult, HydroCalcuResult>>(); //鏄剧ず宸ュ喌璁$畻绐椾綋 private void ShowWorkingCalcuDlg() @@ -2551,11 +2678,27 @@ { return; } + var vmo = new HydroWorkingVmo(); + vmo.ModelID = _hydroInfo.ID; + vmo.Name = working.Name; + vmo.WorkingInfo = JsonHelper.Object2Json(working.WorkingInfo); + vmo.MonitorInfo = JsonHelper.Object2Json(working.MonitorInfo); + vmo.SortCode = _allWorkingList.Count < 1 ? 1 : _allWorkingList.Max(x => x.SortCode) + 1; + vmo.Description = working.Description; + vmo.ID = await BLLFactory<Yw.BLL.HydroWorking>.Instance.Insert(vmo); + if (vmo.ID < 1) + { + TipFormHelper.ShowError("鍒涘缓宸ュ喌澶辫触锛岃绠楀彇娑堬紒"); + return; + } + _allWorkingList.Add(vmo); + _hydroInfo.UpdateWorkingInfo(working.WorkingInfo); //鏍¢獙 _checkResult = _hydroInfo.Check(); if (!_checkResult.Succeed) { + _allWorkingTupleList.Add(new Tuple<HydroWorkingVmo, HydroCheckResult, HydroCalcuResult>(vmo, _checkResult, null)); ShowCheckCtrl(); TipFormHelper.ShowWarn("鏍¢獙澶辫触锛岃妫�鏌ュ悗閲嶈瘯"); return; @@ -2565,19 +2708,18 @@ //await Task.Delay(5000); + _calcuResult = _hydroInfo.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); - var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); - _epaCalcuResult = netWork.CalcuMinorLoss(); WaitFormHelper.HideWaitForm(); - if (_epaCalcuResult.Succeed) + if (_calcuResult.Succeed) { - GetCalcuResultList(false); + _allWorkingTupleList.Add(new Tuple<HydroWorkingVmo, HydroCheckResult, HydroCalcuResult>(vmo, _checkResult, _calcuResult)); UpdateVisualViewModelProperty(); UpdateVisualViewModelCalcuProperty(); UpdateVisualListCtrl(); UpdateSelectedProperty(); - await _bimfaceCtrl?.SetLogicCalcuCustomLabels(_epaCalcuResult); + await _bimfaceCtrl?.SetLogicCalcuCustomLabelsCalcuResult(_calcuResult); TipFormHelper.ShowSucceed("璁$畻鎴愬姛锛�"); var codes = _hydroInfo.Pumps.Select(x => x.Code).ToList(); await _bimfaceCtrl?.ZoomAndSelectComponents(codes); @@ -2595,182 +2737,6 @@ dlg.ShowDialog(); } - #endregion - - - - #region 璁$畻缁撴灉 - - //鎵�鏈夎绠楃粨鏋滃垪琛� - private List<HydroCalcuVisualResult> _allCalcuResultList = null; - - //鑾峰彇璁$畻缁撴灉 - //true 浣跨敤缂撳瓨锛宖alse 涓嶄娇鐢ㄧ紦瀛� - private List<HydroCalcuVisualResult> GetCalcuResultList(bool isCache = true) - { - if (_hydroInfo == null) - { - return default; - } - if (_epaCalcuResult == null) - { - return default; - } - if (!_epaCalcuResult.Succeed) - { - return default; - } - if (isCache) - { - return _allCalcuResultList; - } - - _allCalcuResultList = new List<HydroCalcuVisualResult>(); - - //鑺傜偣 - var allNodeList = _hydroInfo.GetAllNodes(); - if (allNodeList != null && allNodeList.Count > 0) - { - foreach (var node in allNodeList) - { - var calcuNode = _epaCalcuResult.NodeList?.Find(x => x.Id == node.Code); - if (calcuNode != null) - { - var calcuResult = new HydroCalcuNodeResult() - { - Code = node.Code, - CalcuPress = calcuNode.Press, - CalcuHead = calcuNode.Head, - CalcuDemand = calcuNode.Demand - }; - _allCalcuResultList.Add(calcuResult); - } - } - } - - //绠℃ - var allLinkList = _hydroInfo.GetAllLinks(); - if (allLinkList != null && allLinkList.Count > 0) - { - foreach (var link in allLinkList) - { - var calcuLink = _epaCalcuResult.LinkList?.Find(x => x.Id == link.Code); - if (calcuLink != null) - { - var calcuResult = new HydroCalcuLinkResult() - { - Code = link.Code, - CalcuFlow = calcuLink.Flow, - CalcuVelocity = calcuLink.Velocity, - CalcuHeadLoss = calcuLink.Headloss - }; - _allCalcuResultList.Add(calcuResult); - } - } - } - - //娴侀噺璁� - var allFlowmeterList = _hydroInfo.Flowmeters; - if (allFlowmeterList != null && allFlowmeterList.Count > 0) - { - foreach (var flowmeter in allFlowmeterList) - { - var calcuFlowmeterResult = _allCalcuResultList.Find(x => x.Code == flowmeter.Code) as HydroCalcuNodeResult; - if (calcuFlowmeterResult != null) - { - var calcuFlowmeterNewResult = new HydroCalcuFlowmeterResult(calcuFlowmeterResult); - var calcuFlowmeterLinkResultList = new List<HydroCalcuLinkResult>(); - var flowmeterLinkList = allLinkList?.Where(x => x.StartCode == flowmeter.Code || x.EndCode == flowmeter.Code).ToList(); - if (flowmeterLinkList != null && flowmeterLinkList.Count > 0) - { - foreach (var flowmeterLink in flowmeterLinkList) - { - var calcuFlowmeterLinkResult = _allCalcuResultList.Find(x => x.Code == flowmeterLink.Code) as HydroCalcuLinkResult; - if (calcuFlowmeterLinkResult != null) - { - calcuFlowmeterLinkResultList.Add(calcuFlowmeterLinkResult); - } - } - } - if (calcuFlowmeterLinkResultList.Exists(x => x.CalcuFlow.HasValue)) - { - calcuFlowmeterNewResult.CalcuQ = calcuFlowmeterLinkResultList.Where(x => x.CalcuFlow.HasValue).Average(x => x.CalcuFlow.Value); - } - _allCalcuResultList.Remove(calcuFlowmeterResult); - _allCalcuResultList.Add(calcuFlowmeterNewResult); - } - } - } - - //鍘嬪姏琛� - var allPressmeterList = _hydroInfo.Pressmeters; - if (allPressmeterList != null && allPressmeterList.Count > 0) - { - foreach (var pressmeter in allPressmeterList) - { - var calcuPressmeterResult = _allCalcuResultList.Find(x => x.Code == pressmeter.Code) as HydroCalcuNodeResult; - if (calcuPressmeterResult != null) - { - var calcuPressmeterNewResult = new HydroCalcuPressmeterResult(calcuPressmeterResult); - calcuPressmeterNewResult.CalcuPr = calcuPressmeterResult.CalcuPress; - _allCalcuResultList.Remove(calcuPressmeterResult); - _allCalcuResultList.Add(calcuPressmeterNewResult); - } - } - } - - //姘存车 - var allPumpList = _hydroInfo.Pumps; - if (allPumpList != null && allPumpList.Count > 0) - { - foreach (var pump in allPumpList) - { - var calcuPumpResult = _allCalcuResultList.Find(x => x.Code == pump.Code) as HydroCalcuLinkResult; - if (calcuPumpResult != null) - { - var calcuPumpNewResult = new HydroCalcuPumpResult(calcuPumpResult); - calcuPumpNewResult.CalcuQ = calcuPumpResult.CalcuFlow; - if (calcuPumpNewResult.CalcuQ.HasValue) - { - var calcuNodeStartResult = _allCalcuResultList.Find(x => x.Code == pump.StartCode) as HydroCalcuNodeResult; - var calcuNodeEndResult = _allCalcuResultList.Find(x => x.Code == pump.EndCode) as HydroCalcuNodeResult; - if (calcuNodeStartResult != null && calcuNodeEndResult != null) - { - if (calcuNodeStartResult.CalcuPress.HasValue && calcuNodeEndResult.CalcuPress.HasValue) - { - calcuPumpNewResult.CalcuH = Math.Abs(calcuNodeStartResult.CalcuPress.Value - calcuNodeEndResult.CalcuPress.Value); - } - if (pump.LinkStatus == Yw.Hydro.PumpStatus.Open && pump.RatedN.HasValue) - { - var curveqp = _hydroInfo.Curves?.Find(x => x.Code == pump.CurveQP); - if (curveqp != null) - { - if (curveqp.CurveData != null && curveqp.CurveData.Count > 3) - { - var point2dList = curveqp.CurveData.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); - var point2dSimularList = point2dList.GetQPPointListByN(pump.RatedN.Value, pump.RatedN.Value * pump.SpeedRatio); - var pumpCurveQp = new Yw.Pump.CurveQP(eFeatType.Cubic, point2dSimularList); - calcuPumpNewResult.CalcuP = pumpCurveQp.FeatCurve.GetPointY(calcuPumpNewResult.CalcuQ.Value); - } - } - } - if (calcuPumpNewResult.CalcuH.HasValue && calcuPumpNewResult.CalcuP.HasValue) - { - calcuPumpNewResult.CalcuE = Yw.Pump.CalculationHelper.CalcuE(calcuPumpNewResult.CalcuQ.Value, calcuPumpNewResult.CalcuH.Value, calcuPumpNewResult.CalcuP.Value); - } - } - } - _allCalcuResultList.Remove(calcuPumpResult); - _allCalcuResultList.Add(calcuPumpNewResult); - } - } - } - - return _allCalcuResultList; - } - - #endregion - //姘村姏璁$畻 private void barBtnHydroCalcu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { @@ -2779,8 +2745,65 @@ #endregion + #region 褰撳墠宸ュ喌 + + //褰撳墠宸ュ喌 + private Yw.Vmo.HydroWorkingVmo _currentWorking = null; + + //鍒濆鍖栧綋鍓嶅伐鍐� + private void InitialCurrentWorking(List<HydroWorkingVmo> allWorkingList) + { + this.repositoryItemImageComboBox1.Items.BeginUpdate(); + this.repositoryItemImageComboBox1.Items.Clear(); + if (allWorkingList != null && allWorkingList.Count > 0) + { + allWorkingList.ForEach(x => this.repositoryItemImageComboBox1.Items.Add(x.Name, x, -1)); + this.barEditCurrentWorking.EditValue = allWorkingList.Last(); + } + this.repositoryItemImageComboBox1.Items.EndUpdate(); + } + + //澧炲姞褰撳墠宸ュ喌 + private void AppendCurrentWorking(HydroWorkingVmo working) + { + this.repositoryItemImageComboBox1.Items.BeginUpdate(); + this.repositoryItemImageComboBox1.Items.Add(working.Name, working, -1); + this.repositoryItemImageComboBox1.Items.EndUpdate(); + this.barEditCurrentWorking.EditValue = working; + } + + //璁剧疆褰撳墠宸ュ喌 + private void SetCurrentWorking(HydroWorkingVmo working) + { + _currentWorking = working; + } + + //褰撳墠宸ュ喌鍙戠敓鏀瑰彉 + private void barEditCurrentWorking_EditValueChanged(object sender, EventArgs e) + { + var working = this.barEditCurrentWorking.EditValue as HydroWorkingVmo; + SetCurrentWorking(working); + } + #endregion + + #region 宸ュ喌鍒楄〃 + + //鎵�鏈夊伐鍐靛垪琛� + private List<HydroWorkingVmo> _allWorkingList = null; + + //鍒濆鍖栧伐鍐靛垪琛� + private async void InitialWorkingList() + { + _allWorkingList = await BLLFactory<Yw.BLL.HydroWorking>.Instance.GetByModelID(_hydroInfo.ID); + if (_allWorkingList == null) + { + _allWorkingList = new List<HydroWorkingVmo>(); + } + } + + #endregion diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.resx b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.resx index 63b2d92..026d825 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.resx +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.resx @@ -348,7 +348,7 @@ UzE4LjcsMTYsMTcsMTZ6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== </value> </data> - <data name="barBtnParallelAnaly.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnCurrentWorkingParallelAnalysis.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -534,29 +534,7 @@ PSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> - <data name="barBtnWorkingCompare.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGwDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iR3JvdXBGaWVsZENvbGxlY3Rpb25fMV8iPg0KICAgIDxwYXRoIGQ9Ik0xNywxNEgx - Yy0wLjYsMC0xLTAuNC0xLTFWNWMwLTAuNiwwLjQtMSwxLTFoMTZjMC41LDAsMSwwLjQsMSwxdjhDMTgs - MTMuNiwxNy41LDE0LDE3LDE0eiBNMzIsMjV2LTggICBjMC0wLjUtMC41LTEtMS0xSDE1Yy0wLjYsMC0x - LDAuNS0xLDF2OGMwLDAuNSwwLjQsMSwxLDFoMTZDMzEuNSwyNiwzMiwyNS41LDMyLDI1eiIgY2xhc3M9 - IkJsdWUiIC8+DQogICAgPHBhdGggZD0iTTgsMjB2NGg0djJIN2MtMC42LDAtMS0wLjQtMS0xdi01SDJs - NS01bDUsNUg4eiBNMjYsMTBWNWMwLTAuNi0wLjQtMS0xLTFoLTV2Mmg0djRoLTRsNSw1bDUtNUgyNnoi - IGNsYXNzPSJHcmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== -</value> - </data> - <data name="barBtnWorkingLossCurve.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnCurrentWorkingLossCurve.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -574,7 +552,7 @@ IGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L </value> </data> - <data name="barBtnWorkingLossScale.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnCurrentWorkingLossScale.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -595,7 +573,7 @@ IC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> - <data name="barBtnWorkingPowerAnalysis.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnCurrentWorkingPowerAnalysis.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -642,7 +620,7 @@ MjQsOS42LDIzLjYsMTAsMjMsMTB6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> - <data name="barBtnWorkingMulti.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnCurrentWorkingMultiAnalysis.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -713,6 +691,28 @@ LTZWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> + <data name="barBtnWorkingList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIUDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD + MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw + MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu + bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iTGlzdEJ1bGxldHMiPg0KICAgIDxw + YXRoIGQ9Ik0zMCwxMEgxMlY4aDE4VjEweiBNMzAsMThIMTJ2LTJoMThWMTh6IE0zMCwyNkgxMnYtMmgx + OFYyNnoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cGF0aCBkPSJNOCw5YzAsMS43LTEuMywzLTMsM3Mt + My0xLjMtMy0zczEuMy0zLDMtM1M4LDcuMyw4LDl6IE01LDE0Yy0xLjcsMC0zLDEuMy0zLDNzMS4zLDMs + MywzczMtMS4zLDMtMyAgIFM2LjcsMTQsNSwxNHogTTUsMjJjLTEuNywwLTMsMS4zLTMsM3MxLjMsMywz + LDNzMy0xLjMsMy0zUzYuNywyMiw1LDIyeiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs= +</value> + </data> <metadata name="dockManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>179, 21</value> </metadata> diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/01-const/HydroElbow.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/01-const/HydroElbow.cs new file mode 100644 index 0000000..3349296 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/01-const/HydroElbow.cs @@ -0,0 +1,25 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 寮ご + /// </summary> + public class HydroElbow + { + /// <summary> + /// 鐭緞 + /// </summary> + public const string Short = "鐭緞"; + + /// <summary> + /// 涓緞 + /// </summary> + public const string Middle = "涓緞"; + + /// <summary> + /// 闀垮緞 + /// </summary> + public const string Long = "闀垮緞"; + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eAlgorithmType.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eAlgorithmType.cs new file mode 100644 index 0000000..a2c5169 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eAlgorithmType.cs @@ -0,0 +1,27 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 绠楁硶绫诲瀷 + /// </summary> + public enum eAlgorithmType + { + /// <summary> + /// 娴锋.-濞佸粔濮嗘柉绯绘暟 + /// </summary> + [Display(Name = "娴锋.-濞佸粔濮嗘柉绯绘暟")] + Hazen = 0, + + /// <summary> + /// 杈捐タ-榄忔柉宸磋但绮楃硻搴︾郴鏁� + /// </summary> + [Display(Name = "杈捐タ-榄忔柉宸磋但绮楃硻搴︾郴鏁�")] + Darcy = 1, + + /// <summary> + /// 鏇煎畞绮楃硻绯绘暟 + /// </summary> + [Display(Name = "鏇煎畞绮楃硻绯绘暟")] + Manning = 2 + } + +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eElbowType.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eElbowType.cs new file mode 100644 index 0000000..1ef63dd --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eElbowType.cs @@ -0,0 +1,29 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 寮ご绫诲瀷 + /// </summary> + public enum eElbowType + { + + /// <summary> + /// 鐭緞 + /// </summary> + [Display(Name = "鐭緞")] + Short = 1, + + /// <summary> + /// 涓緞 + /// </summary> + [Display(Name = "涓緞")] + Middle = 2, + + /// <summary> + /// 闀垮緞 + /// </summary> + [Display(Name = "闀垮緞")] + Long = 3 + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eValveType.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eValveType.cs new file mode 100644 index 0000000..de71b1c --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-enum/eValveType.cs @@ -0,0 +1,50 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 闃�闂ㄧ被鍨� + /// </summary> + public enum eValveType + { + /// <summary> + /// 鍑忓帇闃� + /// </summary> + [Display(Name = "鍑忓帇闃�")] + PRV = 0, + + /// <summary> + /// 绋冲帇闃� + /// </summary> + [Display(Name = "绋冲帇闃�")] + PSV = 1, + + /// <summary> + /// 鍘嬪姏鍒跺姩闃� + /// </summary> + [Display(Name = "鍘嬪姏鍒跺姩闃�")] + PBV = 2, + + /// <summary> + /// 娴侀噺鎺у埗闃� + /// </summary> + [Display(Name = "娴侀噺鎺у埗闃�")] + FCV = 3, + + /// <summary> + /// 鑺傛祦鎺у埗闃� + /// </summary> + [Display(Name = "鑺傛祦鎺у埗闃�")] + TCV = 4, + + /// <summary> + /// 甯歌闃�闂� + /// </summary> + [Display(Name = "甯歌闃�闂�")] + GPV = 5, + + /// <summary> + /// 姝㈠洖闃� + /// </summary> + [Display(Name = "姝㈠洖闃�")] + CV = 6 + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-transfer/HydroL2dTransferHelper.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-transfer/HydroL2dTransferHelper.cs index 2a92841..8d79183 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-transfer/HydroL2dTransferHelper.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/02-transfer/HydroL2dTransferHelper.cs @@ -212,7 +212,7 @@ { var startNode = rhs.GetAllNodes().Find(x => x.Code == pump.StartCode); var endNode = rhs.GetAllNodes().Find(x => x.Code == pump.EndCode); - var pumpViewModel = new Pump(); + var pumpViewModel = new Yw.WinFrmUI.HydroL2d.Pump(); pumpViewModel.Id = pump.Code; pumpViewModel.Name = pump.Name; pumpViewModel.StartPosition = new PointF((float)startNode.Position2d.X, (float)startNode.Position2d.Y); diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs new file mode 100644 index 0000000..8fd3d6c --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs @@ -0,0 +1,156 @@ +锘縰sing Yw.EPAnet; +using Yw.Hydro; + +namespace Yw.WinFrmUI +{ + /// <summary> + /// 璁$畻缁撴灉杈呭姪绫� + /// </summary> + public static class HydroCalcuResultHelper + { + /// <summary> + /// 璁$畻 + /// </summary> + public static HydroCalcuResult Calcu(this Yw.Model.HydroModelInfo hydroInfo, string calcuMode = Yw.EPAnet.CalcuMode.Simple) + { + var network = hydroInfo.ToNetwork(); + if (network == null) + { + return default; + } + var calcuResult = network.Calcu(calcuMode); + if (calcuResult == null) + { + return default; + } + return hydroInfo.GetCalcuResult(calcuResult); + } + + /// <summary> + /// 鑾峰彇璁$畻缁撴灉 + /// </summary> + public static HydroCalcuResult GetCalcuResult(this Yw.Model.HydroModelInfo hydroInfo, Yw.EPAnet.CalcuResult calcuResult) + { + if (hydroInfo == null) + { + return default; + } + if (calcuResult == null) + { + return default; + } + + var hydroCalcuResult = new HydroCalcuResult(); + hydroCalcuResult.Succeed = calcuResult.Succeed; + //澶辫触鍒楄〃 + hydroCalcuResult.FailedList = calcuResult.FailedList?.Select(x => new HydroCalcuFailed(x)).ToList(); + //鑺傜偣鍒楄〃 + hydroCalcuResult.NodeList = calcuResult.NodeList?.Select(x => new HydroCalcuNodeResult(x)).ToList(); + //绠℃鍒楄〃 + hydroCalcuResult.LinkList = calcuResult.LinkList?.Select(x => new HydroCalcuLinkResult(x)).ToList(); + + //娴侀噺璁� + var allFlowmeterList = hydroInfo.Flowmeters; + if (allFlowmeterList != null && allFlowmeterList.Count > 0) + { + var allLinkList = hydroInfo.GetAllLinks(); + foreach (var flowmeter in allFlowmeterList) + { + var calcuFlowmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == flowmeter.Code); + if (calcuFlowmeterResult != null) + { + var calcuFlowmeterNewResult = new HydroCalcuFlowmeterResult(calcuFlowmeterResult); + var calcuFlowmeterLinkResultList = new List<HydroCalcuLinkResult>(); + var flowmeterLinkList = allLinkList?.Where(x => x.StartCode == flowmeter.Code || x.EndCode == flowmeter.Code).ToList(); + if (flowmeterLinkList != null && flowmeterLinkList.Count > 0) + { + foreach (var flowmeterLink in flowmeterLinkList) + { + var calcuFlowmeterLinkResult = hydroCalcuResult.LinkList?.Find(x => x.Code == flowmeterLink.Code); + if (calcuFlowmeterLinkResult != null) + { + calcuFlowmeterLinkResultList.Add(calcuFlowmeterLinkResult); + } + } + } + if (calcuFlowmeterLinkResultList.Exists(x => x.CalcuFlow.HasValue)) + { + calcuFlowmeterNewResult.CalcuQ = calcuFlowmeterLinkResultList.Where(x => x.CalcuFlow.HasValue).Average(x => x.CalcuFlow.Value); + } + hydroCalcuResult.NodeList.Remove(calcuFlowmeterResult); + hydroCalcuResult.NodeList.Add(calcuFlowmeterNewResult); + } + } + } + + //鍘嬪姏琛� + var allPressmeterList = hydroInfo.Pressmeters; + if (allPressmeterList != null && allPressmeterList.Count > 0) + { + foreach (var pressmeter in allPressmeterList) + { + var calcuPressmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pressmeter.Code); + if (calcuPressmeterResult != null) + { + var calcuPressmeterNewResult = new HydroCalcuPressmeterResult(calcuPressmeterResult); + calcuPressmeterNewResult.CalcuPr = calcuPressmeterResult.CalcuPress; + hydroCalcuResult.NodeList.Remove(calcuPressmeterResult); + hydroCalcuResult.NodeList.Add(calcuPressmeterNewResult); + } + } + } + + //姘存车 + var allPumpList = hydroInfo.Pumps; + if (allPumpList != null && allPumpList.Count > 0) + { + foreach (var pump in allPumpList) + { + var calcuPumpResult = hydroCalcuResult.LinkList.Find(x => x.Code == pump.Code); + if (calcuPumpResult != null) + { + var calcuPumpNewResult = new HydroCalcuPumpResult(calcuPumpResult); + calcuPumpNewResult.CalcuQ = calcuPumpResult.CalcuFlow; + if (calcuPumpNewResult.CalcuQ.HasValue) + { + var calcuNodeStartResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.StartCode); + var calcuNodeEndResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.EndCode); + if (calcuNodeStartResult != null && calcuNodeEndResult != null) + { + if (calcuNodeStartResult.CalcuPress.HasValue && calcuNodeEndResult.CalcuPress.HasValue) + { + calcuPumpNewResult.CalcuH = Math.Abs(calcuNodeStartResult.CalcuPress.Value - calcuNodeEndResult.CalcuPress.Value); + } + if (pump.LinkStatus == Yw.Hydro.PumpStatus.Open && pump.RatedN.HasValue) + { + var curveqp = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQP); + if (curveqp != null) + { + if (curveqp.CurveData != null && curveqp.CurveData.Count > 3) + { + var point2dList = curveqp.CurveData.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); + var point2dSimularList = point2dList.GetQPPointListByN(pump.RatedN.Value, pump.RatedN.Value * pump.SpeedRatio); + var pumpCurveQp = new Yw.Pump.CurveQP(eFeatType.Cubic, point2dSimularList); + calcuPumpNewResult.CalcuP = pumpCurveQp.FeatCurve.GetPointY(calcuPumpNewResult.CalcuQ.Value); + } + } + } + if (calcuPumpNewResult.CalcuH.HasValue && calcuPumpNewResult.CalcuP.HasValue) + { + calcuPumpNewResult.CalcuE = Yw.Pump.CalculationHelper.CalcuE(calcuPumpNewResult.CalcuQ.Value, calcuPumpNewResult.CalcuH.Value, calcuPumpNewResult.CalcuP.Value); + } + } + } + hydroCalcuResult.LinkList.Remove(calcuPumpResult); + hydroCalcuResult.LinkList.Add(calcuPumpNewResult); + } + } + } + + return hydroCalcuResult; + } + + + } + +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/02-visual/HydroCalcuVisualResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/02-visual/HydroCalcuVisualResult.cs index 63e6327..3dc4e1e 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/02-visual/HydroCalcuVisualResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/02-visual/HydroCalcuVisualResult.cs @@ -26,6 +26,13 @@ this.Code = rhs.Code; } + /// <summary> + /// + /// </summary> + public HydroCalcuVisualResult(Yw.EPAnet.CalcuVisual rhs) + { + this.Code = rhs.Id; + } /// <summary> /// 缂栫爜 diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/00-core/HydroCalcuNodeResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/00-core/HydroCalcuNodeResult.cs index ce37bcd..463d8e1 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/00-core/HydroCalcuNodeResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/00-core/HydroCalcuNodeResult.cs @@ -41,6 +41,16 @@ } /// <summary> + /// + /// </summary> + public HydroCalcuNodeResult(Yw.EPAnet.CalcuNode rhs) : base(rhs) + { + this.CalcuPress = rhs.Press; + this.CalcuHead = rhs.Head; + this.CalcuDemand = rhs.Demand; + } + + /// <summary> /// 鍘嬪姏锛坢锛� /// </summary> public double? CalcuPress { get; set; } @@ -54,5 +64,7 @@ /// 闇�姘撮噺锛坢鲁/h锛� /// </summary> public double? CalcuDemand { get; set; } + + } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/01-flowmeter/HydroCalcuFlowmeterResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/01-flowmeter/HydroCalcuFlowmeterResult.cs index fff404a..04f70ea 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/01-flowmeter/HydroCalcuFlowmeterResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/01-flowmeter/HydroCalcuFlowmeterResult.cs @@ -33,6 +33,11 @@ /// <summary> /// /// </summary> + public HydroCalcuFlowmeterResult(Yw.EPAnet.CalcuNode rhs) : base(rhs) { } + + /// <summary> + /// + /// </summary> public HydroCalcuFlowmeterResult(IHydroCalcuFlowmeterResult rhs) : base(rhs) { this.CalcuQ = rhs.CalcuQ; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/02-pressmeter/HydroCalcuPressmeterResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/02-pressmeter/HydroCalcuPressmeterResult.cs index f4aa2d0..9771875 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/02-pressmeter/HydroCalcuPressmeterResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/03-node/02-pressmeter/HydroCalcuPressmeterResult.cs @@ -33,6 +33,11 @@ /// <summary> /// /// </summary> + public HydroCalcuPressmeterResult(Yw.EPAnet.CalcuNode rhs) : base(rhs) { } + + /// <summary> + /// + /// </summary> public HydroCalcuPressmeterResult(IHydroCalcuPressmeterResult rhs) : base(rhs) { this.CalcuPr = rhs.CalcuPr; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/00-core/HydroCalcuLinkResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/00-core/HydroCalcuLinkResult.cs index a6e0f56..30947cf 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/00-core/HydroCalcuLinkResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/00-core/HydroCalcuLinkResult.cs @@ -23,6 +23,16 @@ /// <summary> /// /// </summary> + public HydroCalcuLinkResult(Yw.EPAnet.CalcuLink rhs) : base(rhs) + { + this.CalcuFlow = rhs.Flow; + this.CalcuVelocity = rhs.Velocity; + this.CalcuHeadLoss = rhs.Headloss; + } + + /// <summary> + /// + /// </summary> public HydroCalcuLinkResult(IHydroCalcuLinkResult rhs) : base(rhs) { this.CalcuFlow = rhs.CalcuFlow; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/01-pump/HydroCalcuPumpResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/01-pump/HydroCalcuPumpResult.cs index ab84abf..448cb8a 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/01-pump/HydroCalcuPumpResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/04-link/01-pump/HydroCalcuPumpResult.cs @@ -33,6 +33,11 @@ /// <summary> /// /// </summary> + public HydroCalcuPumpResult(Yw.EPAnet.CalcuLink rhs) : base(rhs) { } + + /// <summary> + /// + /// </summary> public HydroCalcuPumpResult(IHydroCalcuPumpResult rhs) : base(rhs) { this.CalcuQ = rhs.CalcuQ; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurvePointViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/00-core/HydroCurvePointViewModel.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurvePointViewModel.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/00-core/HydroCurvePointViewModel.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.cs similarity index 90% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.cs index 4ccff33..f5d9a08 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.cs @@ -9,15 +9,7 @@ public HydroCurveViewCtrl() { InitializeComponent(); - - } - - private void InitChart() - { - var xy_diagram = (XYDiagram)this.chartControl1.Diagram; - var axis_x = xy_diagram.AxisX; - var axis_y = xy_diagram.AxisX; } /// <summary> @@ -80,10 +72,10 @@ this.AxisX.VisualRange.SetMinMaxValues(x_min, x_max); this.AxisY.WholeRange.SetMinMaxValues(y_min, y_min); - this.AxisY.VisualRange.SetMinMaxValues(y_max, y_max); + this.AxisY.VisualRange.SetMinMaxValues(y_max, y_max); } - + } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewCtrl.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewCtrl.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.Designer.cs new file mode 100644 index 0000000..5d61dac --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.Designer.cs @@ -0,0 +1,96 @@ +锘縩amespace Yw.WinFrmUI +{ + partial class HydroCurveViewDlg + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + ribbon = new DevExpress.XtraBars.Ribbon.RibbonControl(); + ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage(); + ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); + hydroCurveViewCtrl1 = new HydroCurveViewCtrl(); + ((ISupportInitialize)ribbon).BeginInit(); + SuspendLayout(); + // + // ribbon + // + ribbon.ExpandCollapseItem.Id = 0; + ribbon.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbon.ExpandCollapseItem }); + ribbon.Location = new Point(0, 0); + ribbon.MaxItemId = 1; + ribbon.Name = "ribbon"; + ribbon.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] { ribbonPage1 }); + ribbon.RibbonCaptionAlignment = DevExpress.XtraBars.Ribbon.RibbonCaptionAlignment.Left; + ribbon.ShowDisplayOptionsMenuButton = DevExpress.Utils.DefaultBoolean.False; + ribbon.Size = new Size(821, 32); + // + // ribbonPage1 + // + ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { ribbonPageGroup1 }); + ribbonPage1.Name = "ribbonPage1"; + ribbonPage1.Text = "ribbonPage1"; + // + // ribbonPageGroup1 + // + ribbonPageGroup1.Name = "ribbonPageGroup1"; + ribbonPageGroup1.Text = "ribbonPageGroup1"; + // + // hydroCurveViewCtrl1 + // + hydroCurveViewCtrl1.Dock = DockStyle.Fill; + hydroCurveViewCtrl1.Location = new Point(0, 32); + hydroCurveViewCtrl1.Name = "hydroCurveViewCtrl1"; + hydroCurveViewCtrl1.Size = new Size(821, 564); + hydroCurveViewCtrl1.TabIndex = 4; + hydroCurveViewCtrl1.TitleTextX = "Axis of arguments"; + hydroCurveViewCtrl1.TitleTextY = "Axis of values"; + // + // HydroCurveViewDlg + // + AutoScaleDimensions = new SizeF(7F, 14F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(821, 596); + Controls.Add(hydroCurveViewCtrl1); + Controls.Add(ribbon); + FormBorderStyle = FormBorderStyle.SizableToolWindow; + Name = "HydroCurveViewDlg"; + Ribbon = ribbon; + RibbonVisibility = DevExpress.XtraBars.Ribbon.RibbonVisibility.Hidden; + StartPosition = FormStartPosition.CenterParent; + Text = "鏇茬嚎"; + ((ISupportInitialize)ribbon).EndInit(); + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private DevExpress.XtraBars.Ribbon.RibbonControl ribbon; + private DevExpress.XtraBars.Ribbon.RibbonPage ribbonPage1; + private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1; + private HydroCurveViewCtrl hydroCurveViewCtrl1; + } +} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.cs similarity index 91% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.cs index 7b91904..d9e9a7c 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.cs @@ -1,6 +1,6 @@ 锘縩amespace Yw.WinFrmUI { - public partial class HydroCurveViewDlg : DevExpress.XtraEditors.XtraForm + public partial class HydroCurveViewDlg : DevExpress.XtraBars.Ribbon.RibbonForm { public HydroCurveViewDlg() { diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/01-view/HydroCurveViewDlg.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveCtrl.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveCtrl.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.Designer.cs new file mode 100644 index 0000000..d51b6ff --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.Designer.cs @@ -0,0 +1,164 @@ +锘縩amespace Yw.WinFrmUI +{ + partial class SetHydroCurveDlg + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + ribbon = new DevExpress.XtraBars.Ribbon.RibbonControl(); + ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage(); + ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); + layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + Root = new DevExpress.XtraLayout.LayoutControlGroup(); + setHydroCurveCtrl1 = new SetHydroCurveCtrl(); + layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + generalOkAndCancelCtrl1 = new GeneralOkAndCancelCtrl(); + layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + ((ISupportInitialize)ribbon).BeginInit(); + ((ISupportInitialize)layoutControl1).BeginInit(); + layoutControl1.SuspendLayout(); + ((ISupportInitialize)Root).BeginInit(); + ((ISupportInitialize)layoutControlItem1).BeginInit(); + ((ISupportInitialize)layoutControlItem2).BeginInit(); + SuspendLayout(); + // + // ribbon + // + ribbon.ExpandCollapseItem.Id = 0; + ribbon.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbon.ExpandCollapseItem }); + ribbon.Location = new Point(0, 0); + ribbon.MaxItemId = 1; + ribbon.Name = "ribbon"; + ribbon.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] { ribbonPage1 }); + ribbon.RibbonCaptionAlignment = DevExpress.XtraBars.Ribbon.RibbonCaptionAlignment.Left; + ribbon.ShowDisplayOptionsMenuButton = DevExpress.Utils.DefaultBoolean.False; + ribbon.Size = new Size(990, 32); + // + // ribbonPage1 + // + ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { ribbonPageGroup1 }); + ribbonPage1.Name = "ribbonPage1"; + ribbonPage1.Text = "ribbonPage1"; + // + // ribbonPageGroup1 + // + ribbonPageGroup1.Name = "ribbonPageGroup1"; + ribbonPageGroup1.Text = "ribbonPageGroup1"; + // + // layoutControl1 + // + layoutControl1.Controls.Add(generalOkAndCancelCtrl1); + layoutControl1.Controls.Add(setHydroCurveCtrl1); + layoutControl1.Dock = DockStyle.Fill; + layoutControl1.Location = new Point(0, 32); + layoutControl1.Name = "layoutControl1"; + layoutControl1.Root = Root; + layoutControl1.Size = new Size(990, 651); + layoutControl1.TabIndex = 6; + layoutControl1.Text = "layoutControl1"; + // + // Root + // + Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + Root.GroupBordersVisible = false; + Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem2 }); + Root.Name = "Root"; + Root.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + Root.Size = new Size(990, 651); + Root.TextVisible = false; + // + // setHydroCurveCtrl1 + // + setHydroCurveCtrl1.Location = new Point(2, 2); + setHydroCurveCtrl1.Name = "setHydroCurveCtrl1"; + setHydroCurveCtrl1.Size = new Size(986, 617); + setHydroCurveCtrl1.TabIndex = 4; + // + // layoutControlItem1 + // + layoutControlItem1.Control = setHydroCurveCtrl1; + layoutControlItem1.Location = new Point(0, 0); + layoutControlItem1.Name = "layoutControlItem1"; + layoutControlItem1.Size = new Size(990, 621); + layoutControlItem1.TextSize = new Size(0, 0); + layoutControlItem1.TextVisible = false; + // + // generalOkAndCancelCtrl1 + // + generalOkAndCancelCtrl1.ButtonCancelMaxSize = new Size(100, 26); + generalOkAndCancelCtrl1.ButtonCancelMinSize = new Size(100, 26); + generalOkAndCancelCtrl1.ButtonOkMaxSize = new Size(100, 26); + generalOkAndCancelCtrl1.ButtonOkMinSize = new Size(100, 26); + generalOkAndCancelCtrl1.Location = new Point(2, 623); + generalOkAndCancelCtrl1.Name = "generalOkAndCancelCtrl1"; + generalOkAndCancelCtrl1.Size = new Size(986, 26); + generalOkAndCancelCtrl1.TabIndex = 5; + // + // layoutControlItem2 + // + layoutControlItem2.Control = generalOkAndCancelCtrl1; + layoutControlItem2.Location = new Point(0, 621); + layoutControlItem2.Name = "layoutControlItem2"; + layoutControlItem2.Size = new Size(990, 30); + layoutControlItem2.TextSize = new Size(0, 0); + layoutControlItem2.TextVisible = false; + // + // SetHydroCurveDlg + // + AutoScaleDimensions = new SizeF(7F, 14F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(990, 683); + Controls.Add(layoutControl1); + Controls.Add(ribbon); + FormBorderStyle = FormBorderStyle.SizableToolWindow; + Name = "SetHydroCurveDlg"; + Ribbon = ribbon; + RibbonVisibility = DevExpress.XtraBars.Ribbon.RibbonVisibility.Hidden; + StartPosition = FormStartPosition.CenterParent; + Text = "鏇茬嚎"; + ((ISupportInitialize)ribbon).EndInit(); + ((ISupportInitialize)layoutControl1).EndInit(); + layoutControl1.ResumeLayout(false); + ((ISupportInitialize)Root).EndInit(); + ((ISupportInitialize)layoutControlItem1).EndInit(); + ((ISupportInitialize)layoutControlItem2).EndInit(); + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private DevExpress.XtraBars.Ribbon.RibbonControl ribbon; + private DevExpress.XtraBars.Ribbon.RibbonPage ribbonPage1; + private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1; + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private GeneralOkAndCancelCtrl generalOkAndCancelCtrl1; + private SetHydroCurveCtrl setHydroCurveCtrl1; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + } +} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.cs new file mode 100644 index 0000000..164c198 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.cs @@ -0,0 +1,50 @@ +锘縩amespace Yw.WinFrmUI +{ + public partial class SetHydroCurveDlg : DevExpress.XtraBars.Ribbon.RibbonForm + { + public SetHydroCurveDlg() + { + InitializeComponent(); + this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; + this.layoutControl1.SetupLayoutControl(); + this.setHydroCurveCtrl1.SaveCurveInfoEvent += SetHydroCurveCtrl1_SaveCurveInfoEvent; + this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent; + } + + /// <summary> + /// 閲嶈浇鏁版嵁浜嬩欢 + /// </summary> + public event Action<Yw.Model.HydroCurveInfo> ReloadDataEvent; + + //鏇茬嚎 + private Yw.Model.HydroCurveInfo _curve; + + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, Yw.Model.HydroCurveInfo curveInfo, string curveType) + { + this.setHydroCurveCtrl1.SetBindingData(hydroInfo, curveInfo, curveType); + } + + //淇濆瓨 + private void SetHydroCurveCtrl1_SaveCurveInfoEvent(Model.HydroCurveInfo obj) + { + _curve = obj; + } + + //纭畾 + private void GeneralOkAndCancelCtrl1_OkEvent() + { + if (_curve == null) + { + return; + } + this.ReloadDataEvent?.Invoke(_curve); + this.DialogResult = DialogResult.OK; + this.Close(); + } + + + } +} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/02-set/SetHydroCurveDlg.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.Designer.cs deleted file mode 100644 index d1cb0b5..0000000 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/HydroCurveViewDlg.Designer.cs +++ /dev/null @@ -1,60 +0,0 @@ -锘縩amespace Yw.WinFrmUI -{ - partial class HydroCurveViewDlg - { - /// <summary> - /// Required designer variable. - /// </summary> - private System.ComponentModel.IContainer components = null; - - /// <summary> - /// Clean up any resources being used. - /// </summary> - /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { - hydroCurveViewCtrl1 = new HydroCurveViewCtrl(); - SuspendLayout(); - // - // hydroCurveViewCtrl1 - // - hydroCurveViewCtrl1.Dock = DockStyle.Fill; - hydroCurveViewCtrl1.Location = new Point(0, 0); - hydroCurveViewCtrl1.Name = "hydroCurveViewCtrl1"; - hydroCurveViewCtrl1.Size = new Size(771, 567); - hydroCurveViewCtrl1.TabIndex = 0; - hydroCurveViewCtrl1.TitleTextX = "Axis of arguments"; - hydroCurveViewCtrl1.TitleTextY = "Axis of values"; - // - // HydroCurveViewDlg - // - AutoScaleDimensions = new SizeF(7F, 14F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(771, 567); - Controls.Add(hydroCurveViewCtrl1); - Name = "HydroCurveViewDlg"; - StartPosition = FormStartPosition.CenterParent; - Text = "鏇茬嚎"; - ResumeLayout(false); - } - - #endregion - - private HydroCurveViewCtrl hydroCurveViewCtrl1; - } -} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.Designer.cs deleted file mode 100644 index db3c153..0000000 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.Designer.cs +++ /dev/null @@ -1,175 +0,0 @@ -锘縩amespace Yw.WinFrmUI -{ - partial class SetHydroCurveDlg - { - /// <summary> - /// Required designer variable. - /// </summary> - private System.ComponentModel.IContainer components = null; - - /// <summary> - /// Clean up any resources being used. - /// </summary> - /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { - layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); - Root = new DevExpress.XtraLayout.LayoutControlGroup(); - setHydroCurveCtrl1 = new SetHydroCurveCtrl(); - layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); - btnOk = new DevExpress.XtraEditors.SimpleButton(); - layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); - btnCancel = new DevExpress.XtraEditors.SimpleButton(); - layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); - emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); - ((ISupportInitialize)layoutControl1).BeginInit(); - layoutControl1.SuspendLayout(); - ((ISupportInitialize)Root).BeginInit(); - ((ISupportInitialize)layoutControlItem1).BeginInit(); - ((ISupportInitialize)layoutControlItem2).BeginInit(); - ((ISupportInitialize)layoutControlItem3).BeginInit(); - ((ISupportInitialize)emptySpaceItem1).BeginInit(); - SuspendLayout(); - // - // layoutControl1 - // - layoutControl1.Controls.Add(btnCancel); - layoutControl1.Controls.Add(btnOk); - layoutControl1.Controls.Add(setHydroCurveCtrl1); - layoutControl1.Dock = DockStyle.Fill; - layoutControl1.Location = new Point(0, 0); - layoutControl1.Name = "layoutControl1"; - layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new Rectangle(1270, 380, 650, 400); - layoutControl1.Root = Root; - layoutControl1.Size = new Size(987, 638); - layoutControl1.TabIndex = 0; - layoutControl1.Text = "layoutControl1"; - // - // Root - // - Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; - Root.GroupBordersVisible = false; - Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { layoutControlItem1, layoutControlItem2, layoutControlItem3, emptySpaceItem1 }); - Root.Name = "Root"; - Root.Size = new Size(987, 638); - Root.TextVisible = false; - // - // setHydroCurveCtrl1 - // - setHydroCurveCtrl1.Location = new Point(12, 12); - setHydroCurveCtrl1.Name = "setHydroCurveCtrl1"; - setHydroCurveCtrl1.Size = new Size(963, 588); - setHydroCurveCtrl1.TabIndex = 4; - // - // layoutControlItem1 - // - layoutControlItem1.Control = setHydroCurveCtrl1; - layoutControlItem1.Location = new Point(0, 0); - layoutControlItem1.Name = "layoutControlItem1"; - layoutControlItem1.Size = new Size(967, 592); - layoutControlItem1.TextSize = new Size(0, 0); - layoutControlItem1.TextVisible = false; - // - // btnOk - // - btnOk.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Primary; - btnOk.Appearance.Options.UseBackColor = true; - btnOk.Location = new Point(739, 604); - btnOk.Name = "btnOk"; - btnOk.Size = new Size(116, 22); - btnOk.StyleController = layoutControl1; - btnOk.TabIndex = 5; - btnOk.Text = "纭畾"; - btnOk.Click += btnOk_Click; - // - // layoutControlItem2 - // - layoutControlItem2.Control = btnOk; - layoutControlItem2.Location = new Point(727, 592); - layoutControlItem2.MaxSize = new Size(120, 26); - layoutControlItem2.MinSize = new Size(120, 26); - layoutControlItem2.Name = "layoutControlItem2"; - layoutControlItem2.Size = new Size(120, 26); - layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; - layoutControlItem2.TextSize = new Size(0, 0); - layoutControlItem2.TextVisible = false; - // - // btnCancel - // - btnCancel.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Warning; - btnCancel.Appearance.Options.UseBackColor = true; - btnCancel.DialogResult = DialogResult.Cancel; - btnCancel.Location = new Point(859, 604); - btnCancel.Name = "btnCancel"; - btnCancel.Size = new Size(116, 22); - btnCancel.StyleController = layoutControl1; - btnCancel.TabIndex = 6; - btnCancel.Text = "鍙栨秷"; - // - // layoutControlItem3 - // - layoutControlItem3.Control = btnCancel; - layoutControlItem3.Location = new Point(847, 592); - layoutControlItem3.MaxSize = new Size(120, 26); - layoutControlItem3.MinSize = new Size(120, 26); - layoutControlItem3.Name = "layoutControlItem3"; - layoutControlItem3.Size = new Size(120, 26); - layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; - layoutControlItem3.TextSize = new Size(0, 0); - layoutControlItem3.TextVisible = false; - // - // emptySpaceItem1 - // - emptySpaceItem1.AllowHotTrack = false; - emptySpaceItem1.Location = new Point(0, 592); - emptySpaceItem1.Name = "emptySpaceItem1"; - emptySpaceItem1.Size = new Size(727, 26); - emptySpaceItem1.TextSize = new Size(0, 0); - // - // SetHydroCurveDlg - // - AutoScaleDimensions = new SizeF(7F, 14F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(987, 638); - Controls.Add(layoutControl1); - Name = "SetHydroCurveDlg"; - StartPosition = FormStartPosition.CenterParent; - Text = "璁剧疆鏇茬嚎"; - ((ISupportInitialize)layoutControl1).EndInit(); - layoutControl1.ResumeLayout(false); - ((ISupportInitialize)Root).EndInit(); - ((ISupportInitialize)layoutControlItem1).EndInit(); - ((ISupportInitialize)layoutControlItem2).EndInit(); - ((ISupportInitialize)layoutControlItem3).EndInit(); - ((ISupportInitialize)emptySpaceItem1).EndInit(); - ResumeLayout(false); - } - - #endregion - - private DevExpress.XtraLayout.LayoutControl layoutControl1; - private DevExpress.XtraEditors.SimpleButton btnCancel; - private DevExpress.XtraEditors.SimpleButton btnOk; - private SetHydroCurveCtrl setHydroCurveCtrl1; - private DevExpress.XtraLayout.LayoutControlGroup Root; - private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; - private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; - private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; - private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; - } -} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.cs deleted file mode 100644 index 0744a01..0000000 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/07-curve/SetHydroCurveDlg.cs +++ /dev/null @@ -1,55 +0,0 @@ -锘縰sing DevExpress.XtraEditors; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace Yw.WinFrmUI -{ - public partial class SetHydroCurveDlg : DevExpress.XtraEditors.XtraForm - { - public SetHydroCurveDlg() - { - InitializeComponent(); - this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; - this.setHydroCurveCtrl1.SaveCurveInfoEvent += SetHydroCurveCtrl1_SaveCurveInfoEvent; - } - - /// <summary> - /// - /// </summary> - public event Action<Yw.Model.HydroCurveInfo> ReloadDataEvent; - - private Yw.Model.HydroCurveInfo _curveInfo; - - /// <summary> - /// - /// </summary> - public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, Yw.Model.HydroCurveInfo curveInfo, string curveType) - { - this.setHydroCurveCtrl1.SetBindingData(hydroInfo, curveInfo, curveType); - } - - private void SetHydroCurveCtrl1_SaveCurveInfoEvent(Model.HydroCurveInfo obj) - { - _curveInfo = obj; - } - - // - private void btnOk_Click(object sender, EventArgs e) - { - if (_curveInfo == null) - { - return; - } - this.ReloadDataEvent?.Invoke(_curveInfo); - this.DialogResult = DialogResult.OK; - this.Close(); - } - } -} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.Designer.cs index 7bafcad..66e6ff9 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.Designer.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.Designer.cs @@ -29,14 +29,14 @@ private void InitializeComponent() { components = new Container(); - DevExpress.Utils.SuperToolTip superToolTip5 = new DevExpress.Utils.SuperToolTip(); - DevExpress.Utils.ToolTipItem toolTipItem5 = new DevExpress.Utils.ToolTipItem(); - DevExpress.Utils.SuperToolTip superToolTip6 = new DevExpress.Utils.SuperToolTip(); - DevExpress.Utils.ToolTipItem toolTipItem6 = new DevExpress.Utils.ToolTipItem(); ComponentResourceManager resources = new ComponentResourceManager(typeof(HydroVisualPropertyCtrl)); - DevExpress.Utils.SuperToolTip superToolTip4 = new DevExpress.Utils.SuperToolTip(); - DevExpress.Utils.ToolTipTitleItem toolTipTitleItem2 = new DevExpress.Utils.ToolTipTitleItem(); - DevExpress.Utils.ToolTipItem toolTipItem4 = new DevExpress.Utils.ToolTipItem(); + DevExpress.Utils.SuperToolTip superToolTip1 = new DevExpress.Utils.SuperToolTip(); + DevExpress.Utils.ToolTipItem toolTipItem1 = new DevExpress.Utils.ToolTipItem(); + DevExpress.Utils.SuperToolTip superToolTip2 = new DevExpress.Utils.SuperToolTip(); + DevExpress.Utils.ToolTipItem toolTipItem2 = new DevExpress.Utils.ToolTipItem(); + DevExpress.Utils.SuperToolTip superToolTip3 = new DevExpress.Utils.SuperToolTip(); + DevExpress.Utils.ToolTipTitleItem toolTipTitleItem1 = new DevExpress.Utils.ToolTipTitleItem(); + DevExpress.Utils.ToolTipItem toolTipItem3 = new DevExpress.Utils.ToolTipItem(); layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); hydroVisualPropertyDescriptionCtrl1 = new HydroVisualPropertyDescriptionCtrl(); propertyGridControl1 = new DevExpress.XtraVerticalGrid.PropertyGridControl(); @@ -204,9 +204,10 @@ barBtnChangeLink.Id = 16; barBtnChangeLink.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnChangeLink.ImageOptions.SvgImage"); barBtnChangeLink.Name = "barBtnChangeLink"; - toolTipItem5.Text = "璋冩暣涓婁笅娓�"; - superToolTip5.Items.Add(toolTipItem5); - barBtnChangeLink.SuperTip = superToolTip5; + toolTipItem1.Text = "璋冩暣涓婁笅娓�"; + superToolTip1.Items.Add(toolTipItem1); + barBtnChangeLink.SuperTip = superToolTip1; + barBtnChangeLink.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; barBtnChangeLink.ItemClick += barBtnChangeLink_ItemClick; // // barBtnView @@ -214,9 +215,10 @@ barBtnView.Id = 17; barBtnView.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnView.ImageOptions.SvgImage"); barBtnView.Name = "barBtnView"; - toolTipItem6.Text = "鏌ョ湅"; - superToolTip6.Items.Add(toolTipItem6); - barBtnView.SuperTip = superToolTip6; + toolTipItem2.Text = "鏌ョ湅"; + superToolTip2.Items.Add(toolTipItem2); + barBtnView.SuperTip = superToolTip2; + barBtnView.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; barBtnView.ItemClick += barBtnView_ItemClick; // // barBtnHelp @@ -226,14 +228,14 @@ barBtnHelp.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnHelp.ImageOptions.SvgImage"); barBtnHelp.ImageOptions.SvgImageSize = new Size(20, 20); barBtnHelp.Name = "barBtnHelp"; - toolTipTitleItem2.Appearance.Image = (Image)resources.GetObject("resource.Image"); - toolTipTitleItem2.Appearance.Options.UseImage = true; - toolTipTitleItem2.ImageOptions.Image = (Image)resources.GetObject("resource.Image1"); - toolTipItem4.LeftIndent = 6; - toolTipItem4.Text = "鎻忚堪淇℃伅"; - superToolTip4.Items.Add(toolTipTitleItem2); - superToolTip4.Items.Add(toolTipItem4); - barBtnHelp.SuperTip = superToolTip4; + toolTipTitleItem1.Appearance.Image = (Image)resources.GetObject("resource.Image"); + toolTipTitleItem1.Appearance.Options.UseImage = true; + toolTipTitleItem1.ImageOptions.Image = (Image)resources.GetObject("resource.Image1"); + toolTipItem3.LeftIndent = 6; + toolTipItem3.Text = "鎻忚堪淇℃伅"; + superToolTip3.Items.Add(toolTipTitleItem1); + superToolTip3.Items.Add(toolTipItem3); + barBtnHelp.SuperTip = superToolTip3; barBtnHelp.ItemClick += barBtnHelp_ItemClick; // // barDockControlTop diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs index 61c6de3..f11d47a 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs @@ -3,7 +3,6 @@ using DevExpress.XtraEditors.Controls; using DevExpress.XtraEditors.Repository; using DevExpress.XtraLayout.Utils; -using DevExpress.XtraRichEdit.Model; using DevExpress.XtraVerticalGrid.Events; namespace Yw.WinFrmUI @@ -15,9 +14,6 @@ { InitializeComponent(); this.layoutControl1.SetupLayoutControl(); - this.barBtnChangeLink.Visibility = BarItemVisibility.Never; - this.barBtnView.Visibility = BarItemVisibility.Never; - SetDescriptionVisible(false);//榛樿璁剧疆灞炴�ф弿杩伴潰鏉夸笉鏄剧ず } /// <summary> @@ -56,25 +52,21 @@ public event Action<HydroVisualViewModel> GradingPropertyValueChangedEvent; /// <summary> - /// 娴佸悜灞炴�у�兼敼鍙樹簨浠� + /// 姘存祦鍔ㄧ敾灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<HydroVisualViewModel> FlowDirectionPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> FlowEffectPropertyValueChangedEvent; /// <summary> - /// 寮鸿皟杩炴帴缁勪欢浜嬩欢 + /// 寮鸿皟杩炴帴鑺傜偣浜嬩欢 /// 绗竴涓弬鏁颁负鏈韩Code - /// 绗簩涓弬鏁颁负杩炴帴Code + /// 绗簩涓弬鏁颁负杩炴帴鑺傜偣Code /// </summary> - public event Action<string, string> BlinkLinkParterEvent; + public event Action<HydroLinkViewModel, string> BlinkLinkNodeEvent; /// <summary> /// 鏌ョ湅鏋勪欢浜嬩欢 /// </summary> public event Action<HydroVisualViewModel> HydroViewEvent; - - - - /// <summary> @@ -94,8 +86,6 @@ this.propertyGridControl1.SelectedObject = value; } } - - /// <summary> /// 閲嶆柊浠庢暟鎹簮涓鍙栨暟鎹紝澶栬鎭㈠鍒氬紑濮嬪姞杞界殑鏍峰瓙 @@ -573,7 +563,8 @@ buttonEdit.ButtonClick += delegate { var vm = GetPropertyViewModel(e.Row); - this.BlinkLinkParterEvent?.Invoke(vm.Code, e.Row.Properties.Value.ToString()); + var vmLink = vm as HydroLinkViewModel; + this.BlinkLinkNodeEvent?.Invoke(vmLink, e.Row.Properties.Value.ToString()); }; e.RepositoryItem = buttonEdit; } @@ -617,7 +608,7 @@ var hydroFlowDirectionPropAttri = descriptor.Attributes[typeof(HydroFlowDirectionProAttribute)]; if (hydroFlowDirectionPropAttri != null) { - this.FlowDirectionPropertyValueChangedEvent?.Invoke(vm); + this.FlowEffectPropertyValueChangedEvent?.Invoke(vm); } } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.resx index 1aed3b8..3a55373 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.resx +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.resx @@ -120,69 +120,10 @@ <metadata name="svgImg16.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>152, 17</value> </metadata> - <metadata name="svgImg16.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> - <value>152, 17</value> - </metadata> <metadata name="barManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>17, 17</value> </metadata> <assembly alias="DevExpress.Data.v23.2" name="DevExpress.Data.v23.2, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> - <data name="barBtnHelp.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABsDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQWJvdXQiPg0KICAgIDxwYXRoIGQ9 - Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYs - MnogTTE2LDZjMS4xLDAsMiwwLjksMiwycy0wLjksMi0yLDJzLTItMC45LTItMiAgIFMxNC45LDYsMTYs - NnogTTIwLDI0aC04di0yaDJ2LThoLTJ2LTJoMmg0djEwaDJWMjR6IiBjbGFzcz0iQmx1ZSIgLz4NCiAg - PC9nPg0KPC9zdmc+Cw== -</value> - </data> - <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> - <data name="resource.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACR0RVh0VGl0 - bGUAQ29tbWVudDtUb29sdGlwO0hpbnQ7VGlwO0Nsb3Vk08HbyQAAAm9JREFUOE91k0lMU1EUhm8QJ6xY - QIWlW4kL3GAoGIIaF7rRDQsFBUUKBLFaQIK0FlocVpo40DQyU1rKIIQhYNR0oVgtpWUSlCJpcGhNQMRo - dPV77nsPUkBv8uX/z7nn/vct3mW0QohQYqPEJmKzxBZiKxEmsY2QSfC9EFbR4rEb2kZhaB2TGCGoto1A - T17PtWUEFTYPaBblLW6UW90orXs5SAFhTGN2w7P0B57vIm6JYc6iiCuIIcL57TdKGpyggB2sqNYJFzXa - ZxZFvBLB9Zq+/ctPqEyDPCCC5T14AUfgF5omFiTmBTWPB9fzUk2etN+3hAt37TwgiqXdfornvh8wDQeQ - VeNC3JVOQVf7oRVvcgVge7uAVH0fD9jJUvUD6KTkW8/moCjpwdxnPw5d7/+vNzzxwTjox4mybh6wi53U - 9sLi/opr3bM4/dCBg5o+nDU5kW58LfgM7qtEn258g9LuD7hj/4RjxY95wG52vKQL1a/8KOzwQtszi8oB - n6CcG3Sbtpc8UUleQ8rnKvt9OHK5lQdEs6PqDtyzf0SB9Z2IbWrFX1zRKcEv12VdM0jOt/KAGJZSYMNN - urWYkovbvLjaMY0iUj6Y2zQpoGwUtcAyhcLWaaht76HIMYtfkJBVa0/KtSAppxmJHGUzEpRmpKgsUNZN - 4lzdBDGG7PpxJKusiD/fKLD/1H0HBcgJ4V8Pl4oIIpKICd+XaTysbkdm9SgyCEVOA7bHptfQ3h6+T/D5 - UKbT6dZBiz8wefSBS6bE/GbEZ9dDtjftEfWiiA2rZoOLYKSQSHmcskoWe8b4r8PC3NpGMPwAsfyU1x3W - 6XTsLy5SM69xQkG9AAAAAElFTkSuQmCC -</value> - </data> - <data name="resource.Image1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACR0RVh0VGl0 - bGUAQ29tbWVudDtUb29sdGlwO0hpbnQ7VGlwO0Nsb3Vk08HbyQAAAm9JREFUOE91k0lMU1EUhm8QJ6xY - QIWlW4kL3GAoGIIaF7rRDQsFBUUKBLFaQIK0FlocVpo40DQyU1rKIIQhYNR0oVgtpWUSlCJpcGhNQMRo - dPV77nsPUkBv8uX/z7nn/vct3mW0QohQYqPEJmKzxBZiKxEmsY2QSfC9EFbR4rEb2kZhaB2TGCGoto1A - T17PtWUEFTYPaBblLW6UW90orXs5SAFhTGN2w7P0B57vIm6JYc6iiCuIIcL57TdKGpyggB2sqNYJFzXa - ZxZFvBLB9Zq+/ctPqEyDPCCC5T14AUfgF5omFiTmBTWPB9fzUk2etN+3hAt37TwgiqXdfornvh8wDQeQ - VeNC3JVOQVf7oRVvcgVge7uAVH0fD9jJUvUD6KTkW8/moCjpwdxnPw5d7/+vNzzxwTjox4mybh6wi53U - 9sLi/opr3bM4/dCBg5o+nDU5kW58LfgM7qtEn258g9LuD7hj/4RjxY95wG52vKQL1a/8KOzwQtszi8oB - n6CcG3Sbtpc8UUleQ8rnKvt9OHK5lQdEs6PqDtyzf0SB9Z2IbWrFX1zRKcEv12VdM0jOt/KAGJZSYMNN - urWYkovbvLjaMY0iUj6Y2zQpoGwUtcAyhcLWaaht76HIMYtfkJBVa0/KtSAppxmJHGUzEpRmpKgsUNZN - 4lzdBDGG7PpxJKusiD/fKLD/1H0HBcgJ4V8Pl4oIIpKICd+XaTysbkdm9SgyCEVOA7bHptfQ3h6+T/D5 - UKbT6dZBiz8wefSBS6bE/GbEZ9dDtjftEfWiiA2rZoOLYKSQSHmcskoWe8b4r8PC3NpGMPwAsfyU1x3W - 6XTsLy5SM69xQkG9AAAAAElFTkSuQmCC -</value> - </data> <data name="barBtnExpandAll.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 @@ -252,4 +193,60 @@ dWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> + <data name="barBtnHelp.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABsDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD + MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw + MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu + bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQWJvdXQiPg0KICAgIDxwYXRoIGQ9 + Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYs + MnogTTE2LDZjMS4xLDAsMiwwLjksMiwycy0wLjksMi0yLDJzLTItMC45LTItMiAgIFMxNC45LDYsMTYs + NnogTTIwLDI0aC04di0yaDJ2LThoLTJ2LTJoMmg0djEwaDJWMjR6IiBjbGFzcz0iQmx1ZSIgLz4NCiAg + PC9nPg0KPC9zdmc+Cw== +</value> + </data> + <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="resource.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACR0RVh0VGl0 + bGUAQ29tbWVudDtUb29sdGlwO0hpbnQ7VGlwO0Nsb3Vk08HbyQAAAm9JREFUOE91k0lMU1EUhm8QJ6xY + QIWlW4kL3GAoGIIaF7rRDQsFBUUKBLFaQIK0FlocVpo40DQyU1rKIIQhYNR0oVgtpWUSlCJpcGhNQMRo + dPV77nsPUkBv8uX/z7nn/vct3mW0QohQYqPEJmKzxBZiKxEmsY2QSfC9EFbR4rEb2kZhaB2TGCGoto1A + T17PtWUEFTYPaBblLW6UW90orXs5SAFhTGN2w7P0B57vIm6JYc6iiCuIIcL57TdKGpyggB2sqNYJFzXa + ZxZFvBLB9Zq+/ctPqEyDPCCC5T14AUfgF5omFiTmBTWPB9fzUk2etN+3hAt37TwgiqXdfornvh8wDQeQ + VeNC3JVOQVf7oRVvcgVge7uAVH0fD9jJUvUD6KTkW8/moCjpwdxnPw5d7/+vNzzxwTjox4mybh6wi53U + 9sLi/opr3bM4/dCBg5o+nDU5kW58LfgM7qtEn258g9LuD7hj/4RjxY95wG52vKQL1a/8KOzwQtszi8oB + n6CcG3Sbtpc8UUleQ8rnKvt9OHK5lQdEs6PqDtyzf0SB9Z2IbWrFX1zRKcEv12VdM0jOt/KAGJZSYMNN + urWYkovbvLjaMY0iUj6Y2zQpoGwUtcAyhcLWaaht76HIMYtfkJBVa0/KtSAppxmJHGUzEpRmpKgsUNZN + 4lzdBDGG7PpxJKusiD/fKLD/1H0HBcgJ4V8Pl4oIIpKICd+XaTysbkdm9SgyCEVOA7bHptfQ3h6+T/D5 + UKbT6dZBiz8wefSBS6bE/GbEZ9dDtjftEfWiiA2rZoOLYKSQSHmcskoWe8b4r8PC3NpGMPwAsfyU1x3W + 6XTsLy5SM69xQkG9AAAAAElFTkSuQmCC +</value> + </data> + <data name="resource.Image1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACR0RVh0VGl0 + bGUAQ29tbWVudDtUb29sdGlwO0hpbnQ7VGlwO0Nsb3Vk08HbyQAAAm9JREFUOE91k0lMU1EUhm8QJ6xY + QIWlW4kL3GAoGIIaF7rRDQsFBUUKBLFaQIK0FlocVpo40DQyU1rKIIQhYNR0oVgtpWUSlCJpcGhNQMRo + dPV77nsPUkBv8uX/z7nn/vct3mW0QohQYqPEJmKzxBZiKxEmsY2QSfC9EFbR4rEb2kZhaB2TGCGoto1A + T17PtWUEFTYPaBblLW6UW90orXs5SAFhTGN2w7P0B57vIm6JYc6iiCuIIcL57TdKGpyggB2sqNYJFzXa + ZxZFvBLB9Zq+/ctPqEyDPCCC5T14AUfgF5omFiTmBTWPB9fzUk2etN+3hAt37TwgiqXdfornvh8wDQeQ + VeNC3JVOQVf7oRVvcgVge7uAVH0fD9jJUvUD6KTkW8/moCjpwdxnPw5d7/+vNzzxwTjox4mybh6wi53U + 9sLi/opr3bM4/dCBg5o+nDU5kW58LfgM7qtEn258g9LuD7hj/4RjxY95wG52vKQL1a/8KOzwQtszi8oB + n6CcG3Sbtpc8UUleQ8rnKvt9OHK5lQdEs6PqDtyzf0SB9Z2IbWrFX1zRKcEv12VdM0jOt/KAGJZSYMNN + urWYkovbvLjaMY0iUj6Y2zQpoGwUtcAyhcLWaaht76HIMYtfkJBVa0/KtSAppxmJHGUzEpRmpKgsUNZN + 4lzdBDGG7PpxJKusiD/fKLD/1H0HBcgJ4V8Pl4oIIpKICd+XaTysbkdm9SgyCEVOA7bHptfQ3h6+T/D5 + UKbT6dZBiz8wefSBS6bE/GbEZ9dDtjftEfWiiA2rZoOLYKSQSHmcskoWe8b4r8PC3NpGMPwAsfyU1x3W + 6XTsLy5SM69xQkG9AAAAAElFTkSuQmCC +</value> + </data> </root> \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyDescriptionCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyDescriptionCtrl.cs index dd923d6..2af9527 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyDescriptionCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyDescriptionCtrl.cs @@ -1,15 +1,4 @@ -锘縰sing DevExpress.XtraEditors; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace Yw.WinFrmUI +锘縩amespace Yw.WinFrmUI { public partial class HydroVisualPropertyDescriptionCtrl : DevExpress.XtraEditors.XtraUserControl { diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingViewModel.cs new file mode 100644 index 0000000..ad7f8b8 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingViewModel.cs @@ -0,0 +1,9 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// + /// </summary> + public class HydroWorkingViewModel + { + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingBottomCtrl.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingBottomCtrl.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingCtrl.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingCtrl.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingDlg.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingDlg.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingViewModel.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/SetHydroWorkingViewModel.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/04-set/SetHydroWorkingViewModel.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.Designer.cs new file mode 100644 index 0000000..d88f210 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.Designer.cs @@ -0,0 +1,302 @@ +锘縰sing DevExpress.Utils; +using DevExpress.XtraEditors; +using DevExpress.XtraLayout; +using DevExpress.XtraTreeList; +using DevExpress.XtraTreeList.Columns; + +namespace Yw.WinFrmUI +{ + partial class HydroWorkingTreeCtrl + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + components = new Container(); + ComponentResourceManager resources = new ComponentResourceManager(typeof(HydroWorkingTreeCtrl)); + DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions(); + SerializableAppearanceObject serializableAppearanceObject1 = new SerializableAppearanceObject(); + SerializableAppearanceObject serializableAppearanceObject2 = new SerializableAppearanceObject(); + SerializableAppearanceObject serializableAppearanceObject3 = new SerializableAppearanceObject(); + SerializableAppearanceObject serializableAppearanceObject4 = new SerializableAppearanceObject(); + layoutControl1 = new LayoutControl(); + treeList1 = new TreeList(); + colName = new TreeListColumn(); + barManager1 = new DevExpress.XtraBars.BarManager(components); + bar1 = new DevExpress.XtraBars.Bar(); + barBtnExpandAll = new DevExpress.XtraBars.BarButtonItem(); + barBtnCollpseAll = new DevExpress.XtraBars.BarButtonItem(); + barBtnSearchBox = new DevExpress.XtraBars.BarButtonItem(); + barCkTreeLine = new DevExpress.XtraBars.BarCheckItem(); + barDockControlTop = new DevExpress.XtraBars.BarDockControl(); + barDockControlBottom = new DevExpress.XtraBars.BarDockControl(); + barDockControlLeft = new DevExpress.XtraBars.BarDockControl(); + barDockControlRight = new DevExpress.XtraBars.BarDockControl(); + repositoryItemButtonEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit(); + searchControl1 = new SearchControl(); + Root = new LayoutControlGroup(); + layoutControlItem1 = new LayoutControlItem(); + layoutControlItem2 = new LayoutControlItem(); + ((ISupportInitialize)layoutControl1).BeginInit(); + layoutControl1.SuspendLayout(); + ((ISupportInitialize)treeList1).BeginInit(); + ((ISupportInitialize)barManager1).BeginInit(); + ((ISupportInitialize)repositoryItemButtonEdit1).BeginInit(); + ((ISupportInitialize)searchControl1.Properties).BeginInit(); + ((ISupportInitialize)Root).BeginInit(); + ((ISupportInitialize)layoutControlItem1).BeginInit(); + ((ISupportInitialize)layoutControlItem2).BeginInit(); + SuspendLayout(); + // + // layoutControl1 + // + layoutControl1.Controls.Add(treeList1); + layoutControl1.Controls.Add(searchControl1); + layoutControl1.Dock = DockStyle.Fill; + layoutControl1.Location = new Point(0, 24); + layoutControl1.Name = "layoutControl1"; + layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new Rectangle(539, 371, 650, 400); + layoutControl1.Root = Root; + layoutControl1.Size = new Size(235, 636); + layoutControl1.TabIndex = 0; + layoutControl1.Text = "layoutControl1"; + // + // treeList1 + // + treeList1.Columns.AddRange(new TreeListColumn[] { colName }); + treeList1.KeyFieldName = "Id"; + treeList1.Location = new Point(0, 24); + treeList1.MenuManager = barManager1; + treeList1.Name = "treeList1"; + treeList1.OptionsMenu.EnableNodeMenu = false; + treeList1.OptionsSelection.EnableAppearanceFocusedCell = false; + treeList1.OptionsView.FocusRectStyle = DevExpress.XtraTreeList.DrawFocusRectStyle.None; + treeList1.ParentFieldName = "ParentId"; + treeList1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] { repositoryItemButtonEdit1 }); + treeList1.Size = new Size(235, 611); + treeList1.TabIndex = 5; + treeList1.TreeViewColumn = colName; + treeList1.ViewStyle = TreeListViewStyle.TreeView; + treeList1.FocusedNodeChanged += treeList1_FocusedNodeChanged; + // + // colName + // + colName.Caption = "鍚嶇О"; + colName.FieldName = "Name"; + colName.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("colName.ImageOptions.SvgImage"); + colName.Name = "colName"; + colName.Visible = true; + colName.VisibleIndex = 0; + colName.Width = 172; + // + // barManager1 + // + barManager1.Bars.AddRange(new DevExpress.XtraBars.Bar[] { bar1 }); + barManager1.DockControls.Add(barDockControlTop); + barManager1.DockControls.Add(barDockControlBottom); + barManager1.DockControls.Add(barDockControlLeft); + barManager1.DockControls.Add(barDockControlRight); + barManager1.Form = this; + barManager1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { barBtnExpandAll, barBtnCollpseAll, barBtnSearchBox, barCkTreeLine }); + barManager1.MaxItemId = 6; + // + // bar1 + // + bar1.BarName = "Custom 1"; + bar1.CanDockStyle = DevExpress.XtraBars.BarCanDockStyle.Top; + bar1.DockCol = 0; + bar1.DockRow = 0; + bar1.DockStyle = DevExpress.XtraBars.BarDockStyle.Top; + bar1.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] { new DevExpress.XtraBars.LinkPersistInfo(barBtnExpandAll), new DevExpress.XtraBars.LinkPersistInfo(barBtnCollpseAll), new DevExpress.XtraBars.LinkPersistInfo(barBtnSearchBox), new DevExpress.XtraBars.LinkPersistInfo(barCkTreeLine) }); + bar1.OptionsBar.AllowQuickCustomization = false; + bar1.OptionsBar.DrawDragBorder = false; + bar1.OptionsBar.MultiLine = true; + bar1.OptionsBar.UseWholeRow = true; + bar1.Text = "Custom 1"; + // + // barBtnExpandAll + // + barBtnExpandAll.Caption = "灞曞紑"; + barBtnExpandAll.Id = 0; + barBtnExpandAll.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnExpandAll.ImageOptions.SvgImage"); + barBtnExpandAll.Name = "barBtnExpandAll"; + barBtnExpandAll.ItemClick += barBtnExpandAll_ItemClick; + // + // barBtnCollpseAll + // + barBtnCollpseAll.Caption = "鎶樺彔"; + barBtnCollpseAll.Id = 1; + barBtnCollpseAll.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnCollpseAll.ImageOptions.SvgImage"); + barBtnCollpseAll.Name = "barBtnCollpseAll"; + barBtnCollpseAll.ItemClick += barBtnCollpseAll_ItemClick; + // + // barBtnSearchBox + // + barBtnSearchBox.Caption = "鎼滅储"; + barBtnSearchBox.Id = 2; + barBtnSearchBox.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSearchBox.ImageOptions.SvgImage"); + barBtnSearchBox.Name = "barBtnSearchBox"; + barBtnSearchBox.ItemClick += barBtnSearch_ItemClick; + // + // barCkTreeLine + // + barCkTreeLine.Caption = "鏍戠嚎"; + barCkTreeLine.Id = 4; + barCkTreeLine.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barCkTreeLine.ImageOptions.SvgImage"); + barCkTreeLine.Name = "barCkTreeLine"; + barCkTreeLine.CheckedChanged += barCkTreeLine_CheckedChanged; + // + // barDockControlTop + // + barDockControlTop.CausesValidation = false; + barDockControlTop.Dock = DockStyle.Top; + barDockControlTop.Location = new Point(0, 0); + barDockControlTop.Manager = barManager1; + barDockControlTop.Size = new Size(235, 24); + // + // barDockControlBottom + // + barDockControlBottom.CausesValidation = false; + barDockControlBottom.Dock = DockStyle.Bottom; + barDockControlBottom.Location = new Point(0, 660); + barDockControlBottom.Manager = barManager1; + barDockControlBottom.Size = new Size(235, 0); + // + // barDockControlLeft + // + barDockControlLeft.CausesValidation = false; + barDockControlLeft.Dock = DockStyle.Left; + barDockControlLeft.Location = new Point(0, 24); + barDockControlLeft.Manager = barManager1; + barDockControlLeft.Size = new Size(0, 636); + // + // barDockControlRight + // + barDockControlRight.CausesValidation = false; + barDockControlRight.Dock = DockStyle.Right; + barDockControlRight.Location = new Point(235, 24); + barDockControlRight.Manager = barManager1; + barDockControlRight.Size = new Size(0, 636); + // + // repositoryItemButtonEdit1 + // + repositoryItemButtonEdit1.AutoHeight = false; + editorButtonImageOptions1.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("editorButtonImageOptions1.SvgImage"); + editorButtonImageOptions1.SvgImageSize = new Size(20, 20); + repositoryItemButtonEdit1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, true, true, false, editorButtonImageOptions1, new KeyShortcut(Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "", null, null, ToolTipAnchor.Default) }); + repositoryItemButtonEdit1.Name = "repositoryItemButtonEdit1"; + repositoryItemButtonEdit1.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor; + // + // searchControl1 + // + searchControl1.Client = treeList1; + searchControl1.Location = new Point(0, 2); + searchControl1.MenuManager = barManager1; + searchControl1.Name = "searchControl1"; + searchControl1.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { new DevExpress.XtraEditors.Repository.ClearButton(), new DevExpress.XtraEditors.Repository.SearchButton() }); + searchControl1.Properties.Client = treeList1; + searchControl1.Size = new Size(235, 20); + searchControl1.StyleController = layoutControl1; + searchControl1.TabIndex = 4; + // + // Root + // + Root.EnableIndentsWithoutBorders = DefaultBoolean.True; + Root.GroupBordersVisible = false; + Root.Items.AddRange(new BaseLayoutItem[] { layoutControlItem1, layoutControlItem2 }); + Root.Name = "Root"; + Root.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + Root.Size = new Size(235, 636); + Root.TextVisible = false; + // + // layoutControlItem1 + // + layoutControlItem1.Control = searchControl1; + layoutControlItem1.Location = new Point(0, 0); + layoutControlItem1.Name = "layoutControlItem1"; + layoutControlItem1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 2, 1); + layoutControlItem1.Size = new Size(235, 23); + layoutControlItem1.TextSize = new Size(0, 0); + layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + layoutControlItem2.Control = treeList1; + layoutControlItem2.Location = new Point(0, 23); + layoutControlItem2.Name = "layoutControlItem2"; + layoutControlItem2.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 1, 1); + layoutControlItem2.Size = new Size(235, 613); + layoutControlItem2.TextSize = new Size(0, 0); + layoutControlItem2.TextVisible = false; + // + // SimpleTreeViewCtrl + // + AutoScaleDimensions = new SizeF(7F, 14F); + AutoScaleMode = AutoScaleMode.Font; + Controls.Add(layoutControl1); + Controls.Add(barDockControlLeft); + Controls.Add(barDockControlRight); + Controls.Add(barDockControlBottom); + Controls.Add(barDockControlTop); + Name = "SimpleTreeViewCtrl"; + Size = new Size(235, 660); + ((ISupportInitialize)layoutControl1).EndInit(); + layoutControl1.ResumeLayout(false); + ((ISupportInitialize)treeList1).EndInit(); + ((ISupportInitialize)barManager1).EndInit(); + ((ISupportInitialize)repositoryItemButtonEdit1).EndInit(); + ((ISupportInitialize)searchControl1.Properties).EndInit(); + ((ISupportInitialize)Root).EndInit(); + ((ISupportInitialize)layoutControlItem1).EndInit(); + ((ISupportInitialize)layoutControlItem2).EndInit(); + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private DevExpress.XtraBars.BarManager barManager1; + private DevExpress.XtraBars.Bar bar1; + private DevExpress.XtraBars.BarButtonItem barBtnExpandAll; + private DevExpress.XtraBars.BarDockControl barDockControlTop; + private DevExpress.XtraBars.BarDockControl barDockControlBottom; + private DevExpress.XtraBars.BarDockControl barDockControlLeft; + private DevExpress.XtraBars.BarDockControl barDockControlRight; + private DevExpress.XtraEditors.SearchControl searchControl1; + private DevExpress.XtraBars.BarButtonItem barBtnCollpseAll; + private DevExpress.XtraBars.BarButtonItem barBtnSearchBox; + private DevExpress.XtraBars.BarCheckItem barCkTreeLine; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraTreeList.TreeList treeList1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraTreeList.Columns.TreeListColumn colName; + private DevExpress.XtraEditors.SimpleButton btnImportProject; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraBars.BarButtonItem barBtnRefresh; + private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit repositoryItemButtonEdit1; + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.cs new file mode 100644 index 0000000..b48511b --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.cs @@ -0,0 +1,148 @@ +锘縰sing DevExpress.Utils; +using DevExpress.Utils.Design; +using DevExpress.Utils.Extensions; + +namespace Yw.WinFrmUI +{ + public partial class HydroWorkingTreeCtrl : DevExpress.XtraEditors.XtraUserControl + { + /// <summary> + /// + /// </summary> + public HydroWorkingTreeCtrl() + { + InitializeComponent(); + this.treeList1.InitialDefaultSettings(); + this.layoutControl1.SetupLayoutControl(); + } + + /// <summary> + /// 鑱氱劍鏀瑰彉浜嬩欢 + /// </summary> + public event Action<SimpleTreeViewModel> FocusedChangedEvent; + + /// <summary> + /// 鎵�鏈夌粦瀹氬垪琛� + /// </summary> + private List<SimpleTreeViewModel> _allBindingList = null; + + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(List<SimpleTreeViewModel> allList) + { + _allBindingList = new List<SimpleTreeViewModel>(); + allList?.ForEach(x => + { + _allBindingList.Add(x); + }); + this.treeList1.DataSource = _allBindingList; + this.treeList1.ForceInitialize(); + } + + /// <summary> + /// 鍏ㄩ儴灞曞紑 + /// </summary> + public void ExpandAll() + { + this.treeList1.ExpandAll(); + } + + /// <summary> + /// 鍏ㄩ儴鎶樺彔 + /// </summary> + public void CollapseAll() + { + this.treeList1.CollapseAll(); + } + + /// <summary> + /// 鏄剧ず鏍戠嚎 + /// </summary> + public bool ShowTreeLines + { + get { return this.barCkTreeLine.Checked; } + set { this.barCkTreeLine.Checked = value; } + } + + /// <summary> + /// 鏄剧ず鎼滅储妗� + /// </summary> + public void ShowSearchControl() + { + this.layoutControlItem1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; + } + + /// <summary> + /// 鍏抽棴鎼滅储妗� + /// </summary> + public void CloseSearchControl() + { + this.layoutControlItem1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + } + + /// <summary> + /// 閫夋嫨鍥剧墖鍒楄〃 + /// </summary> + [DefaultValue(null)] + [TypeConverter(typeof(ImageCollectionImagesConverter))] + public object SelectImageList + { + get + { + return this.treeList1.SelectImageList; + } + set + { + this.treeList1.SelectImageList = value; + } + } + + /// <summary> + /// 宸ュ叿鏉″彲瑙佹�� + /// </summary> + public bool ToolBarVisible + { + get { return this.bar1.Visible; } + set { this.bar1.Visible = value; } + } + + + //鍏ㄩ儴灞曞紑 + private void barBtnExpandAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + this.treeList1.ExpandAll(); + } + + //鍏ㄩ儴鎶樺彔 + private void barBtnCollpseAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + this.treeList1.CollapseAll(); + } + + //妫�绱紙menu锛� + private void barBtnSearch_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + if (this.layoutControlItem1.Visibility == DevExpress.XtraLayout.Utils.LayoutVisibility.Always) + this.layoutControlItem1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + else + this.layoutControlItem1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; + } + + //鏍戠嚎 + private void barCkTreeLine_CheckedChanged(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + this.treeList1.OptionsView.ShowTreeLines = this.barCkTreeLine.Checked ? DefaultBoolean.True : DefaultBoolean.False; + } + + //鑱氱劍鑺傜偣鏀瑰彉 + private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e) + { + var vm = this.treeList1.GetDataRecordByNode(e.Node) as SimpleTreeViewModel; + this.FocusedChangedEvent?.Invoke(vm); + } + + + + } +} \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.resx new file mode 100644 index 0000000..13c9ad4 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.resx @@ -0,0 +1,239 @@ +锘�<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <assembly alias="DevExpress.Data.v23.2" name="DevExpress.Data.v23.2, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> + <data name="colName.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOMCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTmV3VGFibGVTdHlsZSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5l + dyAwIDAgMzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3 + O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJLnN0MHtvcGFj + aXR5OjAuNTt9Cjwvc3R5bGU+DQogIDxnIGNsYXNzPSJzdDAiPg0KICAgIDxwYXRoIGQ9Ik0wLDIwaDh2 + NkgwVjIweiBNMTAsMjZoOHYtNmgtOFYyNnogTTIwLDEydjZoOHYtNkgyMHogTTIwLDI2aDh2LTZoLThW + MjZ6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCiAgPHBhdGggZD0iTTAsNGg4djZIMFY0eiBNMCwx + OGg4di02SDBWMTh6IE0xMCwxMGg4VjRoLThWMTB6IE0xMCwxOGg4di02aC04VjE4eiIgY2xhc3M9IkJs + dWUiIC8+DQogIDxwb2x5Z29uIHBvaW50cz0iMjUsMiAyNywwIDI3LDMgMzAsMyAyOCw1IDMwLDcgMjcs + NyAyNywxMCAyNSw4IDIzLDEwIDIzLDcgMjAsNyAyMiw1IDIwLDMgMjMsMyAyMywwICIgY2xhc3M9Illl + bGxvdyIgLz4NCjwvc3ZnPgs= +</value> + </data> + <metadata name="barManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> + <data name="barBtnExpandAll.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALACAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iRXhwYW5kX0ZpZWxkIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3 + IDAgMCAzMiAzMiI+DQogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuQmxhY2t7ZmlsbDojNzI3Mjcy + O30KCS5HcmVlbntmaWxsOiMwMzlDMjM7fQoJLnN0MHtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8 + cG9seWdvbiBwb2ludHM9IjE0LDYgMTAsNiAxMCwyIDYsMiA2LDYgMiw2IDIsMTAgNiwxMCA2LDE0IDEw + LDE0IDEwLDEwIDE0LDEwICIgY2xhc3M9IkdyZWVuIiAvPg0KICA8ZyBjbGFzcz0ic3QwIj4NCiAgICA8 + cGF0aCBkPSJNMjIsNmgxMHYySDIyVjZ6IE0yMiwxMmgxMHYtMkgyMlYxMnogTTIyLDIwaDEwdi0ySDIy + VjIweiBNMjIsMjRoMTB2LTJIMjJWMjR6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCiAgPHBhdGgg + ZD0iTTE4LDJoMTR2MkgxOFYyeiBNMTgsMTZoMTR2LTJIMThWMTZ6IE0xOCwyOGgxNHYtMkgxOFYyOHoi + IGNsYXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs= +</value> + </data> + <data name="barBtnCollpseAll.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIcCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iQ29sbGFwc2VfRmllbGQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpu + ZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5CbGFja3tmaWxsOiM3Mjcy + NzI7fQoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLnN0MHtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8 + cmVjdCB4PSIyIiB5PSI2IiB3aWR0aD0iMTIiIGhlaWdodD0iNCIgY2xhc3M9IlJlZCIgLz4NCiAgPGcg + Y2xhc3M9InN0MCI+DQogICAgPHBhdGggZD0iTTIyLDZoMTB2MkgyMlY2eiBNMjIsMTJoMTB2LTJIMjJW + MTJ6IE0yMiwyMGgxMHYtMkgyMlYyMHogTTIyLDI0aDEwdi0ySDIyVjI0eiIgY2xhc3M9IkJsYWNrIiAv + Pg0KICA8L2c+DQogIDxwYXRoIGQ9Ik0xOCwyaDE0djJIMThWMnogTTE4LDE2aDE0di0ySDE4VjE2eiBN + MTgsMjhoMTR2LTJIMThWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQo8L3N2Zz4L +</value> + </data> + <data name="barBtnSearchBox.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANoCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z + ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz + OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp + dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9Ilpvb20iPg0KICAgIDxwYXRoIGQ9Ik0yNy43LDI1LjNM + MjAuNSwxOGMxLTEuNCwxLjUtMy4yLDEuNS01YzAtNS00LTktOS05cy05LDQtOSw5YzAsNSw0LDksOSw5 + YzEuOSwwLDMuNi0wLjYsNS0xLjVsNy4zLDcuMyAgIGMwLjMsMC4zLDAuOSwwLjMsMS4yLDBsMS4yLTEu + MkMyOC4xLDI2LjIsMjguMSwyNS42LDI3LjcsMjUuM3ogTTYsMTNjMC0zLjksMy4xLTcsNy03czcsMy4x + LDcsN2MwLDMuOS0zLjEsNy03LDdTNiwxNi45LDYsMTN6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4N + Cjwvc3ZnPgs= +</value> + </data> + <data name="barCkTreeLine.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIkDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku + QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC + MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSW5zZXJ0VHJl + ZVZpZXciPg0KICAgIDxwYXRoIGQ9Ik0xMyw4SDVDNC40LDgsNCw3LjYsNCw3VjNjMC0wLjUsMC40LTEs + MS0xaDhjMC42LDAsMSwwLjUsMSwxdjRDMTQsNy42LDEzLjYsOCwxMyw4eiBNMjYsMTd2LTQgICBjMC0w + LjYtMC41LTEtMS0xaC04Yy0wLjUsMC0xLDAuNC0xLDF2NGMwLDAuNSwwLjUsMSwxLDFoOEMyNS41LDE4 + LDI2LDE3LjUsMjYsMTd6IE0yNiwyN3YtNGMwLTAuNS0wLjUtMS0xLTFoLThjLTAuNSwwLTEsMC41LTEs + MSAgIHY0YzAsMC41LDAuNSwxLDEsMWg4QzI1LjUsMjgsMjYsMjcuNSwyNiwyN3oiIGNsYXNzPSJZZWxs + b3ciIC8+DQogICAgPHBvbHlnb24gcG9pbnRzPSIxNCwxNiAxNCwxNCAxMCwxNCAxMCwxMCA4LDEwIDgs + MjYgMTQsMjYgMTQsMjQgMTAsMjQgMTAsMTYgICIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2 + Zz4L +</value> + </data> + <data name="editorButtonImageOptions1.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAK4BAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXIxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAz + MiAzMiI+DQogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkJLkJsdWUKCQl7CgkJCWZpbGw6IzExNzdE + NzsgCgkJCWZvbnQtZmFtaWx5OidkeC1mb250LWljb25zJzsgCgkJCWZvbnQtc2l6ZTozMnB4OwoJCX0K + CTwvc3R5bGU+DQogIDx0ZXh0IHg9IjBweCIgeT0iMzJweCIgY2xhc3M9IkJsdWUiPu6drDwvdGV4dD4N + Cjwvc3ZnPgs= +</value> + </data> +</root> \ No newline at end of file diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeViewModel.cs new file mode 100644 index 0000000..b25b2c5 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeViewModel.cs @@ -0,0 +1,52 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// + /// </summary> + public class HydroWorkingTreeViewModel + { + + /// <summary> + /// Id + /// </summary> + public string Id { get; set; } + + /// <summary> + /// 鐖剁骇id + /// </summary> + public string ParentId { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// 鍥剧墖绱㈠紩 + /// </summary> + public int ImageIndex { get; set; } + + /// <summary> + /// 閫夋嫨 + /// </summary> + public bool Checked { get; set; } + + /// <summary> + /// 鎺掑簭鐮� + /// </summary> + public int SortCode { get; set; } + + /// <summary> + /// 璇存槑 + /// </summary> + public string Description { get; set; } + + /// <summary> + /// + /// </summary> + public HydroWorkingVmo Vmo { get; set; } + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedCtrl.cs index bd35689..8972730 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedCtrl.cs @@ -30,7 +30,23 @@ this.hydroCalcuFailedViewModelBindingSource.ResetBindings(false); } - + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(List<HydroCalcuFailed> allFailedList) + { + _allBindingList = new List<HydroCalcuFailedViewModel>(); + if (allFailedList != null && allFailedList.Count > 0) + { + foreach (var failed in allFailedList) + { + var vm = new HydroCalcuFailedViewModel(failed); + _allBindingList.Add(vm); + } + } + this.hydroCalcuFailedViewModelBindingSource.DataSource = _allBindingList; + this.hydroCalcuFailedViewModelBindingSource.ResetBindings(false); + } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedViewModel.cs index b53c79a..441a4ce 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-fail/HydroCalcuFailedViewModel.cs @@ -20,6 +20,15 @@ } /// <summary> + /// + /// </summary> + public HydroCalcuFailedViewModel(HydroCalcuFailed rhs) + { + this.Code = rhs.Code; + this.Message = rhs.Message; + } + + /// <summary> /// 閿欒缂栫爜 /// </summary> [Display(Name = "閿欒缂栫爜")] diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingHelper.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingHelper.cs new file mode 100644 index 0000000..584d927 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingHelper.cs @@ -0,0 +1,1312 @@ +锘縰sing Yw.Model; + +namespace Yw.WinFrmUI +{ + /// <summary> + /// 璧勪骇鍖归厤杈呭姪绫� + /// </summary> + public class HydroMatchingHelper + { + + #region 鍒涘缓 + + /// <summary> + /// 鍒涘缓鑷姩鍖归厤ViewModel + /// </summary> + public static HydroMatchingViewModel Create(Yw.Model.HydroModelInfo hydroInfo, List<HydroCalcuVisualResult> allCalcuVisualResultList = null) + { + #region 鍒濆鍖栧瓧鍏� + + Dictionary<string, HydroCalcuVisualResult> dict = null; + if (allCalcuVisualResultList != null && allCalcuVisualResultList.Count > 0) + { + dict = new Dictionary<string, HydroCalcuVisualResult>(); + allCalcuVisualResultList.ForEach(x => dict.Add(x.Code, x)); + } + + #endregion + + #region 鑾峰彇璁$畻缁撴灉鏂规硶 + + HydroCalcuVisualResult getCalcuVisualResult(string code) + { + if (dict == null) + { + return default; + } + if (dict.ContainsKey(code)) + { + return dict[code]; + } + return default; + } + + #endregion + + var vm = new HydroMatchingViewModel(); + + #region 姘存睜 + + var tanks = hydroInfo.GetAllTanks(); + vm.Tanks = tanks?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 闂峰ご + + vm.Bluntheads = hydroInfo.Bluntheads?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 寮ご + + vm.Elbows = hydroInfo.Elbows?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 涓夐�� + + vm.Threelinks = hydroInfo.Threelinks?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 鍥涢�� + + vm.Fourlinks = hydroInfo.Fourlinks?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 鍠峰槾 + + vm.Nozzles = hydroInfo.Nozzles?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 娑堢伀鏍� + + vm.Hydrants = hydroInfo.Hydrants?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 姘磋〃 + + vm.Meters = hydroInfo.Meters?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuNodeResult)).ToList(); + + #endregion + + #region 娴侀噺璁� + + vm.Flowmeters = hydroInfo.Flowmeters?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuFlowmeterResult)).ToList(); + + #endregion + + #region 鍘嬪姏琛� + + vm.Pressmeters = hydroInfo.Pressmeters?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuPressmeterResult)).ToList(); + + #endregion + + #region 绠¢亾 + + vm.Pipes = hydroInfo.Pipes?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuLinkResult)).ToList(); + + #endregion + + #region 杩囨浮浠� + + vm.Translations = hydroInfo.Translations?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuLinkResult)).ToList(); + + #endregion + + #region 姘存车 + + vm.Pumps = hydroInfo.Pumps?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuPumpResult)).ToList(); + + #endregion + + #region 闃�闂� + + vm.Valves = hydroInfo.Valves?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuLinkResult)).ToList(); + + #endregion + + #region 鎹㈢儹鍣� + + vm.Exchangers = hydroInfo.Exchangers?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuLinkResult)).ToList(); + + #endregion + + #region 鍘嬬缉鏈� + + vm.Compressors = hydroInfo.Compressors?.Select(x => Create(x, hydroInfo, getCalcuVisualResult(x.Code) as HydroCalcuLinkResult)).ToList(); + + #endregion + + return vm; + + } + + public static HydroMatchingViewModel Create(List<HydroVisualViewModel> allVisualList) + { + return default; + } + + #region 姘存睜 + + /// <summary> + /// 鍒涘缓姘存睜鑷姩鍖归厤ViewModel + /// </summary> + public static HydroTankMatchingViewModel Create(HydroTankInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroTankMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓姘存睜鑷姩鍖归厤ViewModel + /// </summary> + public static HydroTankMatchingViewModel Create(HydroTankViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroTankMatchingViewModel(parterViewModel); + } + + #endregion + + #region 闂峰ご + + /// <summary> + /// 鍒涘缓闂峰ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroBluntheadMatchingViewModel Create(HydroBluntheadInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroBluntheadMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓闂峰ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroBluntheadMatchingViewModel Create(HydroBluntheadViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroBluntheadMatchingViewModel(parterViewModel); + } + + #endregion + + #region 寮ご + + /// <summary> + /// 鍒涘缓寮ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroElbowMatchingViewModel Create(HydroElbowInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroElbowMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓寮ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroElbowMatchingViewModel Create(HydroElbowViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroElbowMatchingViewModel(parterViewModel); + } + + #endregion + + #region 涓夐�� + + /// <summary> + /// 鍒涘缓涓夐�氳嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroThreelinkMatchingViewModel Create(HydroThreelinkInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroThreelinkMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓涓夐�氳嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroThreelinkMatchingViewModel Create(HydroThreelinkViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroThreelinkMatchingViewModel(parterViewModel); + } + + #endregion + + #region 鍥涢�� + + /// <summary> + /// 鍒涘缓鍥涢�氳嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroFourlinkMatchingViewModel Create(HydroFourlinkInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroFourlinkMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓鍥涢�氳嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroFourlinkMatchingViewModel Create(HydroFourlinkViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroFourlinkMatchingViewModel(parterViewModel); + } + + #endregion + + #region 鍠峰ご + + /// <summary> + /// 鍒涘缓鍠峰ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroNozzleMatchingViewModel Create(HydroNozzleInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroNozzleMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓鍠峰ご鑷姩鍖归厤ViewModel + /// </summary> + public static HydroNozzleMatchingViewModel Create(HydroNozzleViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroNozzleMatchingViewModel(parterViewModel); + } + + #endregion + + #region 娑堢伀鏍� + + /// <summary> + /// 鍒涘缓娑堢伀鏍撹嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroHydrantMatchingViewModel Create(HydroHydrantInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroHydrantMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓娑堢伀鏍撹嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroHydrantMatchingViewModel Create(HydroHydrantViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroHydrantMatchingViewModel(parterViewModel); + } + + #endregion + + #region 姘磋〃 + + /// <summary> + /// 鍒涘缓姘磋〃鑷姩鍖归厤ViewModel + /// </summary> + public static HydroMeterMatchingViewModel Create(HydroMeterInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroMeterMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓姘磋〃鑷姩鍖归厤ViewModel + /// </summary> + public static HydroMeterMatchingViewModel Create(HydroMeterViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroMeterMatchingViewModel(parterViewModel); + } + + #endregion + + #region 娴侀噺璁� + + /// <summary> + /// 鍒涘缓娴侀噺璁¤嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroFlowmeterMatchingViewModel Create(HydroFlowmeterInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuFlowmeterResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroFlowmeterMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓娴侀噺璁¤嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroFlowmeterMatchingViewModel Create(HydroFlowmeterViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroFlowmeterMatchingViewModel(parterViewModel); + } + + #endregion + + #region 鍘嬪姏琛� + + /// <summary> + /// 鍒涘缓鍘嬪姏琛ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroPressmeterMatchingViewModel Create(HydroPressmeterInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuPressmeterResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroPressmeterMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓鍘嬪姏琛ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroPressmeterMatchingViewModel Create(HydroPressmeterViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroPressmeterMatchingViewModel(parterViewModel); + } + + #endregion + + #region 绠¢亾 + + /// <summary> + /// 鍒涘缓绠¢亾鑷姩鍖归厤ViewModel + /// </summary> + public static HydroPipeMatchingViewModel Create(HydroPipeInfo pipeInfo, HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult = null) + { + if (pipeInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroPipeMatchingViewModel(pipeInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓绠¢亾鑷姩鍖归厤ViewModel + /// </summary> + public static HydroPipeMatchingViewModel Create(HydroPipeViewModel pipeViewModel) + { + if (pipeViewModel == null) + { + return default; + } + return new HydroPipeMatchingViewModel(pipeViewModel); + } + + #endregion + + #region 杩囨浮浠� + + /// <summary> + /// 鍒涘缓杩囨浮浠惰嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroTranslationMatchingViewModel Create(HydroTranslationInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroTranslationMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓杩囨浮浠惰嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroTranslationMatchingViewModel Create(HydroTranslationViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroTranslationMatchingViewModel(parterViewModel); + } + + #endregion + + #region 姘存车 + + /// <summary> + /// 鍒涘缓姘存车鑷姩鍖归厤ViewModel + /// </summary> + public static HydroPumpMatchingViewModel Create(HydroPumpInfo pumpInfo, HydroModelInfo hydroInfo, HydroCalcuPumpResult calcuResult = null) + { + if (pumpInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroPumpMatchingViewModel(pumpInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓姘存车鑷姩鍖归厤ViewModel + /// </summary> + public static HydroPumpMatchingViewModel Create(HydroPumpViewModel pumpViewModel) + { + if (pumpViewModel == null) + { + return default; + } + return new HydroPumpMatchingViewModel(pumpViewModel); + } + + #endregion + + #region 闃�闂� + + /// <summary> + /// 鍒涘缓闃�闂ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroValveMatchingViewModel Create(HydroValveInfo valveInfo, HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult = null) + { + if (valveInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroValveMatchingViewModel(valveInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓闃�闂ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroValveMatchingViewModel Create(HydroValveViewModel valveViewModel) + { + if (valveViewModel == null) + { + return default; + } + return new HydroValveMatchingViewModel(valveViewModel); + } + + #endregion + + #region 鎹㈢儹鍣� + + /// <summary> + /// 鍒涘缓鎹㈢儹鍣ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroExchangerMatchingViewModel Create(HydroExchangerInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroExchangerMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓鎹㈢儹鍣ㄨ嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroExchangerMatchingViewModel Create(HydroExchangerViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroExchangerMatchingViewModel(parterViewModel); + } + + #endregion + + #region 鍘嬬缉鏈� + + /// <summary> + /// 鍒涘缓鍘嬬缉鏈鸿嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroCompressorMatchingViewModel Create(HydroCompressorInfo parterInfo, HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult = null) + { + if (parterInfo == null) + { + return default; + } + if (hydroInfo == null) + { + return default; + } + return new HydroCompressorMatchingViewModel(parterInfo, hydroInfo, calcuResult); + } + + /// <summary> + /// 鍒涘缓鍘嬬缉鏈鸿嚜鍔ㄥ尮閰峍iewModel + /// </summary> + public static HydroCompressorMatchingViewModel Create(HydroCompressorViewModel parterViewModel) + { + if (parterViewModel == null) + { + return default; + } + return new HydroCompressorMatchingViewModel(parterViewModel); + } + + #endregion + + #endregion + + #region 搴旂敤 + + ///// <summary> + ///// 搴旂敤璧勪骇鑷姩鍖归厤ViewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, AssetsMatchingViewModel output) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (output == null) + // { + // return false; + // } + + // bool result = false; + + // //姘存车 + // output.PumpMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // //闃�闂� + // output.ValveMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // //绠¢亾 + // output.PipeMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // //寮ご + // output.ElbowMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // //涓夐�� + // output.ThreelinkMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // //鍥涢�� + // output.FourlinkMatchingList?.ForEach(x => + // { + // if (Apply(hydroInfo, x)) + // { + // result = true; + // } + // }); + + // return result; + //} + + ///// <summary> + ///// 搴旂敤娉佃嚜鍔ㄥ尮閰峍iewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, PumpMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var pump = hydroInfo.Pumps?.Find(x => x.Code == matching.Code); + // if (pump != null) + // { + // pump.DbLocked = matching.DbLocked; + // pump.ModelType = matching.ModelType; + // pump.RatedP = matching.RatedP; + // pump.RatedQ = matching.RatedQ; + // pump.RatedH = matching.RatedH; + // pump.RatedN = matching.RatedN; + // pump.RatedHz = matching.RatedHz; + // pump.SpeedRatio = Math.Round(matching.CurrentHz / matching.RatedHz, 1); + + // if (!pump.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // pump.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // pump.DbId = matching.MatchingDbId; + // } + // if (matching.MatchingRatedP.HasValue) + // { + // pump.RatedP = matching.MatchingRatedP.Value; + // } + // if (matching.MatchingRatedQ.HasValue) + // { + // pump.RatedQ = matching.MatchingRatedQ.Value; + // } + // if (matching.MatchingRatedH.HasValue) + // { + // pump.RatedH = matching.MatchingRatedH.Value; + // } + // if (matching.MatchingRatedN.HasValue) + // { + // pump.RatedN = matching.MatchingRatedN.Value; + // } + + // if (!string.IsNullOrEmpty(matching.MatchingCurveDbId)) + // { + // //娴侀噺鎵▼鏇茬嚎 + // var curveqh = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQH); + // if (curveqh == null) + // { + // curveqh = new Yw.Model.HydroCurveInfo(); + // curveqh.Catalog = Yw.Hydro.ParterCatalog.Curve; + // curveqh.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); + // curveqh.Name = "鍖归厤"; + // curveqh.ModelType = string.Empty; + // curveqh.DbLocked = false; + // curveqh.DbId = matching.MatchingCurveDbId; + // curveqh.CurveType = Yw.WinFrmUI.HydroCurve.PumpQH; + // curveqh.CurveData = matching.MatchingCurveQH?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // if (hydroInfo.Curves == null) + // { + // hydroInfo.Curves = new List<Yw.Model.HydroCurveInfo>(); + // } + // hydroInfo.Curves.Add(curveqh); + // pump.CurveQH = curveqh.Code; + // } + // else + // { + // if (!curveqh.DbLocked) + // { + // curveqh.DbId = matching.MatchingCurveDbId; + // curveqh.CurveData = matching.MatchingCurveQH?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // } + // } + + // //娴侀噺鍔熺巼鏇茬嚎 + // var curveqp = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQP); + // if (curveqp == null) + // { + // curveqp = new Yw.Model.HydroCurveInfo(); + // curveqp.Catalog = Yw.Hydro.ParterCatalog.Curve; + // curveqp.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); + // curveqp.Name = "鍖归厤"; + // curveqp.ModelType = string.Empty; + // curveqp.DbLocked = false; + // curveqp.DbId = matching.MatchingCurveDbId; + // curveqp.CurveType = Yw.WinFrmUI.HydroCurve.PumpQP; + // curveqp.CurveData = matching.MatchingCurveQP?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // if (hydroInfo.Curves == null) + // { + // hydroInfo.Curves = new List<Yw.Model.HydroCurveInfo>(); + // } + // hydroInfo.Curves.Add(curveqp); + // pump.CurveQP = curveqp.Code; + // } + // else + // { + // if (!curveqp.DbLocked) + // { + // curveqp.DbId = matching.MatchingCurveDbId; + // curveqp.CurveData = matching.MatchingCurveQP?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // } + // } + + // //娴侀噺鏁堢巼鏇茬嚎 + // var curveqe = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQE); + // if (curveqe == null) + // { + // curveqe = new Yw.Model.HydroCurveInfo(); + // curveqe.Catalog = Yw.Hydro.ParterCatalog.Curve; + // curveqe.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); + // curveqe.Name = "鍖归厤"; + // curveqe.ModelType = string.Empty; + // curveqe.DbLocked = false; + // curveqe.DbId = matching.MatchingCurveDbId; + // curveqe.CurveType = Yw.WinFrmUI.HydroCurve.PumpQE; + // curveqe.CurveData = matching.MatchingCurveQE?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // if (hydroInfo.Curves == null) + // { + // hydroInfo.Curves = new List<Yw.Model.HydroCurveInfo>(); + // } + // hydroInfo.Curves.Add(curveqe); + // pump.CurveQE = curveqe.Code; + // } + // else + // { + // if (!curveqe.DbLocked) + // { + // curveqe.DbId = matching.MatchingCurveDbId; + // curveqe.CurveData = matching.MatchingCurveQE?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // } + // } + + // } + + // result = true; + // } + // } + + // return result; + //} + + ///// <summary> + ///// 搴旂敤闃�闂ㄨ嚜鍔ㄥ尮閰峍iewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, ValveMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var valve = hydroInfo.Valves?.Find(x => x.Code == matching.Code); + // if (valve != null) + // { + // valve.DbLocked = matching.DbLocked; + // valve.ModelType = matching.ModelType; + // valve.Material = matching.Material; + // valve.Diameter = matching.Diameter; + // valve.MinorLoss = matching.MinorLoss; + // switch (matching.ValveType) + // { + // case HStation.Assets.eValveType.PBV: valve.ValveType = Yw.Hydro.ValveType.PBV; break; + // case HStation.Assets.eValveType.PRV: valve.ValveType = Yw.Hydro.ValveType.PRV; break; + // case HStation.Assets.eValveType.PSV: valve.ValveType = Yw.Hydro.ValveType.PSV; break; + // case HStation.Assets.eValveType.TCV: valve.ValveType = Yw.Hydro.ValveType.TCV; break; + // case HStation.Assets.eValveType.FCV: valve.ValveType = Yw.Hydro.ValveType.FCV; break; + // case HStation.Assets.eValveType.GPV: valve.ValveType = Yw.Hydro.ValveType.GPV; break; + // case HStation.Assets.eValveType.CV: valve.ValveType = Yw.Hydro.ValveType.CV; break; + // default: break; + // } + // valve.ValveSetting = matching.ValveSetting; + + // if (!valve.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // valve.DbId = matching.MatchingDbId; + // } + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // valve.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingMaterial)) + // { + // valve.Material = matching.MatchingMaterial; + // } + // if (matching.MatchingDiameter.HasValue) + // { + // valve.Diameter = matching.MatchingDiameter.Value; + // } + // if (matching.MatchingMinorLoss.HasValue) + // { + // valve.MinorLoss = matching.MatchingMinorLoss.Value; + // } + // if (matching.MatchingValveType.HasValue) + // { + // switch (matching.MatchingValveType.Value) + // { + // case HStation.Assets.eValveType.PBV: valve.ValveType = Yw.Hydro.ValveType.PBV; break; + // case HStation.Assets.eValveType.PRV: valve.ValveType = Yw.Hydro.ValveType.PRV; break; + // case HStation.Assets.eValveType.PSV: valve.ValveType = Yw.Hydro.ValveType.PSV; break; + // case HStation.Assets.eValveType.TCV: valve.ValveType = Yw.Hydro.ValveType.TCV; break; + // case HStation.Assets.eValveType.FCV: valve.ValveType = Yw.Hydro.ValveType.FCV; break; + // case HStation.Assets.eValveType.GPV: valve.ValveType = Yw.Hydro.ValveType.GPV; break; + // case HStation.Assets.eValveType.CV: valve.ValveType = Yw.Hydro.ValveType.CV; break; + // default: break; + // } + // } + // switch (valve.ValveType) + // { + // case Yw.Hydro.ValveType.PSV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingValveSetting)) + // { + // valve.ValveSetting = matching.MatchingValveSetting; + // } + // } + // break; + // case Yw.Hydro.ValveType.PBV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingValveSetting)) + // { + // valve.ValveSetting = matching.MatchingValveSetting; + // } + // } + // break; + // case Yw.Hydro.ValveType.PRV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingValveSetting)) + // { + // valve.ValveSetting = matching.MatchingValveSetting; + // } + // } + // break; + // case Yw.Hydro.ValveType.FCV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingValveSetting)) + // { + // valve.ValveSetting = matching.MatchingValveSetting; + // } + // } + // break; + // case Yw.Hydro.ValveType.TCV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingCurveDbId)) + // { + // //闃�闂ㄥ紑搴︽崯澶辩郴鏁版洸绾� + // var curveol = hydroInfo.Curves?.Find(x => x.Code == valve.ValveSetting); + // if (curveol == null) + // { + // curveol = new Yw.Model.HydroCurveInfo(); + // curveol.Catalog = Yw.Hydro.ParterCatalog.Curve; + // curveol.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); + // curveol.Name = "鍖归厤"; + // curveol.ModelType = valve.ModelType; + // curveol.DbLocked = false; + // curveol.DbId = matching.MatchingCurveDbId; + // curveol.CurveType = Yw.WinFrmUI.HydroCurve.ValveOL; + // curveol.CurveData = matching.MatchingCurveOL?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // if (hydroInfo.Curves == null) + // { + // hydroInfo.Curves = new List<Yw.Model.HydroCurveInfo>(); + // } + // hydroInfo.Curves.Add(curveol); + // valve.ValveSetting = curveol.Code; + // } + // else + // { + // if (!curveol.DbLocked) + // { + // curveol.DbId = matching.MatchingCurveDbId; + // curveol.CurveData = matching.MatchingCurveOL?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // } + // } + // } + // } + // break; + // case Yw.Hydro.ValveType.GPV: + // { + // if (!string.IsNullOrEmpty(matching.MatchingCurveDbId)) + // { + // //闃�闂ㄥ紑搴︽崯澶辩郴鏁版洸绾� + // var curveql = hydroInfo.Curves?.Find(x => x.Code == valve.ValveSetting); + // if (curveql == null) + // { + // curveql = new Yw.Model.HydroCurveInfo(); + // curveql.Catalog = Yw.Hydro.ParterCatalog.Curve; + // curveql.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); + // curveql.Name = "鍖归厤"; + // curveql.ModelType = valve.ModelType; + // curveql.DbLocked = false; + // curveql.DbId = matching.MatchingCurveDbId; + // curveql.CurveType = Yw.WinFrmUI.HydroCurve.ValveOL; + // curveql.CurveData = matching.MatchingCurveQL?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // if (hydroInfo.Curves == null) + // { + // hydroInfo.Curves = new List<Yw.Model.HydroCurveInfo>(); + // } + // hydroInfo.Curves.Add(curveql); + // valve.ValveSetting = curveql.Code; + // } + // else + // { + // if (!curveql.DbLocked) + // { + // curveql.DbId = matching.MatchingCurveDbId; + // curveql.CurveData = matching.MatchingCurveQL?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); + // } + // } + // } + // } + // break; + // case Yw.Hydro.ValveType.CV: + // { + + // } + // break; + // } + + // result = true; + // } + // } + // return result; + //} + + ///// <summary> + ///// 搴旂敤绠¢亾鑷姩鍖归厤ViewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, PipeMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var pipe = hydroInfo.Pipes?.Find(x => x.Code == matching.Code); + // if (pipe != null) + // { + // pipe.DbLocked = matching.DbLocked; + // pipe.ModelType = matching.ModelType; + // pipe.Diameter = matching.Diameter; + // pipe.Material = matching.Material; + // pipe.Roughness = matching.Roughness; + // pipe.MinorLoss = matching.MinorLoss; + + // if (!pipe.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // pipe.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // pipe.DbId = matching.MatchingDbId; + // } + // if (matching.MatchingDiameter.HasValue) + // { + // pipe.Diameter = matching.MatchingDiameter.Value; + // } + // if (!string.IsNullOrEmpty(matching.MatchingMaterial)) + // { + // pipe.Material = matching.MatchingMaterial; + // } + // if (matching.MatchingRoughness.HasValue) + // { + // pipe.Roughness = matching.MatchingRoughness.Value; + // } + // if (matching.MatchingMinorLoss.HasValue) + // { + // pipe.MinorLoss = matching.MatchingMinorLoss.Value; + // } + + // result = true; + // } + // } + // return result; + //} + + ///// <summary> + ///// 搴旂敤寮ご鑷姩鍖归厤ViewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, ElbowMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var elbow = hydroInfo.Elbows?.Find(x => x.Code == matching.Code); + // if (elbow != null) + // { + // elbow.DbLocked = matching.DbLocked; + // elbow.ModelType = matching.ModelType; + // elbow.Caliber = matching.Caliber; + // elbow.Material = matching.Material; + // elbow.MinorLoss = matching.MinorLoss; + + // if (!elbow.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // elbow.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // elbow.DbId = matching.MatchingDbId; + // } + // if (matching.MatchingCaliber.HasValue) + // { + // elbow.Caliber = matching.MatchingCaliber.Value; + // } + // if (!string.IsNullOrEmpty(matching.MatchingMaterial)) + // { + // elbow.Material = matching.MatchingMaterial; + // } + // if (matching.MatchingMinorLoss.HasValue) + // { + // elbow.MinorLoss = matching.MatchingMinorLoss.Value; + // } + + // result = true; + // } + // } + // return result; + //} + + ///// <summary> + ///// 搴旂敤涓夐�氳嚜鍔ㄥ尮閰峍iewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, ThreelinkMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var threelink = hydroInfo.Threelinks?.Find(x => x.Code == matching.Code); + // if (threelink != null) + // { + // threelink.DbLocked = matching.DbLocked; + // threelink.ModelType = matching.ModelType; + // threelink.Caliber = matching.Caliber; + // threelink.Material = matching.Material; + // threelink.MinorLoss = matching.MinorLoss; + + // if (!threelink.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // threelink.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // threelink.DbId = matching.MatchingDbId; + // } + // if (matching.MatchingCaliber.HasValue) + // { + // threelink.Caliber = matching.MatchingCaliber.Value; + // } + // if (!string.IsNullOrEmpty(matching.MatchingMaterial)) + // { + // threelink.Material = matching.MatchingMaterial; + // } + // if (matching.MatchingMinorLoss.HasValue) + // { + // threelink.MinorLoss = matching.MatchingMinorLoss.Value; + // } + + // result = true; + // } + // } + // return result; + //} + + ///// <summary> + ///// 搴旂敤鍥涢�氳嚜鍔ㄥ尮閰峍iewModel + ///// </summary> + //public static bool Apply(Yw.Model.HydroModelInfo hydroInfo, FourlinkMatchingViewModel matching) + //{ + // if (hydroInfo == null) + // { + // return false; + // } + // if (matching == null) + // { + // return false; + // } + + // bool result = false; + + // var fourlink = hydroInfo.Fourlinks?.Find(x => x.Code == matching.Code); + // if (fourlink != null) + // { + // fourlink.DbLocked = matching.DbLocked; + // fourlink.ModelType = matching.ModelType; + // fourlink.Caliber = matching.Caliber; + // fourlink.Material = matching.Material; + // fourlink.MinorLoss = matching.MinorLoss; + + // if (!fourlink.DbLocked) + // { + // if (!string.IsNullOrEmpty(matching.MatchingModelType)) + // { + // fourlink.ModelType = matching.MatchingModelType; + // } + // if (!string.IsNullOrEmpty(matching.MatchingDbId)) + // { + // fourlink.DbId = matching.MatchingDbId; + // } + // if (matching.MatchingCaliber.HasValue) + // { + // fourlink.Caliber = matching.MatchingCaliber.Value; + // } + // if (!string.IsNullOrEmpty(matching.MatchingMaterial)) + // { + // fourlink.Material = matching.MatchingMaterial; + // } + // if (matching.MatchingMinorLoss.HasValue) + // { + // fourlink.MinorLoss = matching.MatchingMinorLoss.Value; + // } + + // result = true; + // } + // } + // return result; + //} + + #endregion + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingViewModel.cs new file mode 100644 index 0000000..aef076f --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/00-core/HydroMatchingViewModel.cs @@ -0,0 +1,93 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// + /// </summary> + public class HydroMatchingViewModel + { + /// <summary> + /// 姘存睜 + /// </summary> + public List<HydroTankMatchingViewModel> Tanks { get; set; } + + /// <summary> + /// 闂峰ご + /// </summary> + public List<HydroBluntheadMatchingViewModel> Bluntheads { get; set; } + + /// <summary> + /// 寮ご + /// </summary> + public List<HydroElbowMatchingViewModel> Elbows { get; set; } + + /// <summary> + /// 涓夐�� + /// </summary> + public List<HydroThreelinkMatchingViewModel> Threelinks { get; set; } + + /// <summary> + /// 鍥涢�� + /// </summary> + public List<HydroFourlinkMatchingViewModel> Fourlinks { get; set; } + + /// <summary> + /// 鍠峰槾 + /// </summary> + public List<HydroNozzleMatchingViewModel> Nozzles { get; set; } + + /// <summary> + /// 娑堢伀鏍� + /// </summary> + public List<HydroHydrantMatchingViewModel> Hydrants { get; set; } + + /// <summary> + /// 姘磋〃 + /// </summary> + public List<HydroMeterMatchingViewModel> Meters { get; set; } + + /// <summary> + /// 娴侀噺璁� + /// </summary> + public List<HydroFlowmeterMatchingViewModel> Flowmeters { get; set; } + + /// <summary> + /// 鍘嬪姏琛� + /// </summary> + public List<HydroPressmeterMatchingViewModel> Pressmeters { get; set; } + + /// <summary> + /// 绠¢亾 + /// </summary> + public List<HydroPipeMatchingViewModel> Pipes { get; set; } + + /// <summary> + /// 杩囨浮浠� + /// </summary> + public List<HydroTranslationMatchingViewModel> Translations { get; set; } + + /// <summary> + /// 姘存车 + /// </summary> + public List<HydroPumpMatchingViewModel> Pumps { get; set; } + + /// <summary> + /// 闃�闂� + /// </summary> + public List<HydroValveMatchingViewModel> Valves { get; set; } + + /// <summary> + /// 鎹㈢儹鍣� + /// </summary> + public List<HydroExchangerMatchingViewModel> Exchangers { get; set; } + + /// <summary> + /// 鍘嬬缉鏈� + /// </summary> + public List<HydroCompressorMatchingViewModel> Compressors { get; set; } + + + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/01-pump/HydroPumpMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/01-pump/HydroPumpMatchingViewModel.cs new file mode 100644 index 0000000..0281a06 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/01-pump/HydroPumpMatchingViewModel.cs @@ -0,0 +1,188 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 姘存车鍖归厤ViewModel + /// </summary> + public class HydroPumpMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroPumpMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroPumpMatchingViewModel(Yw.Model.HydroPumpInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.ModelType = rhs.ModelType; + this.DbId = rhs.DbId; + this.DbLocked = rhs.DbLocked; + this.CurveDbId = hydroInfo.Curves?.Find(x => x.Code == rhs.CurveQH)?.DbId; + this.RatedP = rhs.RatedP; + this.RatedQ = rhs.RatedQ; + this.RatedH = rhs.RatedH; + this.RatedN = rhs.RatedN; + this.RatedHz = rhs.RatedHz; + this.CurrentHz = Math.Round(rhs.RatedHz * rhs.SpeedRatio, 1); + } + + /// <summary> + /// + /// </summary> + public HydroPumpMatchingViewModel(Yw.Model.HydroPumpInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuPumpResult calcuResult) : this(rhs, hydroInfo) + { + this.CalcuQ = calcuResult?.CalcuQ; + this.CalcuH = calcuResult?.CalcuH; + } + + /// <summary> + /// + /// </summary> + public HydroPumpMatchingViewModel(HydroPumpViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + this.CalcuQ = rhs.CalcuQ; + this.CalcuH = rhs.CalcuH; + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// CurveDbId + /// </summary> + public string CurveDbId { get; set; } + + /// <summary> + /// 棰濆畾鍔熺巼 + /// </summary> + public double RatedP { get; set; } + + /// <summary> + /// 棰濆畾娴侀噺 + /// </summary> + public double? RatedQ { get; set; } + + /// <summary> + /// 棰濆畾鎵▼ + /// </summary> + public double? RatedH { get; set; } + + /// <summary> + /// 棰濆畾杞�� + /// </summary> + public double? RatedN { get; set; } + + /// <summary> + /// 棰濆畾棰戠巼 + /// </summary> + public double RatedHz { get; set; } + + /// <summary> + /// 璁惧畾棰戠巼 + /// </summary> + public double CurrentHz { get; set; } + + /// <summary> + /// 璁$畻娴侀噺 + /// </summary> + public double? CalcuQ { get; set; } + + /// <summary> + /// 璁$畻鎵▼ + /// </summary> + public double? CalcuH { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤DbId + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤CurveDbId + /// </summary> + public string MatchingCurveDbId { get; set; } + + /// <summary> + /// 鍖归厤棰濆畾鍔熺巼 + /// </summary> + public double? MatchingRatedP { get; set; } + + /// <summary> + /// 鍖归厤棰濆畾娴侀噺 + /// </summary> + public double? MatchingRatedQ { get; set; } + + /// <summary> + /// 鍖归厤棰濆畾鎵▼ + /// </summary> + public double? MatchingRatedH { get; set; } + + /// <summary> + /// 鍖归厤棰濆畾杞�� + /// </summary> + public double? MatchingRatedN { get; set; } + + /// <summary> + /// 鍖归厤棰濆畾棰戠巼 + /// </summary> + public double? MatchingRatedHz { get; set; } + + /// <summary> + /// 鍖归厤璁惧畾棰戠巼 + /// </summary> + public double? MatchingCurrentHz { get; set; } + + /// <summary> + /// 鍖归厤娴侀噺鎵▼鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQH { get; set; } + + /// <summary> + /// 鍖归厤娴侀噺鍔熺巼鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQP { get; set; } + + /// <summary> + /// 鍖归厤娴侀噺鏁堢巼鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQE { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/02-valve/HydroValveMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/02-valve/HydroValveMatchingViewModel.cs new file mode 100644 index 0000000..3615956 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/02-valve/HydroValveMatchingViewModel.cs @@ -0,0 +1,169 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 闃�闂ㄥ尮閰峍iewModel + /// </summary> + public class HydroValveMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroValveMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroValveMatchingViewModel(Yw.Model.HydroValveInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.ModelType = rhs.ModelType; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.CurveDbId = hydroInfo.Curves?.Find(x => x.Code == rhs.ValveSetting)?.DbId; + this.Material = rhs.Material; + this.Diameter = rhs.Diameter; + this.MinorLoss = rhs.MinorLoss; + switch (rhs.ValveType) + { + case Yw.Hydro.ValveType.PRV: this.ValveType = eValveType.PRV; break; + case Yw.Hydro.ValveType.PSV: this.ValveType = eValveType.PSV; break; + case Yw.Hydro.ValveType.PBV: this.ValveType = eValveType.PBV; break; + case Yw.Hydro.ValveType.TCV: this.ValveType = eValveType.TCV; break; + case Yw.Hydro.ValveType.FCV: this.ValveType = eValveType.FCV; break; + case Yw.Hydro.ValveType.GPV: this.ValveType = eValveType.GPV; break; + case Yw.Hydro.ValveType.CV: this.ValveType = eValveType.CV; break; + default: break; + } + this.ValveSetting = rhs.ValveSetting; + } + + /// <summary> + /// + /// </summary> + public HydroValveMatchingViewModel(Yw.Model.HydroValveInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroValveMatchingViewModel(HydroValveViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// CurveDbId + /// </summary> + public string CurveDbId { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鐩村緞 + /// </summary> + public double Diameter { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double MinorLoss { get; set; } + + /// <summary> + /// 闃�闂ㄧ被鍨� + /// </summary> + public eValveType ValveType { get; set; } + + /// <summary> + /// 闃�闂ㄨ缃� + /// </summary> + public string ValveSetting { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏇茬嚎id + /// </summary> + public string MatchingCurveDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鐩村緞 + /// </summary> + public double? MatchingDiameter { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤闃�闂ㄧ被鍨� + /// </summary> + public eValveType? MatchingValveType { get; set; } + + /// <summary> + /// 鍖归厤闃�闂ㄨ缃� + /// </summary> + public string MatchingValveSetting { get; set; } + + /// <summary> + /// 鍖归厤姘村ご鎹熷け鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQL { get; set; } + + /// <summary> + /// 鍖归厤寮�搴︽崯澶辨洸绾� + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveOL { get; set; } + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/03-pipe/HydroPipeMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/03-pipe/HydroPipeMatchingViewModel.cs new file mode 100644 index 0000000..2cd6372 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/03-pipe/HydroPipeMatchingViewModel.cs @@ -0,0 +1,134 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 绠¢亾鍖归厤ViewModel + /// </summary> + public class HydroPipeMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroPipeMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroPipeMatchingViewModel(Yw.Model.HydroPipeInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Diameter = rhs.Diameter; + this.Roughness = rhs.Roughness; + this.MinorLoss = rhs.MinorLoss; + this.eAlgorithmType = eAlgorithmType.Hazen; + } + + /// <summary> + /// + /// </summary> + public HydroPipeMatchingViewModel(Yw.Model.HydroPipeInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroPipeMatchingViewModel(HydroPipeViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + ///DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鐩村緞 + /// </summary> + public double Diameter { get; set; } + + /// <summary> + /// 绮楃硻绯绘暟 + /// </summary> + public double Roughness { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double MinorLoss { get; set; } + + /// <summary> + /// 绠楁硶绫诲瀷 + /// </summary> + public eAlgorithmType eAlgorithmType { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鐩村緞 + /// </summary> + public double? MatchingDiameter { get; set; } + + /// <summary> + /// 鍖归厤绮楃硻绯绘暟 + /// </summary> + public double? MatchingRoughness { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/04-elbow/HydroElbowMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/04-elbow/HydroElbowMatchingViewModel.cs new file mode 100644 index 0000000..6dc2ec7 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/04-elbow/HydroElbowMatchingViewModel.cs @@ -0,0 +1,145 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 寮ご鍖归厤ViewModel + /// </summary> + public class HydroElbowMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroElbowMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroElbowMatchingViewModel(Yw.Model.HydroElbowInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + this.BendingAngle = rhs.BendingAngle.HasValue ? (int)rhs.BendingAngle.Value : null; + switch (rhs.ElbowType) + { + case HydroElbow.Short: this.ElbowType = eElbowType.Short; break; + case HydroElbow.Middle: this.ElbowType = eElbowType.Middle; break; + case HydroElbow.Long: this.ElbowType = eElbowType.Long; break; + default: break; + } + } + + /// <summary> + /// + /// </summary> + public HydroElbowMatchingViewModel(Yw.Model.HydroElbowInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroElbowMatchingViewModel(HydroElbowViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 寮洸瑙掑害 + /// </summary> + public int? BendingAngle { get; set; } + + /// <summary> + /// 寮ご绫诲瀷 + /// </summary> + public eElbowType? ElbowType { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤寮洸瑙掑害 + /// </summary> + public int? MatchingBendingAngle { get; set; } + + /// <summary> + /// 鍖归厤寮ご绫诲瀷 + /// </summary> + public eElbowType? MatchingElbowType { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/05-threelink/HydroThreelinkMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/05-threelink/HydroThreelinkMatchingViewModel.cs new file mode 100644 index 0000000..c3bb3a8 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/05-threelink/HydroThreelinkMatchingViewModel.cs @@ -0,0 +1,138 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 涓夐�氬尮閰峍iewModel + /// </summary> + public class HydroThreelinkMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroThreelinkMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroThreelinkMatchingViewModel(Yw.Model.HydroThreelinkInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + this.RunningThroughLoss = rhs.RunningThroughLoss; + this.BranchThroughLoss = rhs.BranchThroughLoss; + } + + /// <summary> + /// + /// </summary> + public HydroThreelinkMatchingViewModel(Yw.Model.HydroThreelinkInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroThreelinkMatchingViewModel(HydroThreelinkViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 杩愯閫氳繃鎹熷け绯绘暟 + /// </summary> + public double? RunningThroughLoss { get; set; } + + /// <summary> + /// 鏀閫氳繃鎹熷け绯绘暟 + /// </summary> + public double? BranchThroughLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 杩愯閫氳繃鎹熷け绯绘暟 + /// </summary> + public double? MatchingRunningThroughLoss { get; set; } + + /// <summary> + /// 鏀閫氳繃鎹熷け绯绘暟 + /// </summary> + public double? MatchingBranchThroughLoss { get; set; } + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/06-fourlink/HydroFourlinkMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/06-fourlink/HydroFourlinkMatchingViewModel.cs new file mode 100644 index 0000000..767a76a --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/06-fourlink/HydroFourlinkMatchingViewModel.cs @@ -0,0 +1,117 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 鍥涢�氬尮閰峍iewModel + /// </summary> + public class HydroFourlinkMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroFourlinkMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroFourlinkMatchingViewModel(Yw.Model.HydroFourlinkInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroFourlinkMatchingViewModel(Yw.Model.HydroFourlinkInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroFourlinkMatchingViewModel(HydroFourlinkViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/07-blunthead/HydroBluntheadMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/07-blunthead/HydroBluntheadMatchingViewModel.cs new file mode 100644 index 0000000..c0b269f --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/07-blunthead/HydroBluntheadMatchingViewModel.cs @@ -0,0 +1,117 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 闂峰ご鍖归厤ViewModel + /// </summary> + public class HydroBluntheadMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroBluntheadMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroBluntheadMatchingViewModel(Yw.Model.HydroBluntheadInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroBluntheadMatchingViewModel(Yw.Model.HydroBluntheadInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroBluntheadMatchingViewModel(HydroBluntheadViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/08-hydrant/HydroHydrantMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/08-hydrant/HydroHydrantMatchingViewModel.cs new file mode 100644 index 0000000..08e4db8 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/08-hydrant/HydroHydrantMatchingViewModel.cs @@ -0,0 +1,128 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 娑堢伀鏍撳尮閰峍iewModel + /// </summary> + public class HydroHydrantMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroHydrantMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroHydrantMatchingViewModel(Yw.Model.HydroHydrantInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + this.Coefficient = rhs.Coefficient; + } + + /// <summary> + /// + /// </summary> + public HydroHydrantMatchingViewModel(Yw.Model.HydroHydrantInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroHydrantMatchingViewModel(HydroHydrantViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍠峰皠绯绘暟 + /// </summary> + public double Coefficient { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍠峰皠绯绘暟 + /// </summary> + public double? MatchingCoefficient { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/09-nozzle/HydroNozzleMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/09-nozzle/HydroNozzleMatchingViewModel.cs new file mode 100644 index 0000000..7af3c13 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/09-nozzle/HydroNozzleMatchingViewModel.cs @@ -0,0 +1,128 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 鍠峰槾鍖归厤ViewModel + /// </summary> + public class HydroNozzleMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroNozzleMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroNozzleMatchingViewModel(Yw.Model.HydroNozzleInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Caliber = rhs.Caliber; + this.MinorLoss = rhs.MinorLoss; + this.Coefficient = rhs.Coefficient; + } + + /// <summary> + /// + /// </summary> + public HydroNozzleMatchingViewModel(Yw.Model.HydroNozzleInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroNozzleMatchingViewModel(HydroNozzleViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鍙e緞 + /// </summary> + public double? Caliber { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍠峰皠绯绘暟 + /// </summary> + public double Coefficient { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鍙e緞 + /// </summary> + public double? MatchingCaliber { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍠峰皠绯绘暟 + /// </summary> + public double? MatchingCoefficient { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/10-meter/HydroMeterMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/10-meter/HydroMeterMatchingViewModel.cs new file mode 100644 index 0000000..51a7142 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/10-meter/HydroMeterMatchingViewModel.cs @@ -0,0 +1,96 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 姘磋〃鍖归厤ViewModel + /// </summary> + public class HydroMeterMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroMeterMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroMeterMatchingViewModel(Yw.Model.HydroMeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroMeterMatchingViewModel(Yw.Model.HydroMeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroMeterMatchingViewModel(HydroMeterViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/11-flowmeter/HydroFlowmeterMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/11-flowmeter/HydroFlowmeterMatchingViewModel.cs new file mode 100644 index 0000000..909af12 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/11-flowmeter/HydroFlowmeterMatchingViewModel.cs @@ -0,0 +1,96 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 娴侀噺璁″尮閰峍iewModel + /// </summary> + public class HydroFlowmeterMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroFlowmeterMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroFlowmeterMatchingViewModel(Yw.Model.HydroFlowmeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroFlowmeterMatchingViewModel(Yw.Model.HydroFlowmeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuFlowmeterResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroFlowmeterMatchingViewModel(HydroFlowmeterViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/12-pressmeter/HydroFlowmeterMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/12-pressmeter/HydroFlowmeterMatchingViewModel.cs new file mode 100644 index 0000000..cbda043 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/12-pressmeter/HydroFlowmeterMatchingViewModel.cs @@ -0,0 +1,96 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 鍘嬪姏琛ㄥ尮閰峍iewModel + /// </summary> + public class HydroPressmeterMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroPressmeterMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroPressmeterMatchingViewModel(Yw.Model.HydroPressmeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroPressmeterMatchingViewModel(Yw.Model.HydroPressmeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuPressmeterResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroPressmeterMatchingViewModel(HydroPressmeterViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double? MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/13-translation/HydroTranslationMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/13-translation/HydroTranslationMatchingViewModel.cs new file mode 100644 index 0000000..e50fd9e --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/13-translation/HydroTranslationMatchingViewModel.cs @@ -0,0 +1,156 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 杩囨浮浠跺尮閰峍iewModel + /// </summary> + public class HydroTranslationMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroTranslationMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroTranslationMatchingViewModel(Yw.Model.HydroTranslationInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.ModelType = rhs.ModelType; + this.Material = rhs.Material; + this.Diameter = rhs.Diameter; + this.StartDiameter = rhs.StartDiameter; + this.EndDiameter = rhs.EndDiameter; + this.Roughness = rhs.Roughness; + this.MinorLoss = rhs.MinorLoss; + this.eAlgorithmType = eAlgorithmType.Hazen; + } + + /// <summary> + /// + /// </summary> + public HydroTranslationMatchingViewModel(Yw.Model.HydroTranslationInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroTranslationMatchingViewModel(HydroTranslationViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + ///DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鐩村緞 + /// </summary> + public double Diameter { get; set; } + + /// <summary> + /// 涓婃父鐩村緞 + /// </summary> + public double StartDiameter { get; set; } + + /// <summary> + /// 涓嬫父鐩村緞 + /// </summary> + public double EndDiameter { get; set; } + + /// <summary> + /// 绮楃硻绯绘暟 + /// </summary> + public double Roughness { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double MinorLoss { get; set; } + + /// <summary> + /// 绠楁硶绫诲瀷 + /// </summary> + public eAlgorithmType eAlgorithmType { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鐩村緞 + /// </summary> + public double? MatchingDiameter { get; set; } + + /// <summary> + /// 鍖归厤涓婃父鐩村緞 + /// </summary> + public double? MatchingStartDiameter { get; set; } + + /// <summary> + /// 鍖归厤涓嬫父鐩村緞 + /// </summary> + public double? MatchingEndDiameter { get; set; } + + /// <summary> + /// 鍖归厤绮楃硻绯绘暟 + /// </summary> + public double? MatchingRoughness { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/14-exchanger/HydroExchangerMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/14-exchanger/HydroExchangerMatchingViewModel.cs new file mode 100644 index 0000000..c4a2ab3 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/14-exchanger/HydroExchangerMatchingViewModel.cs @@ -0,0 +1,133 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 鎹㈢儹鍣ㄥ尮閰峍iewModel + /// </summary> + public class HydroExchangerMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroExchangerMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroExchangerMatchingViewModel(Yw.Model.HydroExchangerInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.ModelType = rhs.ModelType; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.CurveDbId = hydroInfo.Curves?.Find(x => x.Code == rhs.CurveQL)?.DbId; + this.Material = rhs.Material; + this.Diameter = rhs.Diameter; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroExchangerMatchingViewModel(Yw.Model.HydroExchangerInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroExchangerMatchingViewModel(HydroExchangerViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// CurveDbId + /// </summary> + public string CurveDbId { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鐩村緞 + /// </summary> + public double Diameter { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏇茬嚎id + /// </summary> + public string MatchingCurveDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鐩村緞 + /// </summary> + public double? MatchingDiameter { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤姘村ご鎹熷け鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQL { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/15-compressor/HydroCompressorMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/15-compressor/HydroCompressorMatchingViewModel.cs new file mode 100644 index 0000000..90ef59c --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/15-compressor/HydroCompressorMatchingViewModel.cs @@ -0,0 +1,133 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 鍘嬬缉鏈哄尮閰峍iewModel + /// </summary> + public class HydroCompressorMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroCompressorMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroCompressorMatchingViewModel(Yw.Model.HydroCompressorInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.ModelType = rhs.ModelType; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.CurveDbId = hydroInfo.Curves?.Find(x => x.Code == rhs.CurveQL)?.DbId; + this.Material = rhs.Material; + this.Diameter = rhs.Diameter; + this.MinorLoss = rhs.MinorLoss; + } + + /// <summary> + /// + /// </summary> + public HydroCompressorMatchingViewModel(Yw.Model.HydroCompressorInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuLinkResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroCompressorMatchingViewModel(HydroCompressorViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// CurveDbId + /// </summary> + public string CurveDbId { get; set; } + + /// <summary> + /// 鏉愯川 + /// </summary> + public string Material { get; set; } + + /// <summary> + /// 鐩村緞 + /// </summary> + public double Diameter { get; set; } + + /// <summary> + /// 鎹熷け绯绘暟 + /// </summary> + public double MinorLoss { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏇茬嚎id + /// </summary> + public string MatchingCurveDbId { get; set; } + + /// <summary> + /// 鍖归厤鏉愯川 + /// </summary> + public string MatchingMaterial { get; set; } + + /// <summary> + /// 鍖归厤鐩村緞 + /// </summary> + public double? MatchingDiameter { get; set; } + + /// <summary> + /// 鍖归厤鎹熷け绯绘暟 + /// </summary> + public double? MatchingMinorLoss { get; set; } + + /// <summary> + /// 鍖归厤姘村ご鎹熷け鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingCurveQL { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/16-tank/HydroTankMatchingViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/16-tank/HydroTankMatchingViewModel.cs new file mode 100644 index 0000000..ef95a98 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-matching/16-tank/HydroTankMatchingViewModel.cs @@ -0,0 +1,155 @@ +锘縩amespace Yw.WinFrmUI +{ + /// <summary> + /// 姘存睜鍖归厤ViewModel + /// </summary> + public class HydroTankMatchingViewModel + { + /// <summary> + /// + /// </summary> + public HydroTankMatchingViewModel() { } + + /// <summary> + /// + /// </summary> + public HydroTankMatchingViewModel(Yw.Model.HydroTankInfo rhs, Yw.Model.HydroModelInfo hydroInfo) + { + this.ID = rhs.ID; + this.Name = rhs.Name; + this.Code = rhs.Code; + this.ModelType = rhs.ModelType; + this.DbLocked = rhs.DbLocked; + this.DbId = rhs.DbId; + this.CurveDbId = hydroInfo.Curves?.Find(x => x.Code == rhs.VolCurve)?.DbId; + this.MinLevel = rhs.MinLevel; + this.MaxLevel = rhs.MaxLevel; + this.DN = rhs.DN; + this.MinVol = rhs.MinVol; + this.OverFlow = rhs.OverFlow; + } + + /// <summary> + /// + /// </summary> + public HydroTankMatchingViewModel(Yw.Model.HydroTankInfo rhs, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuNodeResult calcuResult) : this(rhs, hydroInfo) + { + + } + + /// <summary> + /// + /// </summary> + public HydroTankMatchingViewModel(HydroTankViewModel rhs) : this(rhs.Vmo, rhs.HydroInfo) + { + + } + + /// <summary> + /// ID + /// </summary> + public long ID { get; set; } + + /// <summary> + /// 缂栫爜 + /// </summary> + public string Code { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Db閿佸畾 + /// </summary> + public bool DbLocked { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string ModelType { get; set; } + + /// <summary> + /// DbId + /// </summary> + public string DbId { get; set; } + + /// <summary> + /// CurveDbId + /// </summary> + public string CurveDbId { get; set; } + + /// <summary> + /// 鏈�浣庢按浣� + /// </summary> + public double MinLevel { get; set; } + + /// <summary> + /// 鏈�楂樻按浣� + /// </summary> + public double MaxLevel { get; set; } + + /// <summary> + /// 鍏О鐩村緞 + /// </summary> + public double DN { get; set; } + + /// <summary> + /// 鏈�灏忓绉� + /// </summary> + public double MinVol { get; set; } + + /// <summary> + /// 鏄惁鍏佽婧㈡祦 + /// </summary> + public bool OverFlow { get; set; } + + /// <summary> + /// 鍖归厤鍨嬪彿 + /// </summary> + public string MatchingModelType { get; set; } + + /// <summary> + /// 鍖归厤Dbid + /// </summary> + public string MatchingDbId { get; set; } + + /// <summary> + /// 鍖归厤鏇茬嚎id + /// </summary> + public string MatchingCurveDbId { get; set; } + + /// <summary> + /// 鍖归厤鏈�浣庢按浣� + /// </summary> + public double? MatchingMinLevel { get; set; } + + /// <summary> + /// 鍖归厤鏈�楂樻按浣� + /// </summary> + public double? MatchingMaxLevel { get; set; } + + /// <summary> + /// 鍖归厤鍏О鐩村緞 + /// </summary> + public double? MatchingDN { get; set; } + + /// <summary> + /// 鍖归厤鏈�灏忓绉� + /// </summary> + public double? MatchingMinVol { get; set; } + + /// <summary> + /// 鍖归厤鏄惁鍏佽婧㈡祦 + /// </summary> + public bool? MatchingOverFlow { get; set; } + + /// <summary> + /// 鍖归厤瀹圭Н鏇茬嚎 + /// </summary> + public List<HydroCurvePointViewModel> MatchingVolCurve { get; set; } + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/13-q3d/HydroQ3dViewPage.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/01-q3d/HydroQ3dViewPage.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/14-l2d/HydroL2dViewPage.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/02-l2d/HydroL2dViewPage.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.Designer.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.Designer.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.Designer.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.cs similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.cs diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.resx b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.resx similarity index 100% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/15-l3d/HydroL3dViewPage.resx rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/99-view/03-l3d/HydroL3dViewPage.resx diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/GlobalUsings.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/GlobalUsings.cs index 262089a..25c2335 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/GlobalUsings.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/GlobalUsings.cs @@ -6,3 +6,4 @@ global using System.ComponentModel.DataAnnotations; global using Yw.Vmo; global using System.Text; +global using Yw.Pump; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj index b0ae3a0..7e8d9a4 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj @@ -42,7 +42,8 @@ <ItemGroup> <PackageReference Include="DevExpress.Win.Design" Version="23.2.4" /> <PackageReference Include="Yw.BLL.Basic.Core" Version="3.3.0" /> - <PackageReference Include="Yw.BLL.Hydro.Core" Version="3.5.8" /> + <PackageReference Include="Yw.BLL.Hydro.Core" Version="3.5.9" /> + <PackageReference Include="Yw.Pump.Core" Version="3.1.3" /> </ItemGroup> <ItemGroup> @@ -59,6 +60,12 @@ </Compile> <Compile Update="02-model\HydroModelMgrPage.cs"> <SubType>UserControl</SubType> + </Compile> + <Compile Update="04-viewmodel\07-curve\01-view\HydroCurveViewDlg.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Update="04-viewmodel\07-curve\02-set\SetHydroCurveDlg.cs"> + <SubType>Form</SubType> </Compile> <Compile Update="05-property\HydroVisualPropertyCtrl.cs"> <SubType>UserControl</SubType> @@ -138,10 +145,10 @@ <Compile Update="06-visual\19-compressor\SetHydroCompressorListDlg.cs"> <SubType>Form</SubType> </Compile> - <Compile Update="10-working\00-core\SetHydroWorkingBottomCtrl.cs"> + <Compile Update="10-working\04-set\SetHydroWorkingBottomCtrl.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="10-working\00-core\SetHydroWorkingDlg.cs"> + <Compile Update="10-working\04-set\SetHydroWorkingDlg.cs"> <SubType>Form</SubType> </Compile> <Compile Update="10-working\02-visual\01-reservoir\SetHydroWorkingReservoirCtrl.cs"> @@ -159,16 +166,19 @@ <Compile Update="10-working\02-visual\05-valve\SetHydroWorkingValveCtrl.cs"> <SubType>UserControl</SubType> </Compile> + <Compile Update="10-working\05-tree\HydroWorkingTreeCtrl.cs"> + <SubType>UserControl</SubType> + </Compile> <Compile Update="11-search\HydroVisualSearchListCtrl.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="12-monitor\01-set\SetHydroVisualMonitorDlg.cs"> <SubType>Form</SubType> </Compile> - <Compile Update="14-l2d\HydroL2dViewPage.cs"> + <Compile Update="99-view\02-l2d\HydroL2dViewPage.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="15-l3d\HydroL3dViewPage.cs"> + <Compile Update="99-view\03-l3d\HydroL3dViewPage.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="08-grading\04-tree\SelectHydroGradingPropTreeCtrl.cs"> diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj.user b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj.user index ba33b37..9f86429 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj.user +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj.user @@ -4,17 +4,11 @@ <Compile Update="01-scene\AddHydroSceneDlg.cs"> <SubType>Form</SubType> </Compile> - <Compile Update="04-viewmodel\07-curve\HydroCurveViewCtrl.cs"> + <Compile Update="04-viewmodel\07-curve\01-view\HydroCurveViewCtrl.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="04-viewmodel\07-curve\HydroCurveViewDlg.cs"> - <SubType>Form</SubType> - </Compile> - <Compile Update="04-viewmodel\07-curve\SetHydroCurveCtrl.cs"> + <Compile Update="04-viewmodel\07-curve\02-set\SetHydroCurveCtrl.cs"> <SubType>UserControl</SubType> - </Compile> - <Compile Update="04-viewmodel\07-curve\SetHydroCurveDlg.cs"> - <SubType>Form</SubType> </Compile> <Compile Update="05-property\HydroVisualPropertyDescriptionCtrl.cs"> <SubType>UserControl</SubType> @@ -34,7 +28,7 @@ <Compile Update="09-check\01-control\HydroCheckResultCtrl.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="10-working\00-core\SetHydroWorkingCtrl.cs"> + <Compile Update="10-working\04-set\SetHydroWorkingCtrl.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="10-working\01-basic\SetHydroWorkingBasicCtrl.cs"> @@ -49,7 +43,7 @@ <Compile Update="12-monitor\02-value\HydroVisualMonitorValueListCtrl.cs"> <SubType>UserControl</SubType> </Compile> - <Compile Update="13-q3d\HydroQ3dViewPage.cs"> + <Compile Update="99-view\01-q3d\HydroQ3dViewPage.cs"> <SubType>UserControl</SubType> </Compile> <Compile Update="07-mark\03-view\SetHydroMarkDlg.cs"> -- Gitblit v1.9.3