using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using Yw.Hydro;
|
using Yw.Service;
|
|
namespace Yw.WinFrmUI
|
{
|
/// <summary>
|
/// 构件属性状态辅助类
|
/// </summary>
|
public class HydroParterPropStatusHelper
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public HydroParterPropStatusHelper
|
(
|
Yw.Model.HydroModelInfo hydroInfo,
|
List<Yw.Model.HydroParterPropStatusInfo> allPropStatusDbList
|
)
|
{
|
_hydroInfo = hydroInfo;
|
_dict = _hydroInfo.ToPropStatusInfoDict(allPropStatusDbList);
|
}
|
|
private Yw.Model.HydroModelInfo _hydroInfo = null;//水力信息
|
private Dictionary<string, List<Yw.Model.HydroParterPropStatusInfo>> _dict = null;//字典
|
|
/// <summary>
|
/// 获取属性状态Db列表
|
/// </summary>
|
public List<Yw.Model.HydroParterPropStatusInfo> GetPropStatusDbList()
|
{
|
return _hydroInfo.ToPropStatusDbList(_dict);
|
}
|
|
/// <summary>
|
/// 更新属性状态
|
/// </summary>
|
public void UpdatePropStatus(Yw.Model.HydroParterInfo parter, string propName, ePropStatus propStatus, string statusInfo)
|
{
|
if (!_dict.ContainsKey(parter.Code))
|
{
|
return;
|
}
|
if (_dict[parter.Code] == null)
|
{
|
_dict[parter.Code] = new List<Model.HydroParterPropStatusInfo>();
|
}
|
var list = _dict[parter.Code];
|
var propStatusInfo = parter.GetPropStatus(list, propName);
|
if (propStatusInfo == null)
|
{
|
propStatusInfo.Parter = parter.Code;
|
propStatusInfo.PropName = propName;
|
}
|
propStatusInfo.PropStatus = propStatus;
|
propStatusInfo.StatusInfo = statusInfo;
|
}
|
|
|
}
|
}
|