using iWare_SCADA_BusinessLogical.BLL;
|
using iWare_SCADA_BusinessLogical.Utils;
|
using iWare_SCADA_Model;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace iWare_SCADA_BusinessLogical
|
{
|
/// <summary>
|
/// 数据收集基类
|
/// </summary>
|
public abstract class DataCaptureHandler
|
{
|
public static string WorkPieceID { get; set; }
|
public DataCaptureConfig _dataCaptureConfig = new DataCaptureConfig();
|
//public List<DataCaptureColumnConfig> _columnList = new List<DataCaptureColumnConfig>();
|
/// <summary>
|
/// 是否收集数据,默认收集
|
/// </summary>
|
public bool IsCaptureflag = true;
|
/// <summary>
|
/// 工序号
|
/// </summary>
|
public abstract string WorkingProcedure { get;}
|
|
/// <summary>
|
/// 数据收集点代码
|
/// </summary>
|
public abstract string DataCapturePointCode { get;}
|
|
/// <summary>
|
/// 收集收集点描述
|
/// </summary>
|
public abstract string DataCapturePointCname { get;}
|
|
/// <summary>
|
/// 根据新的配置信息,刷新各自的数据
|
/// </summary>
|
/// <param name="dataCaptureConfig"></param>
|
public abstract void RefreshDataList(List<DataCaptureConfig> dataCaptureConfig);
|
/// <summary>
|
/// 数据收集开始
|
/// </summary>
|
/// <param name="dataCaptureColumnDict">数据收集配置信息</param>
|
/// <returns></returns>
|
public abstract void DataCaptureStart();
|
/// <summary>
|
/// 配置的各监控点需获取的数据
|
/// </summary>
|
public static List<DataCaptureColumnConfig> colConfig;
|
/// <summary>
|
/// 心跳告警间隔
|
/// </summary>
|
public static int heartBeatAlertInterval = 3;
|
/// <summary>
|
/// 刷新公共类需要的数据
|
/// </summary>
|
public static void RefreshDataCommonStatic()
|
{
|
try
|
{
|
//获取配置的数据获取方式
|
colConfig= DataCaptureConfigManager.GetDataCaptureColumnConfig();
|
var heartBeat =ConfigHelper.GetConfigString("HeartBeatAlertInterval");
|
if(string.IsNullOrEmpty(heartBeat))
|
{
|
heartBeatAlertInterval = 3;
|
}else
|
{
|
if(!int.TryParse(heartBeat, out heartBeatAlertInterval))
|
{
|
heartBeatAlertInterval = 3;
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
|
}
|
}
|
|
}
|
}
|