From ccdc621d089fcffaca72b576baa4a121264f9949 Mon Sep 17 00:00:00 2001
From: cloudflight <cloudflight@126.com>
Date: 星期六, 22 六月 2024 14:00:55 +0800
Subject: [PATCH] fix:CubeView移动问题

---
 Hydraulic/Hydro.MapView/MapViewNetWork.cs |   37 +++++++++++++++++++++++++++++--------
 1 files changed, 29 insertions(+), 8 deletions(-)

diff --git a/Hydraulic/Hydro.MapView/MapViewNetWork.cs b/Hydraulic/Hydro.MapView/MapViewNetWork.cs
index 55f5430..b776855 100644
--- a/Hydraulic/Hydro.MapView/MapViewNetWork.cs
+++ b/Hydraulic/Hydro.MapView/MapViewNetWork.cs
@@ -1019,46 +1019,65 @@
             return list;
             //return new List<TimePoint>();
         }
-        public string CheckValidate()
+        public Dictionary<string, List<string>> CheckValidate()
         {
             BuildRelation();
             string result = null;
+            Dictionary<string, List<string>> result_dict = new Dictionary<string, List<string>>();
             StringBuilder result_sb=new StringBuilder();
             //to-do
-            var objs = new List<LinkViewModel>() { Links[0] }; //Links.FindAll(o => o is LinkViewModel).Select(o => o as LinkViewModel).ToList();
+            var objs = Links.Select(o => o as LinkViewModel).ToList();//new List<LinkViewModel>() { Links[0] }; //Links.FindAll(o => o is LinkViewModel).Select(o => o as LinkViewModel).ToList();
             //objs鍘绘帀閲嶅鐨勫厓绱�
             objs = objs.Distinct().ToList();
             var visitedNodes = new HashSet<NodeViewModel>();
             FindObjs = new HashSet<IBaseViewModel>();
             objs.ForEach(o => TraversePipeNetworkALL(o, visitedNodes));
-
+            List<string> list_瀛ょ珛鐐� = new List<string>();
             for(int i=0;i<Nodes.Count;i++)
             {
-                if (!FindObjs.Contains(Nodes[i])) result_sb .AppendLine($"鑺傜偣{Nodes[i].ID}鏄绔嬬偣");
+                if (!FindObjs.Contains(Nodes[i]))
+                {
+                    result_sb.AppendLine($"鑺傜偣{Nodes[i].ID}鏄绔嬬偣");
+                    list_瀛ょ珛鐐�.Add(Nodes[i].ID);
+                }
+                    
             }
+            if (list_瀛ょ珛鐐�.Count>0)result_dict.Add("瀛ょ珛鐐�", list_瀛ょ珛鐐�);
             //灞炴�у垽鏂�
+            var list_绠¢亾杩炴帴鍏崇郴寮傚父 = new List<string>();
+            var list_绠¢亾闀垮害灏忎簬绛変簬0 = new List<string>();
+            var list_绮楃硻绯绘暟璁剧疆閿欒 = new List<string>();
+            var list_绠″緞璁剧疆閿欒 = new List<string>();
 
             pipes.ForEach(p =>
             {
                 if (p.StartNode == null || p.EndNode == null)
                 {
-                    result_sb.AppendLine($"{p.ID}绠¢亾鏈繛鎺�");
+                    result_sb.AppendLine($"{p.ID}绠¢亾杩炴帴鍏崇郴寮傚父");
+                    list_绠¢亾杩炴帴鍏崇郴寮傚父.Add(p.ID);
                 }
                 if (p.Length<=0)
                 {
                     result_sb.AppendLine($"{p.ID}绠¢亾闀垮害灏忎簬绛変簬0");
+                    list_绠¢亾闀垮害灏忎簬绛変簬0.Add(p.ID);
                 }
                 if (p.Roughness<=0.1 || p.Roughness>10000)
                 {
                     result_sb.AppendLine($"{p.ID}绮楃硻绯绘暟璁剧疆閿欒");
+                    list_绮楃硻绯绘暟璁剧疆閿欒.Add(p.ID);
                 }
                 if (p.Diameter<=0.1 || p.Diameter>10000)
                 {
                     result_sb.AppendLine($"{p.ID}绠″緞璁剧疆閿欒");
+                    list_绠″緞璁剧疆閿欒.Add(p.ID);
                 }
 
             });
-            return result_sb.ToString();
+            if (list_绠¢亾杩炴帴鍏崇郴寮傚父.Count > 0) result_dict.Add("绠¢亾杩炴帴鍏崇郴寮傚父", list_绠¢亾杩炴帴鍏崇郴寮傚父);
+            if (list_绠¢亾闀垮害灏忎簬绛変簬0.Count > 0) result_dict.Add("绠¢亾闀垮害灏忎簬绛変簬0", list_绠¢亾闀垮害灏忎簬绛変簬0);
+            if (list_绮楃硻绯绘暟璁剧疆閿欒.Count > 0) result_dict.Add("绮楃硻绯绘暟璁剧疆閿欒", list_绮楃硻绯绘暟璁剧疆閿欒);
+            if (list_绠″緞璁剧疆閿欒.Count > 0) result_dict.Add("绠″緞璁剧疆閿欒", list_绠″緞璁剧疆閿欒);
+            return result_dict;
 
           
 
@@ -1187,7 +1206,8 @@
                     }
                     if (k2 == list.Count)
                     {
-                        throw new Exception($"鏈壘鍒癗ode[{J.ID}]鐨剓valueType}");
+                        return;
+                        //throw new Exception($"鏈壘鍒癗ode[{J.ID}]鐨剓valueType}");
                     }
                     switch (valueType)
                     {
@@ -1228,7 +1248,8 @@
                     }
                     if (k2 == list.Count)
                     {
-                        throw new Exception($"鏈壘鍒癓ink[{J.ID}]鐨剓valueType}");
+                        return;
+                        //throw new Exception($"鏈壘鍒癓ink[{J.ID}]鐨剓valueType}");
                     }
                     switch (valueType)
                     {

--
Gitblit v1.9.3