using DM_Weight.msg;
using DM_Weight.Port;
using DM_Weight.ViewModels;
using log4net;
using log4net.Repository.Hierarchy;
using Microsoft.Extensions.Logging;
using Prism.Events;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Timers;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace DM_Weight.Views
{
///
/// Interaction logic for MainWindow.xaml
///
public partial class HomeWindow : UserControl
{
private readonly ILog logger = LogManager.GetLogger(typeof(HomeWindow));
int autoExit = Convert.ToInt32(ConfigurationManager.AppSettings["autoExit"] ?? "0");
//public static System.Timers.Timer idleTimer;//= new System.Timers.Timer(60000);
IEventAggregator _eventAggregator;
SocketHelper _socketHelper;
public HomeWindow(IEventAggregator eventAggregator, SocketHelper socketHelper)
{
InitializeComponent();
//if (autoExit > 0)
//{
// idleTimer = new System.Timers.Timer(autoExit * 1000);
// idleTimer.Elapsed += OnTimerElapsed;
// idleTimer.AutoReset = true;
// idleTimer.Enabled= true;
// this.MouseDown += OnUserActivity;
// this.MouseMove += OnUserActivity;
// this.KeyDown += OnUserActivity;
// idleTimer.Start();
// _eventAggregator = eventAggregator;
//}
_socketHelper = socketHelper;
}
//private void OnUserActivity(object sender, EventArgs e)
//{
// idleTimer.Stop();
// idleTimer.Interval =autoExit * 1000;
// idleTimer.Start();
//}
//private void OnTimerElapsed(object sender, ElapsedEventArgs e)
//{
// idleTimer.Stop();
// // 串口无人操作
// //bool[] boolArrs = ModbusHelper.GetInstance().GetAllBoxState();
// //bool allTrue = Array.TrueForAll(boolArrs, b => b == false);
// logger.Info($"进入自动退出定时方法{ModbusHelper.BoxOperate}");
// //if (ModbusHelper.BoxOperate)
// if (!_socketHelper.OpenStatus)
// {
// if (idleTimer.Enabled)
// {
// idleTimer.Stop();
// //无人操作,自动退出
// _eventAggregator.GetEvent().Publish();
// }
// }
// idleTimer.Start();
// //else
// //{
// // idleTimer.Interval = autoExit * 1000;
// // idleTimer.AutoReset = true;
// //}
//}
}
}