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; } }