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;
}
}
}
}