54 lines
1.7 KiB
C#
Raw Normal View History

2024-08-21 16:50:14 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using YunDa.ISAS.DataTransferObject.DataMonitoring.LinkageConditionDto;
using YunDa.ISAS.DataTransferObject.DataMonitoring.LinkageStrategyDto;
namespace Yunda.ISAS.DataMonitoringServer.DataAnalysis.Model
{
public class LinkageStrategyModel : MonitoringLinkageStrategyOutput
{
/// <summary>
/// 该联动是否已经发生
/// </summary>
public bool IsHappened { get; set; } = false;
private Dictionary<Guid, LinkageConditionProperty> _linkageConditionDic = null;
/// <summary>
/// 触发联动的数据Id
/// </summary>
public Guid ConfigurationId { get; set; }
/// <summary>
/// 上次联动判断结果
/// </summary>
public bool LastLinkState { get; set; }
/// <summary>
/// 上次联动时间
/// </summary>
public DateTime LastLinkTime { get; set; }
/// <summary>
/// 条件字典
/// </summary>
public Dictionary<Guid, LinkageConditionProperty> LinkageConditionDic
{
get
{
if (LinkageConditions == null || LinkageConditions.Count() == 0)
{
_linkageConditionDic = new Dictionary<Guid, LinkageConditionProperty>();
return _linkageConditionDic;
}
if (_linkageConditionDic == null || _linkageConditionDic.Count == 0)
_linkageConditionDic = LinkageConditions.ToDictionary(key => key.Id, value => value);
return _linkageConditionDic;
}
set
{
_linkageConditionDic = value;
}
}
}
}