| | |
| | | using DevExpress.Utils.Extensions; |
| | | using DevExpress.CodeParser; |
| | | using DevExpress.DataAccess.Native; |
| | | using DevExpress.Utils.Extensions; |
| | | using DevExpress.Utils.Svg; |
| | | using DevExpress.XtraCharts; |
| | | using System.Collections.Concurrent; |
| | | using Yw.DAL.Basic; |
| | | using Yw.Vmo; |
| | | |
| | |
| | | private Dictionary<HydroWorkingVmo, bool> _allWorkingCheckedListDict = null;//所有工况选择列表字典 |
| | | private Dictionary<XhsSchemeVmo, Yw.Model.HydroModelInfo> _allSchemeHydroInfoDict = null;//所有方案水力信息列表 |
| | | private Dictionary<XhsSchemeVmo, Dictionary<HydroWorkingVmo, bool>> _allSchemeWorkingCheckedListDict = null;//所有方案工况选择列表字典 |
| | | private ConcurrentDictionary<string, bool> _gettingHydroInfoDict = new ConcurrentDictionary<string, bool>();//获取水力信息字典 |
| | | |
| | | /// <summary> |
| | | /// 绑定数据 |
| | |
| | | this.CreateProjectSiteSchemeEvent?.Invoke(_project, _projectSite, hydroInfo, this.svgImg32[3]); |
| | | } |
| | | |
| | | //右键弹出 |
| | | private void accordionControl1_MouseClick(object sender, MouseEventArgs e) |
| | | { |
| | | if (e.Button == MouseButtons.Right) |
| | |
| | | } |
| | | } |
| | | |
| | | //全部折叠 |
| | | private void barBtnCollpseAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | this.accordionControl1.CollapseAll(); |
| | | } |
| | | |
| | | //全部展开 |
| | | private void barBtnExpandAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | this.accordionControl1.ExpandAll(); |
| | |
| | | Yw.Model.HydroModelInfo hydroInfo = null; |
| | | if (!useCache) |
| | | { |
| | | hydroInfo = await GetHydroInfo(scheme); |
| | | if (hydroInfo == null) |
| | | { |
| | | hydroInfo = await GetHydroInfo(scheme); |
| | | } |
| | | if (hydroInfo == null) |
| | | { |
| | | return default; |
| | |
| | | { |
| | | if (_hydroInfo == null) |
| | | { |
| | | _hydroInfo = await GetHydroInfo(null); |
| | | hydroInfo = await GetHydroInfo(null); |
| | | if (hydroInfo == null) |
| | | { |
| | | return default; |
| | | } |
| | | if (_hydroInfo == null) |
| | | { |
| | | _hydroInfo = hydroInfo; |
| | | } |
| | | } |
| | | return _hydroInfo; |
| | | } |
| | |
| | | if (!_allSchemeHydroInfoDict.ContainsKey(scheme)) |
| | | { |
| | | hydroInfo = await GetHydroInfo(scheme); |
| | | _allSchemeHydroInfoDict.Add(scheme, hydroInfo); |
| | | return hydroInfo; |
| | | if (hydroInfo == null) |
| | | { |
| | | return default; |
| | | } |
| | | if (!_allSchemeHydroInfoDict.ContainsKey(scheme)) |
| | | { |
| | | _allSchemeHydroInfoDict.Add(scheme, hydroInfo); |
| | | } |
| | | } |
| | | return _allSchemeHydroInfoDict[scheme]; |
| | | } |
| | | |
| | | if (_allSchemeHydroInfoDict.ContainsKey(scheme)) |
| | |
| | | _allSchemeHydroInfoDict.Add(scheme, hydroInfo); |
| | | } |
| | | |
| | | return hydroInfo; |
| | | return _allSchemeHydroInfoDict[scheme]; |
| | | } |
| | | |
| | | //获取水力信息 |
| | |
| | | if (_projectSite == null) |
| | | { |
| | | return default; |
| | | } |
| | | string key = $"{_project.ID}-{_projectSite.ID}-{scheme?.ID}"; |
| | | if (_gettingHydroInfoDict.TryGetValue(key, out bool getting)) |
| | | { |
| | | if (getting) |
| | | { |
| | | return default; |
| | | } |
| | | } |
| | | |
| | | WaitFormHelper.ShowWaitForm(this.FindForm(), "正在加载模型数据,请稍后..."); |
| | | //var overlay = this.ShowOverlay(); |
| | | if (!_gettingHydroInfoDict.TryAdd(key, true)) |
| | | { |
| | | _gettingHydroInfoDict[key] = true; |
| | | } |
| | | |
| | | HydroModelRelationVmo relation = null; |
| | |
| | | { |
| | | return default; |
| | | } |
| | | var hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(relation.ModelID); |
| | | //var hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(relation.ModelID); |
| | | var hydroInfo = await HStation.BLL.XhsHydroInfo.GetByID(relation.ModelID); |
| | | _gettingHydroInfoDict[key] = false; |
| | | //overlay.Close(); |
| | | WaitFormHelper.HideWaitForm(); |
| | | return hydroInfo; |
| | | } |
| | | |
| | |
| | | elementWorking.Click += async (sender, e) => |
| | | { |
| | | var hydroInfo = await GetHydroInfo(null, true); |
| | | if (hydroInfo == null) |
| | | { |
| | | return; |
| | | } |
| | | this.ShowProjectSiteWorkingEvent?.Invoke(_project, _projectSite, null, hydroInfo, working, this.svgImg32[4]); |
| | | }; |
| | | this.elementProjectSiteSimulation.Elements.Add(elementWorking); |
| | |
| | | elementWorking.Click += async (sender, e) => |
| | | { |
| | | var hydroInfo = await GetHydroInfo(scheme, true); |
| | | if (hydroInfo == null) |
| | | { |
| | | return; |
| | | } |
| | | this.ShowProjectSiteWorkingEvent?.Invoke(_project, _projectSite, scheme, hydroInfo, working, this.svgImg32[4]); |
| | | }; |
| | | elementScheme.Elements.Add(elementWorking); |
| | |
| | | { |
| | | return default; |
| | | } |
| | | var id = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.Save(hydroInfo); |
| | | //var id = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.Save(hydroInfo); |
| | | var id = await HStation.BLL.XhsHydroInfo.Save(hydroInfo); |
| | | if (id < 1) |
| | | { |
| | | return default; |