using System;
using System.Text;
namespace MainForm
{
///
/// 报警详情
///
public class AlarmData
{
#region 数据
///
/// 主键
///
public string GUID;
///
/// 线体名称
///
public string LineName;
///
/// 报警类型
///
public string AlarmType;
///
/// 报警内容
///
public string AlarmDesc;
///
/// 开始时间
///
public DateTime StartTime;
///
/// 结束时间
///
public DateTime EndTime;
///
/// 耗时(s)
///
public int PersistTime;
#endregion 数据
///
/// 添加报警数据
///
///
///
//public string ToStringInsert(int upload)
public string ToStringInsert()
{
if (EndTime == new DateTime())
{
return string.Format(
"insert into AlarmData " +
"(" +
"GUID," +
"LineName," +
"AlarmType," +
"AlarmDesc," +
"StartTime," +
//"EndTime," +
"PersistTime" +
") " +
"values('{0}','{1}','{2}','{3}','{4}',{5})",
GUID,
LineName,
AlarmType,
AlarmDesc,
StartTime,
//EndTime,
PersistTime
);
}
else
{
return string.Format(
"insert into AlarmData " +
"(" +
"GUID," +
"LineName," +
"AlarmType," +
"AlarmDesc," +
"StartTime," +
"EndTime," +
"PersistTime" +
") " +
"values('{0}','{1}','{2}','{3}','{4}','{5}',{6})",
GUID,
LineName,
AlarmType,
AlarmDesc,
StartTime,
EndTime,
PersistTime
);
}
}
///
/// 更新报警数据
///
///
///
public string ToStringUpdate()
{
return string.Format(
"update AlarmData " +
"set " +
"EndTime = '{0}', " +
"PersistTime = '{1}' " +
"where GUID = '{2}'",
EndTime,
PersistTime,
GUID
);
}
// 更新上传状态
//public static string ToStringUpdateStatusByID(int upload, string guid)
//{
// return string.Format(
// "update AlarmData " +
// "set " +
// "upload = '{0}' " +
// "where GUID = '{1}'",
// upload,
// guid
// );
//}
///
/// 查询报警数据
///
///
///
/////
///
//public string ToStringQuery(string startDate, string endDate, string sendStatus)
public string ToStringQuery(string startDate, string endDate)
{
//switch (sendStatus)
//{
// case "All":
// sendStatus = "All";
// break;
// case "已上传":
// sendStatus = "1";
// break;
// case "未上传":
// sendStatus = "0";
// break;
//}
StringBuilder strSQL = new StringBuilder();
strSQL.AppendFormat("select " +
"GUID as 主键, " +
"LineName 线体名称," +
"AlarmType 报警类型," +
"AlarmDesc 报警内容," +
"StartTime 开始时间," +
"EndTime 结束时间," +
"PersistTime 耗时" +
" from AlarmData " +
" where convert(datetime,EndTime,120) " +
" between convert(datetime, '{0}', 120) " +
" and convert(datetime, '{1}', 120) ",
startDate,
endDate
);
//if (LineName != "All")
//{
// strSQL.AppendFormat("and LineName='{0}' ", LineName);
//}
//if (sendStatus != "All")
//{
// strSQL.AppendFormat("and upload='{0}' ", sendStatus);
//}
return strSQL.ToString();
}
}
///
/// 报警字典信息
///
public class Alarm
{
public string 报警类型 { get; set; } = string.Empty;
public string 报警详情 { get; set; } = string.Empty;
///
/// true 报警
/// false 正常
///
public bool 上次的运行状态 { get; set; } = false;
public bool 是否报警 { get; set; } = false;
public int 关联的PLC地址 { get; set; }
public AlarmData 报警数据 = null;
}
}