lixiaojun
2024-08-14 eb4679bfe7f2c945f3e03f6927c8fde893f7d33c
Service/HStation.Service.Revit.Core/04-service/02-correct/RevitCorrectHelper.cs
@@ -176,7 +176,7 @@
                        startJunction.ModelType = null;
                        startJunction.Description = "换热器修正时,自动添加";
                        startJunction.Quality = exchanger.StartQuality;
                        startJunction.Position = exchanger.StartPosition;
                        startJunction.Position = startConnectList.GetCenterPosition();
                        startJunction.Elev = exchanger.StartElev;
                        startJunction.Demand = null;
                        startJunction.DemandPattern = null;
@@ -187,7 +187,14 @@
                            var startConnectParter = allParterList.Find(x => x.Id == startConnect.Id);
                            if (startConnectParter is IRevitLink revitLink)
                            {
                                if (revitLink.StartCode == exchanger.Id)
                                {
                                    revitLink.StartCode = startJunction.Id;
                                }
                                else if (revitLink.EndCode == exchanger.Id)
                                {
                                revitLink.EndCode = startJunction.Id;
                                }
                            }
                        }
                        allParterList.Add(startJunction);
@@ -206,7 +213,7 @@
                        endJunction.ModelType = null;
                        endJunction.Description = "换热器修正时,自动添加";
                        endJunction.Quality = exchanger.EndQuality;
                        endJunction.Position = exchanger.EndPosition;
                        endJunction.Position = endConnectList.GetCenterPosition();
                        endJunction.Elev = exchanger.EndElev;
                        endJunction.Demand = null;
                        endJunction.DemandPattern = null;
@@ -217,7 +224,14 @@
                            var endConnectParter = allParterList.Find(x => x.Id == endConnect.Id);
                            if (endConnectParter is IRevitLink revitLink)
                            {
                                if (revitLink.StartCode == exchanger.Id)
                                {
                                revitLink.StartCode = endJunction.Id;
                                }
                                else if (revitLink.EndCode == exchanger.Id)
                                {
                                    revitLink.EndCode = endJunction.Id;
                                }
                            }
                        }
                        allParterList.Add(endJunction);
@@ -262,7 +276,7 @@
            foreach (var link in allLinks)
            {
                var startLinkParter = allParterList.Find(x => x.Code == link.StartCode);
                if (startLinkParter is IRevitLink)
                if (startLinkParter is IRevitLink startLink)
                {
                    var junction = new Model.RevitJunction();
                    junction.Id = Yw.Untity.UniqueHelper.CreateFromFirst("junction", allParterList.Select(x => x.Code).ToList());
@@ -278,12 +292,20 @@
                    junction.DemandPattern = null;
                    rhs.Junctions.Add(junction);
                    link.StartCode = junction.Code;
                    (startLinkParter as IRevitLink).EndCode = junction.Code;
                    if (startLink.StartCode == link.StartCode)
                    {
                        startLink.StartCode = junction.Code;
                    }
                    else if (startLink.EndCode == link.StartCode)
                    {
                        startLink.EndCode = junction.Code;
                    }
                    allParterList.Add(junction);
                }
                var endLinkParter = allParterList.Find(x => x.Code == link.EndCode);
                if (endLinkParter is IRevitLink)
                if (endLinkParter is IRevitLink endLink)
                {
                    var junction = new Model.RevitJunction();
                    junction.Id = Yw.Untity.UniqueHelper.CreateFromFirst("junction", allParterList.Select(x => x.Code).ToList());
@@ -299,7 +321,14 @@
                    junction.DemandPattern = null;
                    rhs.Junctions.Add(junction);
                    link.EndCode = junction.Code;
                    (endLinkParter as IRevitLink).StartCode = junction.Code;
                    if (endLink.StartCode == link.EndCode)
                    {
                        endLink.StartCode = junction.Code;
                    }
                    else if (endLink.EndCode == link.EndCode)
                    {
                        endLink.EndCode = junction.Code;
                    }
                    allParterList.Add(junction);
                }
            }