|
|
|
@ -9,12 +9,17 @@ using SlnMesnac.Repository.service;
|
|
|
|
|
using SlnMesnac.WPF.Page;
|
|
|
|
|
using SlnMesnac.WPF.Page.Generate;
|
|
|
|
|
using System;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.Runtime.CompilerServices;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Timers;
|
|
|
|
|
using System.Windows;
|
|
|
|
|
using System.Windows.Controls;
|
|
|
|
|
using System.Windows.Threading;
|
|
|
|
|
|
|
|
|
|
namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
{
|
|
|
|
|
public class MainWindowViewModel: ViewModelBase
|
|
|
|
|
public class MainWindowViewModel: ViewModelBase, INotifyPropertyChanged
|
|
|
|
|
{
|
|
|
|
|
private readonly ILogger<MainWindowViewModel> _logger;
|
|
|
|
|
|
|
|
|
@ -23,7 +28,7 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
private readonly EmployeeLoginPage _employeeLoginPage = new EmployeeLoginPage();
|
|
|
|
|
private readonly ExecutePage _executePage = new ExecutePage();
|
|
|
|
|
private IBaseStaffService _baseStaffService;
|
|
|
|
|
|
|
|
|
|
private System.Timers.Timer timer;
|
|
|
|
|
public delegate void UIDCodeDelegate(string code);
|
|
|
|
|
public event UIDCodeDelegate UIDCodeDelegateEvent;
|
|
|
|
|
|
|
|
|
@ -41,21 +46,21 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 打卡机状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
private int _ShellScannerStatus = 0;
|
|
|
|
|
public int ShellScannerStatus
|
|
|
|
|
private int _clockStatus = 0;
|
|
|
|
|
public int ClockStatus
|
|
|
|
|
{
|
|
|
|
|
get { return _ShellScannerStatus; }
|
|
|
|
|
set { _ShellScannerStatus = value; RaisePropertyChanged(nameof(ShellScannerStatus)); }
|
|
|
|
|
get { return _clockStatus; }
|
|
|
|
|
set { _clockStatus = value; RaisePropertyChanged(nameof(ClockStatus)); }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 扫码枪状态
|
|
|
|
|
/// </summary>
|
|
|
|
|
private int _BoldScannerStatus = 0;
|
|
|
|
|
public int BoldScannerStatus
|
|
|
|
|
private int _codeGunStatus = 0;
|
|
|
|
|
public int CodeGunStatus
|
|
|
|
|
{
|
|
|
|
|
get { return _BoldScannerStatus; }
|
|
|
|
|
set { _BoldScannerStatus = value; RaisePropertyChanged(nameof(BoldScannerStatus)); }
|
|
|
|
|
get { return _codeGunStatus; }
|
|
|
|
|
set { _codeGunStatus = value; RaisePropertyChanged(nameof(CodeGunStatus)); }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public System.Windows.Controls.UserControl _content;
|
|
|
|
@ -81,7 +86,7 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 打开系统键盘
|
|
|
|
|
/// </summary>
|
|
|
|
|
public RelayCommand OpenSystemKeyboardCommand { get; set; }
|
|
|
|
|
public RelayCommand<object> OpenSystemKeyboardCommand { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 窗体控制
|
|
|
|
@ -94,17 +99,32 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
//UserContent = _employeeLoginPage;
|
|
|
|
|
UserContent = _executePage;
|
|
|
|
|
_logger = App.ServiceProvider.GetService<ILogger<MainWindowViewModel>>();
|
|
|
|
|
|
|
|
|
|
var info = App.ServiceProvider.GetService<StringChange>();
|
|
|
|
|
|
|
|
|
|
ControlOnClickCommand = new RelayCommand<object>(obj => ControlOnClick(obj));
|
|
|
|
|
OpenSystemKeyboardCommand = new RelayCommand<object>(obj => OpenSystemKeyboard(obj));
|
|
|
|
|
FormControlCommand = new RelayCommand<object>(x => FormControl(x));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//RfidHandleBusniess rfidHandleBusniess = new RfidHandleBusniess(hidUtils,_baseStaffService);
|
|
|
|
|
timer = new System.Timers.Timer(1000); // 1 second interval
|
|
|
|
|
timer.Elapsed += Timer_Tick;
|
|
|
|
|
timer.Enabled = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 按钮文字转换事件
|
|
|
|
|
/// </summary>
|
|
|
|
|
public event PropertyChangedEventHandler PropertyChanged;
|
|
|
|
|
|
|
|
|
|
#region 参数
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 当前时间
|
|
|
|
|
/// </summary>
|
|
|
|
|
private string _currentTimeText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|
|
|
|
public string CurrentTimeText
|
|
|
|
|
{
|
|
|
|
|
get { return _currentTimeText; }
|
|
|
|
|
set { _currentTimeText = value; OnPropertyChanged("CurrentTimeText"); }
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 窗体控制
|
|
|
|
|
/// </summary>
|
|
|
|
@ -152,6 +172,15 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 打开系统键盘
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="obj"></param>
|
|
|
|
|
private void OpenSystemKeyboard(object obj)
|
|
|
|
|
{
|
|
|
|
|
System.Diagnostics.Process.Start("osk.exe");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 界面跳转
|
|
|
|
|
/// </summary>
|
|
|
|
@ -179,5 +208,15 @@ namespace SlnMesnac.WPF.ViewModel
|
|
|
|
|
_logger.LogError("界面跳转逻辑异常", ex);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Timer_Tick(object sender, ElapsedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
CurrentTimeText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void OnPropertyChanged([CallerMemberName] string propertyName = "")
|
|
|
|
|
{
|
|
|
|
|
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|