using HMI.Base;
using HMI.Core.Util;
using System;
using System.IO;
using System.Timers;
using System.Windows;
using System.Windows.Controls;
namespace HMI.AlarmInfoManage
{
///
/// UserControl1.xaml 的交互逻辑
///
public partial class SimpleAlarm : PluginControl
{
private string dbPath;
private SqliteHelper sqliteHelper;
private Timer MonitorTimer;
public SimpleAlarm()
{
DataContext = this;
InitializeComponent();
}
public override void InitFinish()
{
dbPath = Path.Combine(BaseFolder, "alarm.db");
if (!File.Exists(dbPath))
{
SqliteHelper.CreateDatabase(dbPath);
sqliteHelper = new SqliteHelper(dbPath);
sqliteHelper.ExecuteSql(@"CREATE TABLE IF NOT EXISTS Alarm (
id INTEGER PRIMARY KEY AUTOINCREMENT,
source TEXT NOT NULL,
alarmcode TEXT,
alarminfo TEXT,
time DATETIME);");
}
}
private void Button_Click(object sender, RoutedEventArgs e)
{
Button btn = sender as Button;
switch (btn.Name)
{
case "refreshBtn":
//Model.
break;
case "exportBtn":
//ImportText();
break;
default:
break;
}
}
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
MonitorTimer = new Timer
{
Interval = 100,
};
MonitorTimer.Elapsed += MonitorTimer_Elapsed;
Loaded -= UserControl_Loaded;
}
private void MonitorTimer_Elapsed(object sender, ElapsedEventArgs e)
{
try
{
this.MonitorTimer.Enabled = false;
this.RefershAlarm();
}
catch (Exception ex)
{
log.Error("sdadsa", ex);
}
finally
{
this.MonitorTimer.Enabled = true;
}
}
///
/// 刷新报警信息
///
private void RefershAlarm()
{
}
public override void SetBaseFolder(string folder)
{
base.SetBaseFolder(folder);
}
}
}