wenxiangchao
3 天以前 b544d5cccd76735e034c8055918a50927b437474
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
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
{
    /// <summary>
    /// UserControl1.xaml 的交互逻辑
    /// </summary>
    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;
            }
        }
 
        /// <summary>
        /// 刷新报警信息
        /// </summary>
        private void RefershAlarm()
        {
            
        }
 
        public override void SetBaseFolder(string folder)
        {
            base.SetBaseFolder(folder);
        }
    }
}