| | |
| | | namespace HStation.WinFrmUI |
| | | using SqlSugar; |
| | | |
| | | namespace HStation.WinFrmUI |
| | | { |
| | | /// <summary> |
| | | /// 资产匹配参数辅助类 |
| | |
| | | { |
| | | return default; |
| | | } |
| | | return new ValveMatchingViewModel() |
| | | { |
| | | ID = valveInfo.ID, |
| | | Code = valveInfo.Code, |
| | | Name = valveInfo.Name, |
| | | DbLocked = valveInfo.DbLocked, |
| | | ModelType = valveInfo.ModelType, |
| | | DbId = valveInfo.DbId, |
| | | Diameter = valveInfo.Diameter, |
| | | Material = valveInfo.Material, |
| | | MinorLoss = valveInfo.MinorLoss, |
| | | ValveType = valveInfo.ValveType |
| | | }; |
| | | return new ValveMatchingViewModel(valveInfo, hydroInfo, allCalcuResultList); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | { |
| | | curveqh = new Yw.Model.HydroCurveInfo(); |
| | | curveqh.Catalog = Yw.Hydro.ParterCatalog.Curve; |
| | | curveqh.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", GetAllCodeList(hydroInfo)); |
| | | curveqh.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); |
| | | curveqh.Name = "匹配"; |
| | | curveqh.ModelType = string.Empty; |
| | | curveqh.DbLocked = false; |
| | |
| | | { |
| | | if (!curveqh.DbLocked) |
| | | { |
| | | curveqh.DbId = matching.MatchingDbId; |
| | | curveqh.DbId = matching.MatchingCurveDbId; |
| | | curveqh.CurveData = matching.MatchingCurveQH?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); |
| | | } |
| | | } |
| | |
| | | { |
| | | curveqp = new Yw.Model.HydroCurveInfo(); |
| | | curveqp.Catalog = Yw.Hydro.ParterCatalog.Curve; |
| | | curveqp.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", GetAllCodeList(hydroInfo)); |
| | | curveqp.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); |
| | | curveqp.Name = "匹配"; |
| | | curveqp.ModelType = string.Empty; |
| | | curveqp.DbLocked = false; |
| | |
| | | { |
| | | if (!curveqp.DbLocked) |
| | | { |
| | | curveqp.DbId = matching.MatchingDbId; |
| | | curveqp.DbId = matching.MatchingCurveDbId; |
| | | curveqp.CurveData = matching.MatchingCurveQP?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); |
| | | } |
| | | } |
| | |
| | | { |
| | | curveqe = new Yw.Model.HydroCurveInfo(); |
| | | curveqe.Catalog = Yw.Hydro.ParterCatalog.Curve; |
| | | curveqe.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", GetAllCodeList(hydroInfo)); |
| | | curveqe.Code = Yw.Untity.UniqueHelper.CreateFromFirst("curve", hydroInfo.GetAllParterCodes()); |
| | | curveqe.Name = "匹配"; |
| | | curveqe.ModelType = string.Empty; |
| | | curveqe.DbLocked = false; |
| | |
| | | { |
| | | if (!curveqe.DbLocked) |
| | | { |
| | | curveqe.DbId = matching.MatchingDbId; |
| | | curveqe.DbId = matching.MatchingCurveDbId; |
| | | curveqe.CurveData = matching.MatchingCurveQE?.Select(x => new Yw.Model.Hydro.CurvePoint(x.X, x.Y)).ToList(); |
| | | } |
| | | } |
| | |
| | | { |
| | | valve.DbLocked = matching.DbLocked; |
| | | valve.ModelType = matching.ModelType; |
| | | valve.Diameter = matching.Diameter; |
| | | valve.Material = matching.Material; |
| | | valve.Diameter = matching.Diameter; |
| | | valve.MinorLoss = matching.MinorLoss; |
| | | valve.ValveType = matching.ValveType; |
| | | //valve.ValveSetting = matching.ValveSetting; |
| | | 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.MatchingModelType)) |
| | | { |
| | | valve.ModelType = matching.MatchingModelType; |
| | | } |
| | | if (!string.IsNullOrEmpty(matching.MatchingDbId)) |
| | | { |
| | | valve.DbId = matching.MatchingDbId; |
| | | } |
| | | if (matching.MatchingDiameter.HasValue) |
| | | if (!string.IsNullOrEmpty(matching.MatchingModelType)) |
| | | { |
| | | valve.Diameter = matching.MatchingDiameter.Value; |
| | | 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 (!string.IsNullOrEmpty(matching.MatchingValveType)) |
| | | if (matching.MatchingValveType.HasValue) |
| | | { |
| | | valve.ValveType = matching.MatchingValveType; |
| | | 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; |
| | | } |
| | | } |
| | | if (!string.IsNullOrEmpty(matching.MatchingValveSetting)) |
| | | switch (valve.ValveType) |
| | | { |
| | | valve.ValveSetting = matching.MatchingValveSetting; |
| | | 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; |
| | | } |
| | | } |