namespace HStation.Hydro { /// /// /// internal static class PropStatusHelper { /// /// 获取属性状态 /// public static HStation.Model.RevitPropStatus GetPropStatus(this HStation.Model.RevitParter rhs, string propName) { var propStatus = rhs.PropStatusList?.Find(x => x.PropName == propName); return propStatus; } /// /// 更新属性状态 /// public static void UpdatePropStatus(this Yw.Model.HydroParterInfo info, string propNameInfo, HStation.Model.RevitParter revit, string propNameRevit) { var propStatusInfo = info.GetPropStatus(propNameInfo); var propStatusRevit = revit.GetPropStatus(propNameRevit); if (propStatusRevit == null) { if (propStatusInfo != null) { info.PropStatusList.Remove(propStatusInfo); } return; } if (propStatusInfo == null) { propStatusInfo = new Yw.Model.HydroParterPropStatusInfo() { PropName = propNameInfo, PropStatus = (Yw.Hydro.ePropStatus)(int)propStatusRevit.PropStatus, StatusInfo = propStatusRevit.StatusInfo }; if (info.PropStatusList == null) { info.PropStatusList = new List(); } info.PropStatusList.Add(propStatusInfo); } else { propStatusInfo.PropStatus = (Yw.Hydro.ePropStatus)(int)propStatusRevit.PropStatus; propStatusInfo.StatusInfo = propStatusRevit.StatusInfo; } } } }