From ba4fd2f2456a3cee97cc90204c9e21505a42b2aa Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期五, 25 十月 2024 14:40:09 +0800
Subject: [PATCH] 优化Revit解析

---
 Service/HStation.Service.Revit.Core/04-service/01-json/RevitJsonHelper.cs |   89 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 88 insertions(+), 1 deletions(-)

diff --git a/Service/HStation.Service.Revit.Core/04-service/01-json/RevitJsonHelper.cs b/Service/HStation.Service.Revit.Core/04-service/01-json/RevitJsonHelper.cs
index f3b8866..17fc912 100644
--- a/Service/HStation.Service.Revit.Core/04-service/01-json/RevitJsonHelper.cs
+++ b/Service/HStation.Service.Revit.Core/04-service/01-json/RevitJsonHelper.cs
@@ -1,4 +1,6 @@
-锘縩amespace HStation.Service
+锘縰sing System.Transactions;
+
+namespace HStation.Service
 {
     /// <summary>
     /// Revit Json杈呭姪绫�
@@ -301,6 +303,7 @@
             }
 
             var junction = new Model.RevitJunction();
+            junction.Catalog = RevitJsonCatalog.Junction;
 
             #region Id 
 
@@ -533,6 +536,7 @@
             }
 
             var nozzle = new Model.RevitNozzle();
+            nozzle.Catalog = RevitJsonCatalog.Nozzle;
 
             #region Id 
 
@@ -795,6 +799,7 @@
             }
 
             var hydrant = new Model.RevitHydrant();
+            hydrant.Catalog = RevitJsonCatalog.Hydrant;
 
             #region Id 
 
@@ -1055,6 +1060,7 @@
             }
 
             var blunthead = new Model.RevitBlunthead();
+            blunthead.Catalog = RevitJsonCatalog.Blunthead;
 
             #region Id 
 
@@ -1330,6 +1336,7 @@
             }
 
             var elbow = new Model.RevitElbow();
+            elbow.Catalog = RevitJsonCatalog.Elbow;
 
             #region Id 
 
@@ -1605,6 +1612,7 @@
             }
 
             var threelink = new Model.RevitThreelink();
+            threelink.Catalog = RevitJsonCatalog.Threelink;
 
             #region Id 
 
@@ -1880,6 +1888,7 @@
             }
 
             var fourlink = new Model.RevitFourlink();
+            fourlink.Catalog = RevitJsonCatalog.Fourlink;
 
             #region Id 
 
@@ -2155,6 +2164,7 @@
             }
 
             var meter = new Model.RevitMeter();
+            meter.Catalog = RevitJsonCatalog.Meter;
 
             #region Id 
 
@@ -2387,6 +2397,7 @@
             }
 
             var flowmeter = new Model.RevitFlowmeter();
+            flowmeter.Catalog = RevitJsonCatalog.Flowmeter;
 
             #region Id 
 
@@ -2607,6 +2618,19 @@
 
             #endregion
 
+            #region Flow
+
+            if (jobject[RevitJsonProp.Flow].MatchNumeric(out double flow))
+            {
+                flowmeter.CurrentFlow = flow;
+            }
+            else
+            {
+                flowmeter.AppendOrUpdatePropStatus(nameof(flowmeter.CurrentFlow), ePropStatus.Abnormal, "[娴侀噺]缂哄皯鎴栬�呮暟鎹牸寮忛敊璇�");
+            }
+
+            #endregion
+
             return flowmeter;
         }
 
@@ -2619,6 +2643,7 @@
             }
 
             var pressmeter = new Model.RevitPressmeter();
+            pressmeter.Catalog = RevitJsonCatalog.Pressmeter;
 
             #region Id 
 
@@ -2839,6 +2864,19 @@
 
             #endregion
 
+            #region Press
+
+            if (jobject[RevitJsonProp.Press].MatchNumeric(out double press))
+            {
+                pressmeter.CurrentPress = Yw.Pump.CalculationHelper.Mpa2M(press);
+            }
+            else
+            {
+                pressmeter.AppendOrUpdatePropStatus(nameof(pressmeter.CurrentPress), ePropStatus.Abnormal, "[鍘嬪姏]缂哄皯鎴栬�呮暟鎹牸寮忛敊璇�");
+            }
+
+            #endregion
+
             return pressmeter;
         }
 
@@ -2851,6 +2889,7 @@
             }
 
             var reservoir = new Model.RevitReservoir();
+            reservoir.Catalog = RevitJsonCatalog.Reservoir;
 
             #region Id 
 
@@ -3083,6 +3122,7 @@
             }
 
             var tank = new Model.RevitTank();
+            tank.Catalog = RevitJsonCatalog.Tank;
 
             #region Id 
 
@@ -3372,6 +3412,7 @@
             }
 
             var waterbox = new Model.RevitWaterbox();
+            waterbox.Catalog = RevitJsonCatalog.Waterbox;
 
             #region Id 
 
@@ -3661,6 +3702,7 @@
             }
 
             var pipe = new Model.RevitPipe();
+            pipe.Catalog = RevitJsonCatalog.Pipe;
 
             #region Id 
 
@@ -4063,6 +4105,7 @@
             }
 
             var translation = new Model.RevitTranslation();
+            translation.Catalog = RevitJsonCatalog.Translation;
 
             #region Id 
 
@@ -4465,6 +4508,7 @@
             }
 
             var exchanger = new Model.RevitExchanger();
+            exchanger.Catalog = RevitJsonCatalog.Exchanger;
 
             #region Id 
 
@@ -4855,6 +4899,19 @@
 
             #endregion
 
+            #region MinorLossK
+
+            if (jobject[RevitJsonProp.MinorLossK].MatchNumeric(out double minorLossK))
+            {
+                exchanger.MinorLossK = minorLossK;
+            }
+            else
+            {
+                exchanger.AppendOrUpdatePropStatus(nameof(exchanger.MinorLossK), ePropStatus.Abnormal, "[鎹㈢儹鍣╙[鎹熷けK绯绘暟]缂哄皯鎴栬�呮暟鎹牸寮忛敊璇�");
+            }
+
+            #endregion
+
             return exchanger;
         }
 
@@ -4867,6 +4924,7 @@
             }
 
             var compressor = new Model.RevitCompressor();
+            compressor.Catalog = RevitJsonCatalog.Compressor;
 
             #region Id 
 
@@ -5257,6 +5315,19 @@
 
             #endregion
 
+            #region MinorLossK
+
+            if (jobject[RevitJsonProp.MinorLossK].MatchNumeric(out double minorLossK))
+            {
+                compressor.MinorLossK = minorLossK;
+            }
+            else
+            {
+                compressor.AppendOrUpdatePropStatus(nameof(compressor.MinorLossK), ePropStatus.Abnormal, "[绌哄帇鏈篯[鎹熷けK绯绘暟]缂哄皯鎴栬�呮暟鎹牸寮忛敊璇�");
+            }
+
+            #endregion
+
             return compressor;
         }
 
@@ -5268,6 +5339,7 @@
                 return default;
             }
             var pump = new Model.RevitPump();
+            pump.Catalog = RevitJsonCatalog.Pump;
 
             #region Id 
 
@@ -5758,6 +5830,7 @@
                 return default;
             }
             var valve = new Model.RevitValve();
+            valve.Catalog = RevitJsonCatalog.Valve;
 
             #region Id 
 
@@ -6114,6 +6187,20 @@
 
             #endregion
 
+            #region OpeningDegree
+
+            if (jobject[RevitJsonProp.ValveOpeningDegree].MatchNumeric(out double openingDegree))
+            {
+                valve.OpeningDegree = openingDegree;
+            }
+            else
+            {
+                valve.OpeningDegree = 100;
+                valve.AppendOrUpdatePropStatus(nameof(valve.MinorLoss), ePropStatus.Abnormal, "[闃�闂ㄥ紑搴缂哄皯鎴栬�呮暟鎹牸寮忛敊璇紝浣跨敤榛樿鍊�(100)杩涜淇");
+            }
+
+            #endregion
+
             #region ValveSetting
 
             if (jobject.ParseString(RevitJsonProp.ValveSetting, out string valveSetting))

--
Gitblit v1.9.3