namespace HStation.Hydro
|
{
|
/// <summary>
|
///
|
/// </summary>
|
internal static class PropStatusHelper
|
{
|
/// <summary>
|
/// 获取属性状态
|
/// </summary>
|
public static HStation.Model.RevitPropStatus GetPropStatus(this HStation.Model.RevitParter rhs, string propName)
|
{
|
var propStatus = rhs.PropStatusList?.Find(x => x.PropName == propName);
|
return propStatus;
|
}
|
|
/// <summary>
|
/// 获取属性状态
|
/// </summary>
|
public static Yw.Model.HydroParterPropStatusInfo GetPropStatus(this Yw.Model.HydroParterInfo rhs, string propName)
|
{
|
var propStatus = rhs.PropStatusList?.Find(x => x.PropName == propName);
|
return propStatus;
|
}
|
|
/// <summary>
|
/// 更新属性状态
|
/// </summary>
|
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<Yw.Model.HydroParterPropStatusInfo>();
|
}
|
info.PropStatusList.Add(propStatusInfo);
|
}
|
else
|
{
|
propStatusInfo.PropStatus = (Yw.Hydro.ePropStatus)(int)propStatusRevit.PropStatus;
|
propStatusInfo.StatusInfo = propStatusRevit.StatusInfo;
|
}
|
}
|
|
|
|
}
|
}
|